Class FieldClohessyWiltshireProvider<T extends CalculusFieldElement<T>>

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

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

This additional state provider implements the Clohessy-Wiltshire 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 Clohessy-Wiltshire equations consider the target to be in a perfectly circular orbit around a central potential.

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

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

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

Since:
14.0
Author:
Romain Cuvillon
  • Constructor Details

    • FieldClohessyWiltshireProvider

      @DefaultDataContext public FieldClohessyWiltshireProvider(FieldOrbit<T> targetOrbit)
      Builds a new provider object from the target orbit and an all-zero PVT for the chaser.
      Parameters:
      targetOrbit - Field target orbit. Should be circular for better results
    • FieldClohessyWiltshireProvider

      public FieldClohessyWiltshireProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVTLof)
      Builds a new provider object from the target orbit and an initial PVT of the chaser.
      Parameters:
      targetOrbit - Field orbit of the target. Should be circular for better results
      initialChaserPVTLof - Field PVT of the chaser in the Local Orbital Frame of the target
    • FieldClohessyWiltshireProvider

      public FieldClohessyWiltshireProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVTLof, String additionalEquationsName)
      Builds a new ClohessyWiltshireProvider object from the target orbit and an initial PVT of the chaser.
      Parameters:
      targetOrbit - Target orbit. Should be circular for better results
      initialChaserPVTLof - Chaser PVT in given frame
      additionalEquationsName - Additional equations name
    • FieldClohessyWiltshireProvider

      public FieldClohessyWiltshireProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVT, Frame inputPVTFrame)
      Builds a new ClohessyWiltshireProvider 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 the input frame
      inputPVTFrame - Input frame for the initial chaser PVT
    • FieldClohessyWiltshireProvider

      public FieldClohessyWiltshireProvider(FieldOrbit<T> targetOrbit, TimeStampedFieldPVCoordinates<T> initialChaserPVT, Frame inputPVTFrame, String additionalEquationsName)
      Builds a new ClohessyWiltshireProvider 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

    • 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 QSW LOF.

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