Interface AttitudeProvider

All Superinterfaces:
AttitudeRotationModel, EventDetectorsProvider, ParameterDriversProvider
All Known Subinterfaces:
AttitudeProviderModifier, BoundedAttitudeProvider, GNSSAttitudeProvider
All Known Implementing Classes:
AggregateBoundedAttitudeProvider, AlignedAndConstrained, AttitudesSequence, AttitudesSwitcher, BeidouGeo, BeidouIGSO, BeidouMeo, BodyCenterPointing, CelestialBodyPointed, FixedRate, FrameAlignedProvider, Galileo, GenericGNSS, Glonass, GPSBlockIIA, GPSBlockIIF, GPSBlockIIR, GroundPointing, GroundPointingAttitudeModifier, LofOffset, LofOffsetPointing, NadirPointing, SpinStabilized, TabulatedLofOffset, TabulatedProvider, TargetPointing, TorqueFree, YawCompensation, YawSteering

public interface AttitudeProvider extends EventDetectorsProvider, AttitudeRotationModel
This interface represents an attitude provider model set.

An attitude provider provides a way to compute an Attitude from an date and position-velocity local provider.

Author:
Véronique Pommier-Maurussane
  • Method Details

    • getAttitude

      Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
      Compute the attitude corresponding to an orbital state.
      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

      <T extends CalculusFieldElement<T>> FieldAttitude<T> getAttitude(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
      Compute the attitude corresponding to an orbital state.
      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
      Since:
      9.0
    • getAttitudeRotation

      default Rotation getAttitudeRotation(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
      Compute the attitude-related rotation corresponding to an orbital state.
      Parameters:
      pvProv - local position-velocity provider around current date
      date - current date
      frame - reference frame from which attitude is computed
      Returns:
      attitude-related rotation on the specified date and position-velocity state
      Since:
      12.0
    • getAttitudeRotation

      default <T extends CalculusFieldElement<T>> FieldRotation<T> getAttitudeRotation(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
      Compute the attitude-related rotation corresponding to an orbital state.
      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:
      rotation on the specified date and position-velocity state
      Since:
      12.0
    • getAttitudeRotation

      default Rotation getAttitudeRotation(SpacecraftState state, double[] parameters)
      Computed the rotation given the input state and parameters' values. The default implementation is independent of the input parameters as by default there is no driver. Users wanting to use them must override this.
      Specified by:
      getAttitudeRotation in interface AttitudeRotationModel
      Parameters:
      state - spacecraft state
      parameters - values for parameter drivers
      Returns:
      attitude's rotation
      Since:
      13.0
    • getAttitudeRotation

      default <T extends CalculusFieldElement<T>> FieldRotation<T> getAttitudeRotation(FieldSpacecraftState<T> state, T[] parameters)
      Computed the rotation given the input state and parameters' values. The default implementation is independent of the input parameters as by default there is no driver. Users wanting to use them must override this.
      Specified by:
      getAttitudeRotation in interface AttitudeRotationModel
      Type Parameters:
      T - field type
      Parameters:
      state - spacecraft state
      parameters - values for parameter drivers
      Returns:
      attitude's rotation
      Since:
      13.0
    • getEventDetectors

      default Stream<EventDetector> getEventDetectors()
      Get the discrete events related to the model.

      This method is not intended to be called several time, only once by a propagator, as it has the side effect of rebuilding the events detectors when called

      Specified by:
      getEventDetectors in interface EventDetectorsProvider
      Returns:
      stream of event detectors
      Since:
      13.0
    • getFieldEventDetectors

      default <T extends CalculusFieldElement<T>> Stream<FieldEventDetector<T>> getFieldEventDetectors(Field<T> field)
      Get the discrete events related to the model.

      This method is not intended to be called several time, only once by a propagator, as it has the side effect of rebuilding the events detectors when called

      Specified by:
      getFieldEventDetectors in interface EventDetectorsProvider
      Type Parameters:
      T - extends CalculusFieldElement<T>
      Parameters:
      field - field to which the state belongs
      Returns:
      stream of event detectors
      Since:
      13.0
    • getParametersDrivers

      default List<ParameterDriver> getParametersDrivers()
      Get the drivers for parameters.
      Specified by:
      getParametersDrivers in interface ParameterDriversProvider
      Returns:
      drivers for parameters
      Since:
      13.0