Interface FieldRelativeProvider<T extends CalculusFieldElement<T>>

Type Parameters:
T - Any scalar field
All Superinterfaces:
FieldAdditionalDataProvider<T[],T>
All Known Implementing Classes:
FieldAbstractRelativeProvider, FieldClohessyWiltshireProvider, FieldYamanakaAnkersenProvider

public interface FieldRelativeProvider<T extends CalculusFieldElement<T>> extends FieldAdditionalDataProvider<T[],T>
Interface for Field Relative provider.

A field relative provider is an interface extending FieldAdditionalDataProvider to provide the relative state of a chaser S/C in regard to a target S/C as a FieldAdditionalData. The target S/C is propagated with the "main" propagator where the additional data is added.

Since:
14.0
Author:
Romain Cuvillon
  • Method Details

    • getLof

      LOF getLof()
      Returns the LOF type used by the provider.
      Returns:
      the LOF used by the provider.
    • getInitialChaserPVTLof

      TimeStampedFieldPVCoordinates<T> getInitialChaserPVTLof()
      Get the initial TimeStampedPVCoordinates of the chaser in the Local Orbital Frame of the target.
      Returns:
      initial TimeStampedPVCoordinates of the chaser in target's LOF
    • setInitialChaserPVTLof

      void setInitialChaserPVTLof(TimeStampedFieldPVCoordinates<T> initialChaserPVTLof)
      Set the initial TimeStampedPVCoordinates of the chaser in the Local Orbital Frame of the target.
      Parameters:
      initialChaserPVTLof - initial TimeStampedPVCoordinates of the chaser in target's LOF
    • extractChaserPVT

      TimeStampedFieldPVCoordinates<T> extractChaserPVT(FieldSpacecraftState<T> targetState)
      Extracts the chaser's PVT in the target LOF from the given target FieldSpacecraftState.
      Parameters:
      targetState - target FieldSpacecraftState
      Returns:
      chaser's TimeStampedPVCoordinates in target's LOF
    • extractChaserPVT

      default TimeStampedFieldPVCoordinates<T> extractChaserPVT(FieldSpacecraftState<T> targetState, Frame outputFrame)
      Extracts the chaser's PVT from the given target FieldSpacecraftState and converts it to the desired output frame.
      Parameters:
      targetState - target FieldSpacecraftState
      outputFrame - desired frame in which to extract chaser's TimeStampedPVCoordinates
      Returns:
      TimeStampedPVCoordinates in desired frame
    • getAdditionalData

      default T[] getAdditionalData(FieldSpacecraftState<T> spacecraftState)
      Get the additional data..

      Get the chaser state relative to a target, in target's QSW LOF.

      Specified by:
      getAdditionalData in interface FieldAdditionalDataProvider<T extends CalculusFieldElement<T>[],T extends CalculusFieldElement<T>>
      Parameters:
      spacecraftState - spacecraft state to which additional data should correspond
      Returns:
      chaser cartesian state in target's QSW Local Orbital Frame
    • getTargetOrbit

      FieldOrbit<T> getTargetOrbit()
      Get the target Orbit.
      Returns:
      orbit of the target
    • setTargetOrbit

      void setTargetOrbit(FieldOrbit<T> targetOrbit)
      Set the target orbit.
      Parameters:
      targetOrbit - orbit of the target
    • setTargetTrueAnomaly

      default void setTargetTrueAnomaly(T trueAnomaly)
      CW doesn't use true anomaly, so default is a no-op Set the true anomaly of the target.
      Parameters:
      trueAnomaly - true anomaly of the target