Class FieldGnssOrbitalElements<T extends CalculusFieldElement<T>,O extends GNSSOrbitalElements<O>>

java.lang.Object
org.orekit.propagation.analytical.gnss.data.GNSSOrbitalElementsDriversProvider
org.orekit.propagation.analytical.gnss.data.FieldGnssOrbitalElements<T,O>
Type Parameters:
T - type of the field elements
O - type of the orbital elements (non-field version)
All Implemented Interfaces:
FieldTimeStamped<T>, ParameterDriversProvider
Direct Known Subclasses:
FieldCommonGnssData

public abstract class FieldGnssOrbitalElements<T extends CalculusFieldElement<T>,O extends GNSSOrbitalElements<O>> extends GNSSOrbitalElementsDriversProvider implements FieldTimeStamped<T>
This class provides the minimal set of orbital elements needed by the FieldGnssPropagator.
Since:
13.0
Author:
Luc Maisonobe
  • Constructor Details

    • FieldGnssOrbitalElements

      protected FieldGnssOrbitalElements(T mu, double angularVelocity, int weeksInCycle, TimeScales timeScales, SatelliteSystem system)
      Simple constructor.
      Parameters:
      mu - Earth's universal gravitational parameter
      angularVelocity - mean angular velocity of the Earth for the GNSS model
      weeksInCycle - number of weeks in the GNSS cycle
      timeScales - known time scales
      system - satellite system to consider for interpreting week number (may be different from real system, for example in Rinex nav, weeks are always according to GPS)
    • FieldGnssOrbitalElements

      protected FieldGnssOrbitalElements(Field<T> field, O original)
      Constructor from non-field instance.
      Parameters:
      field - field to which elements belong
      original - regular non-field instance
    • FieldGnssOrbitalElements

      protected FieldGnssOrbitalElements(Function<V,T> converter, FieldGnssOrbitalElements<V,O> original)
      Constructor from different field instance.
      Type Parameters:
      V - type of the old field elements
      Parameters:
      converter - for field elements
      original - regular non-field instance
  • Method Details

    • toNonField

      public abstract O toNonField()
      Create a non-field version of the instance.
      Returns:
      non-field version of the instance
    • changeField

      public abstract <U extends CalculusFieldElement<U>, G extends FieldGnssOrbitalElements<U, O>> G changeField(Function<T,U> converter)
      Create another field version of the instance.
      Type Parameters:
      U - type of the new field elements
      G - type of the orbital elements (field version)
      Parameters:
      converter - for field elements
      Returns:
      field version of the instance
    • setGnssDate

      protected void setGnssDate(GNSSDate gnssDate)
      Set GNSS date.
      Specified by:
      setGnssDate in class GNSSOrbitalElementsDriversProvider
      Parameters:
      gnssDate - GNSS date
    • getDate

      public FieldAbsoluteDate<T> getDate()
      Get date.
      Specified by:
      getDate in interface FieldTimeStamped<T extends CalculusFieldElement<T>>
      Returns:
      date
    • getMu

      public T getMu()
      Get the Earth's universal gravitational parameter.
      Returns:
      the Earth's universal gravitational parameter
    • getSma

      public T getSma()
      Get semi-major axis.
      Returns:
      semi-major axis (m)
    • setSma

      public void setSma(T sma)
      Set semi-major axis.
      Parameters:
      sma - demi-major axis (m)
    • getMeanMotion0

      public T getMeanMotion0()
      Get the computed mean motion n₀.
      Returns:
      the computed mean motion n₀ (rad/s)
      Since:
      13.0
    • getE

      public T getE()
      Get eccentricity.
      Returns:
      eccentricity
    • setE

      public void setE(T e)
      Set eccentricity.
      Parameters:
      e - eccentricity
    • getI0

      public T getI0()
      Get the inclination angle at reference time.
      Returns:
      inclination angle at reference time (rad)
    • setI0

      public void setI0(T i0)
      Set inclination angle at reference time.
      Parameters:
      i0 - inclination angle at reference time (rad)
    • getOmega0

      public T getOmega0()
      Get longitude of ascending node of orbit plane at weekly epoch.
      Returns:
      longitude of ascending node of orbit plane at weekly epoch (rad)
    • setOmega0

      public void setOmega0(T omega0)
      Set longitude of ascending node of orbit plane at weekly epoch.
      Parameters:
      omega0 - longitude of ascending node of orbit plane at weekly epoch (rad)
    • getPa

      public T getPa()
      Get argument of perigee.
      Returns:
      argument of perigee (rad)
    • setPa

      public void setPa(T pa)
      Set argument of perigee.
      Parameters:
      pa - argument of perigee (rad)
    • getM0

      public T getM0()
      Get mean anomaly at reference time.
      Returns:
      mean anomaly at reference time (rad)
    • setM0

      public void setM0(T m0)
      Set mean anomaly at reference time.
      Parameters:
      m0 - mean anomaly at reference time (rad)