Class FieldGnssOrbitalElements<T extends CalculusFieldElement<T>,O extends GNSSOrbitalElements<O>>
java.lang.Object
org.orekit.propagation.analytical.gnss.data.FieldGnssOrbitalElements<T,O>
- Type Parameters:
T- type of the field elementsO- type of the orbital elements (non-field version)
- All Implemented Interfaces:
FieldOrbitalParameters<T>,FieldGNSSClockElements<T>,FieldTimeStamped<T>
- Direct Known Subclasses:
FieldAbstractNavigationMessage,FieldBeidouAlmanac,FieldGalileoAlmanac,FieldGPSAlmanac,FieldNavICAlmanac,FieldQZSSAlmanac
public abstract class FieldGnssOrbitalElements<T extends CalculusFieldElement<T>,O extends GNSSOrbitalElements<O>>
extends Object
implements FieldOrbitalParameters<T>, FieldGNSSClockElements<T>
This class provides the minimal set of orbital elements needed by the
FieldGnssPropagator.- Since:
- 13.0
- Author:
- Luc Maisonobe
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedFieldGnssOrbitalElements(double angularVelocity, int weeksInCycle, TimeScales timeScales, String type, int prn, FieldGNSSDate<T> toe, FieldKeplerianOrbit<T> orbit, T[] nonKeplerian, T tgd, FieldGNSSDate<T> toc) Creates a new instance.protectedFieldGnssOrbitalElements(double angularVelocity, int weeksInCycle, TimeScales timeScales, String type, int prn, FieldGNSSDate<T> toe, FieldKeplerianOrbit<T> orbit, T aDot, T deltaN0, T deltaN0Dot, T iDot, T omegaDot, T cuc, T cus, T crc, T crs, T cic, T cis, T af0, T af1, T af2, T tgd, FieldGNSSDate<T> toc) Creates a new instance. -
Method Summary
Modifier and TypeMethodDescriptiongetADot()Get change rate in semi-major axis.getAf0()Gets the Zeroth Order Clock Correction.getAf1()Gets the First Order Clock Correction.getAf2()Gets the Second Order Clock Correction.doubleGet the mean angular velocity of the Earth of the GNSS model.getCic()Get amplitude of the cosine harmonic correction term to the angle of inclination.getCis()Get amplitude of the sine harmonic correction term to the angle of inclination.getCrc()Get amplitude of the cosine harmonic correction term to the orbit radius.getCrs()Get amplitude of the sine harmonic correction term to the orbit radius.getCuc()Get amplitude of the cosine harmonic correction term to the argument of latitude.getCus()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.Get the delta of satellite mean motion.Get the change rate in Δn₀.getIDot()Get rate of inclination angle.Get rate of right ascension.getOrbit()Get the underlying Keplerian orbit.intgetPrn()Get the PRN number of the satellite.getTgd()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[]toArray()Create an array with the 15 non-Keplerian parameters.abstract <U extends CalculusFieldElement<U>>
FieldGnssOrbitalElements<U, O> toField(FieldKeplerianOrbit<U> keplerian, U[] nonKeplerian, Function<T, U> converter) Create another field version of the instance.abstract OCreate a non-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.FieldTimeStamped
durationFrom, durationFrom
-
Constructor Details
-
FieldGnssOrbitalElements
protected FieldGnssOrbitalElements(double angularVelocity, int weeksInCycle, TimeScales timeScales, String type, int prn, FieldGNSSDate<T> toe, FieldKeplerianOrbit<T> orbit, T aDot, T deltaN0, T deltaN0Dot, T iDot, T omegaDot, T cuc, T cus, T crc, T crs, T cic, T cis, T af0, T af1, T af2, T tgd, FieldGNSSDate<T> 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
-
FieldGnssOrbitalElements
protected FieldGnssOrbitalElements(double angularVelocity, int weeksInCycle, TimeScales timeScales, String type, int prn, FieldGNSSDate<T> toe, FieldKeplerianOrbit<T> orbit, T[] nonKeplerian, T tgd, FieldGNSSDate<T> 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 framenonKeplerian- 15 non-Keplerian parameters (in the order given byNonKeplerianDriversFactorytgd- group delay differential TGD for L1-L2 correctiontoc- time of clock- Since:
- 14.0
-
-
Method Details
-
getDate
Get the date.- Specified by:
getDatein interfaceFieldTimeStamped<T extends CalculusFieldElement<T>>- 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 interfaceFieldGNSSClockElements<T extends CalculusFieldElement<T>>- Returns:
- the time of clock
-
toNonField
Create a non-field version of the instance.- Returns:
- non-field version of the instance
-
toArray
Create an array with the 15 non-Keplerian parameters.The array is ordered according to
NonKeplerianDriversFactoryorder.- Returns:
- array with the 15 non-Keplerian parameters
-
toField
public abstract <U extends CalculusFieldElement<U>> FieldGnssOrbitalElements<U,O> toField(FieldKeplerianOrbit<U> keplerian, U[] nonKeplerian, Function<T, U> converter) Create another field version of the instance.- Type Parameters:
U- type of the new field elements- Parameters:
keplerian- orbit in the correct gradient fieldnonKeplerian- non-Keplerian parametersconverter- converter for remaining elements- Returns:
- field version of the instance
-
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
Get change rate in semi-major axis.- Returns:
- the change rate in semi-major axis
- Since:
- 14.0
-
getDeltaN0
Get the delta of satellite mean motion.- Returns:
- the delta of satellite mean motion
- Since:
- 14.0
-
getDeltaN0Dot
Get the change rate in Δn₀.- Returns:
- change rate in Δn₀
- Since:
- 14.0
-
getIDot
Get rate of inclination angle.- Returns:
- rate of inclination angle (rad/s)
-
getOmegaDot
Get rate of right ascension.- Returns:
- rate of right ascension (rad/s)
-
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
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
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
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
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
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
Gets the Zeroth Order Clock Correction.- Specified by:
getAf0in interfaceFieldGNSSClockElements<T extends CalculusFieldElement<T>>- Returns:
- the Zeroth Order Clock Correction (s)
- See Also:
-
getAf1
Gets the First Order Clock Correction.- Specified by:
getAf1in interfaceFieldGNSSClockElements<T extends CalculusFieldElement<T>>- Returns:
- the First Order Clock Correction (s/s)
- See Also:
-
getAf2
Gets the Second Order Clock Correction.- Specified by:
getAf2in interfaceFieldGNSSClockElements<T extends CalculusFieldElement<T>>- Returns:
- the Second Order Clock Correction (s/s²)
- See Also:
-
getTgd
Get the estimated group delay differential TGD for L1-L2 correction.- Specified by:
getTgdin interfaceFieldGNSSClockElements<T extends CalculusFieldElement<T>>- 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
-