Class Galileo

  • All Implemented Interfaces:
    AttitudeProvider, GNSSAttitudeProvider, EventDetectorsProvider

    public class Galileo
    extends Object
    Attitude providers for Galileo navigation satellites.

    This class is based on the May 2017 version of J. Kouba eclips.f subroutine available at IGS Analysis Center Coordinator site. The eclips.f code itself is not used ; its hard-coded data are used and its low level models are used, but the structure of the code and the API have been completely rewritten.

    Since:
    9.2
    Author:
    J. Kouba original fortran routine, Luc Maisonobe Java translation
    • Field Detail

      • DEFAULT_YAW_RATE

        public static final double DEFAULT_YAW_RATE
        Default yaw rates for all spacecrafts in radians per seconds.
    • Constructor Detail

      • Galileo

        public Galileo​(double yawRate,
                       AbsoluteDate validityStart,
                       AbsoluteDate validityEnd,
                       ExtendedPositionProvider sun,
                       Frame inertialFrame)
        Simple constructor.
        Parameters:
        yawRate - yaw rate to use in radians per seconds (typically DEFAULT_YAW_RATE)
        validityStart - start of validity for this provider
        validityEnd - end of validity for this provider
        sun - provider for Sun position
        inertialFrame - inertial frame where velocity are computed
    • Method Detail

      • correctedYaw

        protected TimeStampedAngularCoordinates correctedYaw​(org.orekit.gnss.attitude.GNSSAttitudeContext context)
        Select the /** Compute GNSS attitude with midnight/noon yaw turn correction.
        Parameters:
        context - context data for attitude computation
        Returns:
        corrected yaw, using inertial frame as the reference
      • correctedYaw

        protected <T extends CalculusFieldElement<T>> TimeStampedFieldAngularCoordinates<T> correctedYaw​(org.orekit.gnss.attitude.GNSSFieldAttitudeContext<T> context)
        Compute GNSS attitude with midnight/noon yaw turn correction.
        Type Parameters:
        T - type of the field elements
        Parameters:
        context - context data for attitude computation
        Returns:
        corrected yaw, using inertial frame as the reference
      • getAttitude

        public Attitude getAttitude​(PVCoordinatesProvider pvProv,
                                    AbsoluteDate date,
                                    Frame frame)
        Compute the attitude corresponding to an orbital state.
        Specified by:
        getAttitude in interface AttitudeProvider
        Parameters:
        pvProv - local position-velocity provider around current date
        date - current date
        frame - reference frame from which attitude is computed
        Returns:
        attitude on the specified date and position-velocity state
      • getAttitude

        public <T extends CalculusFieldElement<T>> FieldAttitude<T> getAttitude​(FieldPVCoordinatesProvider<T> pvProv,
                                                                                FieldAbsoluteDate<T> date,
                                                                                Frame frame)
        Compute the attitude corresponding to an orbital state.
        Specified by:
        getAttitude in interface AttitudeProvider
        Type Parameters:
        T - type of the field elements
        Parameters:
        pvProv - local position-velocity provider around current date
        date - current date
        frame - reference frame from which attitude is computed
        Returns:
        attitude on the specified date and position-velocity state
      • getSun

        protected ExtendedPositionProvider getSun()
        Get provider for Sun position.
        Returns:
        provider for Sun position
        Since:
        12.0
      • getInertialFrame

        protected Frame getInertialFrame()
        Get inertial frame where velocity are computed.
        Returns:
        inertial frame where velocity are computed