Class NonKeplerianDriversFactory

java.lang.Object
org.orekit.propagation.analytical.gnss.data.NonKeplerianDriversFactory

public class NonKeplerianDriversFactory extends Object
Factory for non-Keplerian drivers.
Since:
14.0
  • Field Details

  • Constructor Details

    • NonKeplerianDriversFactory

      public NonKeplerianDriversFactory()
      Simple constructor.
  • Method Details

    • reset

      public void reset(GNSSOrbitalElements<?> elements)
      Reset the parameters drivers from existing elements.
      Parameters:
      elements - elements to use for reset
    • reset

      public void reset(FieldGnssOrbitalElements<?,?> elements)
      Reset the parameters drivers from existing elements.
      Parameters:
      elements - elements to use for reset
    • getParametersDrivers

      public List<ParameterDriver> getParametersDrivers()
      Get the 15 drivers for the non-Keplerian parameters.

      Only the 15 non-Keplerian parameters (12 evolution parameters and 3 clock parameters) are listed here: Time driver at index TIME_INDEX, ADot driver at index A_DOT_INDEX, DeltaN0 driver at index DELTA_N0_INDEX, DeltaN0Dot driver at index DELTA_N0_DOT_INDEX, IDot driver at index I_DOT_INDEX, OmegaDot driver at index OMEGA_DOT_INDEX, Cuc driver at index CUC_INDEX, Cus driver at index CUS_INDEX, Crc driver at index CRC_INDEX, Crs driver at index CRS_INDEX, Cic driver at index CIC_INDEX, Cis driver at index CIS_INDEX, af0 driver at index AF0_INDEX, af1 driver at index AF1_INDEX, and af2 driver at index AF2_INDEX.

      Returns:
      15 drivers for the non-Keplerian parameters
    • getTimeDriver

      public ParameterDriver getTimeDriver()
      Get driver for reference time of the GNSS orbit as a duration from week start.
      Returns:
      driver for reference time of the GNSS orbit (s)
    • getADotDriver

      public ParameterDriver getADotDriver()
      Get driver for change rate in semi-major axis.
      Returns:
      driver for the change rate in semi-major axis
    • getDeltaN0Driver

      public ParameterDriver getDeltaN0Driver()
      Get driver for the delta of satellite mean motion.
      Returns:
      driver for the delta of satellite mean motion
    • getDeltaN0DotDriver

      public ParameterDriver getDeltaN0DotDriver()
      Get driver for the change rate in Δn₀.
      Returns:
      driver for change rate in Δn₀
    • getIDotDriver

      public ParameterDriver getIDotDriver()
      Get driver for rate of inclination angle.
      Returns:
      driver for rate of inclination angle (rad/s)
    • getOmegaDotDriver

      public ParameterDriver getOmegaDotDriver()
      Get driver for rate of right ascension.
      Returns:
      driver for rate of right ascension (rad/s)
    • getCucDriver

      public ParameterDriver getCucDriver()
      Get driver for amplitude of the cosine harmonic correction term to the argument of latitude.
      Returns:
      driver for amplitude of the cosine harmonic correction term to the argument of latitude (rad)
    • getCusDriver

      public ParameterDriver getCusDriver()
      Get driver for amplitude of the sine harmonic correction term to the argument of latitude.
      Returns:
      driver for amplitude of the sine harmonic correction term to the argument of latitude (rad)
    • getCrcDriver

      public ParameterDriver getCrcDriver()
      Get driver for amplitude of the cosine harmonic correction term to the orbit radius.
      Returns:
      driver for amplitude of the cosine harmonic correction term to the orbit radius (m)
    • getCrsDriver

      public ParameterDriver getCrsDriver()
      Get driver for amplitude of the sine harmonic correction term to the orbit radius.
      Returns:
      driver for amplitude of the sine harmonic correction term to the orbit radius (m)
    • getCicDriver

      public ParameterDriver getCicDriver()
      Get driver for amplitude of the cosine harmonic correction term to the angle of inclination.
      Returns:
      driver for amplitude of the cosine harmonic correction term to the angle of inclination (rad)
    • getCisDriver

      public ParameterDriver getCisDriver()
      Get driver for amplitude of the sine harmonic correction term to the angle of inclination.
      Returns:
      driver for amplitude of the sine harmonic correction term to the angle of inclination (rad)
    • getAf0Driver

      public ParameterDriver getAf0Driver()
      Get driver for SV zero-th order clock correction.
      Returns:
      driver for SV zero-th order clock correction (s)
    • getAf1Driver

      public ParameterDriver getAf1Driver()
      Get driver for SV first order clock correction.
      Returns:
      driver for SV first order clock correction (s/s)
    • getAf2Driver

      public ParameterDriver getAf2Driver()
      Get driver for SV second order clock correction.
      Returns:
      driver for SV second order clock correction (s/s²)
    • toGradients

      public Gradient[] toGradients(int freeParameters)
      Get the non-Keplerian elements as gradient variables or constants, depending on selection status.
      Parameters:
      freeParameters - total number of free parameters in the gradient
      Returns:
      non-Keplerian elements as gradient variables or constants
    • toGradients

      public <T extends CalculusFieldElement<T>> FieldGradient<T>[] toGradients(Field<T> field, int freeParameters)
      Get the non-Keplerian elements as gradient variables or constants, depending on selection status.
      Type Parameters:
      T - type of the field elements
      Parameters:
      field - field
      freeParameters - total number of free parameters in the gradient
      Returns:
      non-Keplerian elements as gradient variables or constants