Class AbstractAlmanac<O extends AbstractAlmanac<O>>

Type Parameters:
O - type of the orbital elements
All Implemented Interfaces:
GNSSClockElements, TimeStamped, ParameterDriversProvider
Direct Known Subclasses:
AbstractNavigationMessage, BeidouAlmanac, GalileoAlmanac, GPSAlmanac, NavICAlmanac, QZSSAlmanac

public abstract class AbstractAlmanac<O extends AbstractAlmanac<O>> extends CommonGnssData<O>
Base class for GNSS almanacs.
Since:
11.0
Author:
Pascal Parraud
  • Constructor Details

    • AbstractAlmanac

      protected AbstractAlmanac(double mu, double angularVelocity, int weeksInCycle, TimeScales timeScales, SatelliteSystem system)
      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)
    • AbstractAlmanac

      protected AbstractAlmanac(FieldAbstractAlmanac<T,A> original)
      Constructor from field instance.
      Type Parameters:
      T - type of the field elements
      A - type of the orbital elements (non-field version)
      Parameters:
      original - regular field instance
  • Method Details

    • getPropagator

      public GNSSPropagator getPropagator(Frame inertial, Frame bodyFixed)
      Get the propagator corresponding to the navigation message.

      The attitude provider is set by default to be aligned with the inertialframe.
      The mass is set by default to the DEFAULT_MASS.

      Parameters:
      inertial - inertial frame, use to provide the propagated orbit
      bodyFixed - body fixed frame, corresponding to the navigation message
      Returns:
      the propagator corresponding to the navigation message
      Since:
      14.0
      See Also:
    • getPropagator

      public GNSSPropagator getPropagator(AttitudeProvider provider, Frame inertial, Frame bodyFixed, double mass)
      Get the propagator corresponding to the navigation message.
      Parameters:
      provider - attitude provider
      inertial - inertial frame, use to provide the propagated orbit
      bodyFixed - body fixed frame, corresponding to the navigation message
      mass - spacecraft mass in kg
      Returns:
      the propagator corresponding to the navigation message
      Since:
      14.0
      See Also: