Class FieldYamanakaAnkersenProvider<T extends CalculusFieldElement<T>>

java.lang.Object
org.orekit.propagation.relative.FieldAbstractRelativeProvider<T>
org.orekit.propagation.relative.yamanakaankersen.FieldYamanakaAnkersenProvider<T>
Type Parameters:
T - Any scalar field.
All Implemented Interfaces:
FieldAdditionalDataProvider<T[],T>, FieldRelativeProvider<T>

public class FieldYamanakaAnkersenProvider<T extends CalculusFieldElement<T>> extends FieldAbstractRelativeProvider<T>

This additional state provider implements the Yamanaka-Ankersen equations of relative motion to propagate the relative orbit of a chaser spacecraft around the target spacecraft whose orbit is being propagated.

Note 1: the Yamanaka-Ankersen equations are valid for any eccentric orbits.

Note 2: the additional state returned is a PV of the chaser at the given time expressed in the target's LVLH CCSDS local orbital frame.

The actual orbit of a chaser around the target will be different when considering a greater eccentricity, or other perturbations. It is however a good and analytical (very fast) way to approximate the relative motion of two spacecraft with the target in eccentric orbit.

The class FieldYamanakaAnkersenRendezVous allows the analytical computation of 2-maneuver rendez-vous transfers.

Since:
14.0
Author:
Romain Cuvillon
  • Constructor Details

    • FieldYamanakaAnkersenProvider

      @DefaultDataContext public FieldYamanakaAnkersenProvider(FieldOrbit<T> targetOrbit)
      Builds a YamanakaAnkersenProvider from the target orbit and an all-zero PVT for the chaser.
      Parameters:
      targetOrbit - orbit of the target
    • FieldYamanakaAnkersenProvider

      public FieldYamanakaAnkersenProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVTLof)
      Builds a new YamanakaAnkersenProvider object from the target orbit and an all-zero PVT for the chaser.
      Parameters:
      targetOrbit - orbit of the target
      initialChaserPVTLof - Chaser PVT in the target's LVLH_CCSDS local orbital frame
    • FieldYamanakaAnkersenProvider

      public FieldYamanakaAnkersenProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVTLof, String additionalEquationsName)
      Builds a new YamanakaAnkersenProvider object from the target orbit and an initial PVT of the chaser.
      Parameters:
      targetOrbit - orbit of the target
      initialChaserPVTLof - Chaser PVT in the target's LVLH_CCSDS local orbital frame
      additionalEquationsName - Additional equations name
    • FieldYamanakaAnkersenProvider

      public FieldYamanakaAnkersenProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVT, Frame inputPVTFrame)
      Builds a new YamanakaAnkersenProvider object from the target orbit and an initial PVT of the chaser expressed in the given input frame.
      Parameters:
      targetOrbit - Target orbit. Should be circular for better results
      initialChaserPVT - Chaser PVT in given frame
      inputPVTFrame - Input frame for the initial chaser PVT
    • FieldYamanakaAnkersenProvider

      public FieldYamanakaAnkersenProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVT, Frame inputPVTFrame, String additionalEquationsName)
      Builds a new YamanakaAnkersenProvider object from the target orbit and an initial PVT of the chaser expressed in the given input frame.
      Parameters:
      targetOrbit - Target orbit. Should be circular for better results
      initialChaserPVT - Chaser PVT in given Frame
      inputPVTFrame - Input frame for the initial chaser PVT
      additionalEquationsName - Additional equations name
  • Method Details

    • setTargetTrueAnomaly

      public void setTargetTrueAnomaly(T trueAnomaly)
      Returns same orbit but at different true anomaly.
      Parameters:
      trueAnomaly - new true anomaly of the target
    • extractChaserPVT

      public TimeStampedFieldPVCoordinates<T> extractChaserPVT(FieldSpacecraftState<T> targetState)
      Extracts the chaser's PVT in the target LOF from the given target FieldSpacecraftState..

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

      Parameters:
      targetState - target FieldSpacecraftState
      Returns:
      chaser's TimeStampedPVCoordinates in target's LOF