Class GNSSOrbitalElements<O extends GNSSOrbitalElements<O>>
java.lang.Object
org.orekit.propagation.analytical.gnss.data.GNSSOrbitalElements<O>
- Type Parameters:
O- type of the orbital elements
- All Implemented Interfaces:
OrbitalParameters,GNSSClockElements,TimeStamped
- Direct Known Subclasses:
AbstractNavigationMessage,BeidouAlmanac,GalileoAlmanac,GPSAlmanac,NavICAlmanac,QZSSAlmanac
public abstract class GNSSOrbitalElements<O extends GNSSOrbitalElements<O>>
extends Object
implements OrbitalParameters, GNSSClockElements
This class provides the minimal set of orbital elements needed by
GNSSPropagator.- Since:
- 13.0
- Author:
- Pascal Parraud, Luc Maisonobe
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedGNSSOrbitalElements(double angularVelocity, int weeksInCycle, TimeScales timeScales, String type, int prn, GNSSDate toe, KeplerianOrbit orbit, double aDot, double deltaN0, double deltaN0Dot, double iDot, double omegaDot, double cuc, double cus, double crc, double crs, double cic, double cis, double af0, double af1, double af2, double tgd, GNSSDate toc) Creates a new instance.protectedGNSSOrbitalElements(FieldGnssOrbitalElements<T, A> original) Constructor from field instance. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract GNSSOrbitalElementsFactory<O> baseFactory(Frame inertial, Frame bodyFixed) Factory for the orbital elements.Factory for the orbital elements.doublegetADot()Get change rate in semi-major axis.doublegetAf0()Gets the Zeroth Order Clock Correction.doublegetAf1()Gets the First Order Clock Correction.doublegetAf2()Gets the Second Order Clock Correction.doubleGet the mean angular velocity of the Earth of the GNSS model.doublegetCic()Get amplitude of the cosine harmonic correction term to the angle of inclination.doublegetCis()Get amplitude of the sine harmonic correction term to the angle of inclination.doublegetCrc()Get amplitude of the cosine harmonic correction term to the orbit radius.doublegetCrs()Get amplitude of the sine harmonic correction term to the orbit radius.doublegetCuc()Get amplitude of the cosine harmonic correction term to the argument of latitude.doublegetCus()Get amplitude of the sine harmonic correction term to the argument of latitude.doubleGet for the duration of the GNSS cycle in seconds.getDate()Get the date.doubleGet the delta of satellite mean motion.doubleGet the change rate in Δn₀.doublegetIDot()Get rate of inclination angle.doubleGet rate of right ascension.getOrbit()Get the underlying Keplerian orbit.intgetPrn()Get the PRN number of the satellite.doublegetTgd()Get the estimated group delay differential TGD for L1-L2 correction.Get the time of clock.Get the time of ephemeris.Get known time scales.getType()Get the message type.intGet for the duration of the GNSS cycle in weeks.booleanCheck if elements correspond to a civilian message.<T extends CalculusFieldElement<T>>
FieldGnssOrbitalElements<T, O> Create a field version of the instance.abstract <T extends CalculusFieldElement<T>>
FieldGnssOrbitalElements<T, O> toField(FieldKeplerianOrbit<T> keplerian, T[] nonKeplerian, DoubleFunction<T> converter) Create another field version of the instance.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.time.TimeStamped
durationFrom
-
Constructor Details
-
GNSSOrbitalElements
protected GNSSOrbitalElements(double angularVelocity, int weeksInCycle, TimeScales timeScales, String type, int prn, GNSSDate toe, KeplerianOrbit orbit, double aDot, double deltaN0, double deltaN0Dot, double iDot, double omegaDot, double cuc, double cus, double crc, double crs, double cic, double cis, double af0, double af1, double af2, double tgd, GNSSDate toc) Creates a new instance.- Parameters:
angularVelocity- mean angular velocity of the Earth for the GNSS modelweeksInCycle- number of weeks in the GNSS cycletimeScales- known time scalestype- type (null if not a navigation message)prn- PRN number of the satellitetoe- time of ephemeris (must be consistent withorbit)orbit- Keplerian orbit in Earth-frozen frameaDot- change rate in semi-major axis (m/s)deltaN0- delta of satellite mean motiondeltaN0Dot- change rate in Δn₀iDot- inclination rate (rad/s)omegaDot- rate of right ascension (rad/s)cuc- amplitude of the cosine harmonic correction term to the argument of latitudecus- amplitude of the sine harmonic correction term to the argument of latitudecrc- amplitude of the cosine harmonic correction term to the orbit radiuscrs- amplitude of the sine harmonic correction term to the orbit radiuscic- amplitude of the cosine harmonic correction term to the inclinationcis- amplitude of the sine harmonic correction term to the inclinationaf0- zero-th order clock correction (s)af1- first order clock correction (s/s)af2- second order clock correction (s/s²)tgd- group delay differential TGD for L1-L2 correctiontoc- time of clock- Since:
- 14.0
-
GNSSOrbitalElements
Constructor from field instance.- Type Parameters:
T- type of the field elementsA- type of the orbital elements (non-field version)- Parameters:
original- regular field instance
-
-
Method Details
-
getDate
Get the date.- Specified by:
getDatein interfaceTimeStamped- Returns:
- date attached to the object
-
getTimeOfEphemeris
Get the time of ephemeris.- Returns:
- time of ephemeris
- Since:
- 14.0
-
getTimeOfClock
Get the time of clock.- Specified by:
getTimeOfClockin interfaceGNSSClockElements- Returns:
- the time of clock
-
toField
Create a field version of the instance.- Type Parameters:
T- type of the field elements- Parameters:
field- field- Returns:
- field version of the instance
- Since:
- 14.0
-
toField
public abstract <T extends CalculusFieldElement<T>> FieldGnssOrbitalElements<T,O> toField(FieldKeplerianOrbit<T> keplerian, T[] nonKeplerian, DoubleFunction<T> converter) Create another field version of the instance.- Type Parameters:
T- type of the field elements- Parameters:
keplerian- orbit in the correct gradient fieldnonKeplerian- non-Keplerian parametersconverter- converter for remaining elements- Returns:
- gradient version of the instance
- Since:
- 14.0
-
getTimeScales
Get known time scales.- Returns:
- known time scales
-
getType
Get the message type.- Returns:
- message type (null if not a navigation message)
-
getAngularVelocity
public double getAngularVelocity()Get the mean angular velocity of the Earth of the GNSS model.- Returns:
- mean angular velocity of the Earth of the GNSS model
-
getWeeksInCycle
public int getWeeksInCycle()Get for the duration of the GNSS cycle in weeks.- Returns:
- the duration of the GNSS cycle in weeks
-
getCycleDuration
public double getCycleDuration()Get for the duration of the GNSS cycle in seconds.- Returns:
- the duration of the GNSS cycle in seconds
-
getPrn
public int getPrn()Get the PRN number of the satellite.- Returns:
- PRN number of the satellite
-
getOrbit
Get the underlying Keplerian orbit.- Returns:
- underlying Keplerian orbit
- Since:
- 14.0
-
getADot
public double getADot()Get change rate in semi-major axis.- Returns:
- the change rate in semi-major axis
- Since:
- 14.0
-
getDeltaN0
public double getDeltaN0()Get the delta of satellite mean motion.- Returns:
- the delta of satellite mean motion
- Since:
- 14.0
-
getDeltaN0Dot
public double getDeltaN0Dot()Get the change rate in Δn₀.- Returns:
- change rate in Δn₀
- Since:
- 14.0
-
getIDot
public double getIDot()Get rate of inclination angle.- Returns:
- rate of inclination angle (rad/s)
-
getOmegaDot
public double getOmegaDot()Get rate of right ascension.- Returns:
- rate of right ascension (rad/s)
-
getCuc
public double getCuc()Get amplitude of the cosine harmonic correction term to the argument of latitude.- Returns:
- amplitude of the cosine harmonic correction term to the argument of latitude (rad)
-
getCus
public double getCus()Get amplitude of the sine harmonic correction term to the argument of latitude.- Returns:
- amplitude of the sine harmonic correction term to the argument of latitude (rad)
-
getCrc
public double getCrc()Get amplitude of the cosine harmonic correction term to the orbit radius.- Returns:
- amplitude of the cosine harmonic correction term to the orbit radius (m)
-
getCrs
public double getCrs()Get amplitude of the sine harmonic correction term to the orbit radius.- Returns:
- amplitude of the sine harmonic correction term to the orbit radius (m)
-
getCic
public double getCic()Get amplitude of the cosine harmonic correction term to the angle of inclination.- Returns:
- amplitude of the cosine harmonic correction term to the angle of inclination (rad)
-
getCis
public double getCis()Get amplitude of the sine harmonic correction term to the angle of inclination.- Returns:
- amplitude of the sine harmonic correction term to the angle of inclination (rad)
-
getAf0
public double getAf0()Gets the Zeroth Order Clock Correction.- Specified by:
getAf0in interfaceGNSSClockElements- Returns:
- the Zeroth Order Clock Correction (s)
- See Also:
-
getAf1
public double getAf1()Gets the First Order Clock Correction.- Specified by:
getAf1in interfaceGNSSClockElements- Returns:
- the First Order Clock Correction (s/s)
- See Also:
-
getAf2
public double getAf2()Gets the Second Order Clock Correction.- Specified by:
getAf2in interfaceGNSSClockElements- Returns:
- the Second Order Clock Correction (s/s²)
- See Also:
-
getTgd
public double getTgd()Get the estimated group delay differential TGD for L1-L2 correction.- Specified by:
getTgdin interfaceGNSSClockElements- Returns:
- the estimated group delay differential TGD for L1-L2 correction (s)
-
isCivilianMessage
public boolean isCivilianMessage()Check if elements correspond to a civilian message.- Returns:
- true if elements correspond to a civilian message
-
factory
Factory for the orbital elements.- Parameters:
inertial- reference inertial framebodyFixed- body fixed frame (will be frozen atdateto build the orbital elements- Returns:
- factory for the orbital elements
- Since:
- 14.0
-
baseFactory
Factory for the orbital elements.- Parameters:
inertial- reference inertial framebodyFixed- body fixed frame (will be frozen atdateto build the orbital elements- Returns:
- factory for the orbital elements
- Since:
- 14.0
-