Class FieldCartesianAdjointDerivativesProvider<T extends CalculusFieldElement<T>>
- java.lang.Object
-
- org.orekit.control.indirect.adjoint.FieldCartesianAdjointDerivativesProvider<T>
-
- All Implemented Interfaces:
FieldAdditionalDerivativesProvider<T>
public class FieldCartesianAdjointDerivativesProvider<T extends CalculusFieldElement<T>> extends Object implements FieldAdditionalDerivativesProvider<T>
Class defining the Field version of the adjoint dynamics for Cartesian coordinates, as defined in the Pontryagin Maximum Principle.- Since:
- 12.2
- Author:
- Romain Serra
- See Also:
FieldAdditionalDerivativesProvider
,FieldNumericalPropagator
,CartesianAdjointDerivativesProvider
-
-
Constructor Summary
Constructors Constructor Description FieldCartesianAdjointDerivativesProvider(FieldCartesianCost<T> cost, CartesianAdjointEquationTerm... adjointEquationTerms)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FieldCombinedDerivatives<T>
combinedDerivatives(FieldSpacecraftState<T> state)
Compute the derivatives related to the additional state (and optionally main state increments).T
evaluateHamiltonian(FieldSpacecraftState<T> state)
Evaluate the Hamiltonian from Pontryagin's Maximum Principle.FieldCartesianCost<T>
getCost()
Getter for the cost.int
getDimension()
Getter for the dimension.String
getName()
Getter for the name.void
init(FieldSpacecraftState<T> initialState, FieldAbsoluteDate<T> target)
Initialize the generator at the start of propagation.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.integration.FieldAdditionalDerivativesProvider
yields
-
-
-
-
Constructor Detail
-
FieldCartesianAdjointDerivativesProvider
public FieldCartesianAdjointDerivativesProvider(FieldCartesianCost<T> cost, CartesianAdjointEquationTerm... adjointEquationTerms)
Constructor.- Parameters:
cost
- cost functionadjointEquationTerms
- terms contributing to the adjoint equations
-
-
Method Detail
-
getCost
public FieldCartesianCost<T> getCost()
Getter for the cost.- Returns:
- cost
-
getName
public String getName()
Getter for the name.- Specified by:
getName
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Returns:
- name
-
getDimension
public int getDimension()
Getter for the dimension.- Specified by:
getDimension
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Returns:
- dimension
-
init
public void init(FieldSpacecraftState<T> initialState, FieldAbsoluteDate<T> target)
Initialize the generator at the start of propagation.- Specified by:
init
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Parameters:
initialState
- initial state information at the start of propagationtarget
- date of propagation
-
combinedDerivatives
public FieldCombinedDerivatives<T> combinedDerivatives(FieldSpacecraftState<T> state)
Compute the derivatives related to the additional state (and optionally main state increments).- Specified by:
combinedDerivatives
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Parameters:
state
- current state information: date, kinematics, attitude, and additional states this equations depend on (according to theyields
method)- Returns:
- computed combined derivatives, which may include some incremental coupling effect to add to main state derivatives
-
evaluateHamiltonian
public T evaluateHamiltonian(FieldSpacecraftState<T> state)
Evaluate the Hamiltonian from Pontryagin's Maximum Principle.- Parameters:
state
- state assumed to hold the adjoint variables- Returns:
- Hamiltonian
-
-