EarthOrientationParameterMessage.java
- /* Copyright 2022-2025 Luc Maisonobe
- * Licensed to CS GROUP (CS) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * CS licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- package org.orekit.files.rinex.navigation;
- import org.orekit.gnss.SatelliteSystem;
- import org.orekit.time.AbsoluteDate;
- /** Container for data contained in a Earth Orientation Parameter navigation message.
- * @author Luc Maisonobe
- * @since 12.0
- */
- public class EarthOrientationParameterMessage extends TypeSvMessage {
- /** Reference epoch. */
- private AbsoluteDate referenceEpoch;
- /** X component of the pole (rad). */
- private double xp;
- /** X component of the pole first derivative (rad/s). */
- private double xpDot;
- /** X component of the pole second derivative (rad/s²). */
- private double xpDotDot;
- /** Y component of the pole (rad). */
- private double yp;
- /** Y component of the pole first derivative (rad/s). */
- private double ypDot;
- /** Y component of the pole second derivative (rad/s²). */
- private double ypDotDot;
- /** ΔUT₁ (s).
- * According to Rinex 4.00 table A31, this may be either UT₁-UTC or UT₁-GPST
- * depending on constellation and applicable Interface Control Document).
- */
- private double dUt1;
- /** ΔUT₁ first derivative (s/s). */
- private double dUt1Dot;
- /** ΔUT₁ second derivative (s/s²). */
- private double dUt1DotDot;
- /** Transmission time. */
- private double transmissionTime;
- /** Simple constructor.
- * @param system satellite system
- * @param prn satellite number
- * @param navigationMessageType navigation message type
- */
- public EarthOrientationParameterMessage(final SatelliteSystem system, final int prn, final String navigationMessageType) {
- super(system, prn, navigationMessageType);
- }
- /** Get the reference epoch.
- * @return the reference epoch
- */
- public AbsoluteDate getReferenceEpoch() {
- return referenceEpoch;
- }
- /** Set the reference epoch.
- * @param referenceEpoch the reference epoch to set
- */
- public void setReferenceEpoch(final AbsoluteDate referenceEpoch) {
- this.referenceEpoch = referenceEpoch;
- }
- /** Get the X component of the pole.
- * @return the X component of the pole (rad)
- */
- public double getXp() {
- return xp;
- }
- /** Set the X component of the pole.
- * @param xp X component of the pole (rad)
- */
- public void setXp(final double xp) {
- this.xp = xp;
- }
- /** Get the X component of the pole first derivative.
- * @return the X component of the pole first derivative (rad/s)
- */
- public double getXpDot() {
- return xpDot;
- }
- /** Set the X component of the pole first derivative.
- * @param xpDot X component of the pole first derivative (rad/s)
- */
- public void setXpDot(final double xpDot) {
- this.xpDot = xpDot;
- }
- /** Get the X component of the pole second derivative.
- * @return the X component of the pole second derivative (rad/s²)
- */
- public double getXpDotDot() {
- return xpDotDot;
- }
- /** Set the X component of the pole second derivative.
- * @param xpDotDot X component of the pole second derivative (rad/s²)
- */
- public void setXpDotDot(final double xpDotDot) {
- this.xpDotDot = xpDotDot;
- }
- /** Get the Y component of the pole.
- * @return the Y component of the pole (rad)
- */
- public double getYp() {
- return yp;
- }
- /** Set the Y component of the pole.
- * @param yp Y component of the pole (rad)
- */
- public void setYp(final double yp) {
- this.yp = yp;
- }
- /** Get the Y component of the pole first derivative.
- * @return the Y component of the pole first derivative (rad/s)
- */
- public double getYpDot() {
- return ypDot;
- }
- /** Set the Y component of the pole first derivative.
- * @param ypDot Y component of the pole first derivative (rad/s)
- */
- public void setYpDot(final double ypDot) {
- this.ypDot = ypDot;
- }
- /** Get the Y component of the pole second derivative.
- * @return the Y component of the pole second derivative (rad/s²)
- */
- public double getYpDotDot() {
- return ypDotDot;
- }
- /** Set the Y component of the pole second derivative.
- * @param ypDotDot Y component of the pole second derivative (rad/s²)
- */
- public void setYpDotDot(final double ypDotDot) {
- this.ypDotDot = ypDotDot;
- }
- /** Get the ΔUT₁.
- * @return the ΔUT₁ (s)
- */
- public double getDut1() {
- return dUt1;
- }
- /** Set the ΔUT₁.
- * @param dUT1 ΔUT₁ (s)
- */
- public void setDut1(final double dUT1) {
- this.dUt1 = dUT1;
- }
- /** Get the ΔUT₁ first derivative.
- * @return the ΔUT₁ first derivative (s/s)
- */
- public double getDut1Dot() {
- return dUt1Dot;
- }
- /** Set the ΔUT₁ first derivative.
- * @param dUT1Dot ΔUT₁ first derivative (s/s)
- */
- public void setDut1Dot(final double dUT1Dot) {
- this.dUt1Dot = dUT1Dot;
- }
- /** Get the ΔUT₁ second derivative.
- * @return the ΔUT₁ second derivative (s/s²)
- */
- public double getDut1DotDot() {
- return dUt1DotDot;
- }
- /** Set the ΔUT₁ second derivative.
- * @param dUT1DotDot ΔUT₁ second derivative (s/s²)
- */
- public void setDut1DotDot(final double dUT1DotDot) {
- this.dUt1DotDot = dUT1DotDot;
- }
- /** Get the message transmission time.
- * @return message transmission time
- */
- public double getTransmissionTime() {
- return transmissionTime;
- }
- /** Set the message transmission time.
- * @param transmissionTime the message transmission time
- */
- public void setTransmissionTime(final double transmissionTime) {
- this.transmissionTime = transmissionTime;
- }
- }