Class FieldAbstractCartesianCost<T extends CalculusFieldElement<T>>
java.lang.Object
org.orekit.control.indirect.adjoint.cost.FieldAbstractCartesianCost<T>
- Type Parameters:
T- field type
- All Implemented Interfaces:
FieldCartesianCost<T>
- Direct Known Subclasses:
FieldBoundedCartesianEnergy,FieldCartesianFlightDurationCost,FieldCartesianFuelCost,FieldPenalizedCartesianFuelCost,FieldUnboundedCartesianEnergy
public abstract class FieldAbstractCartesianCost<T extends CalculusFieldElement<T>>
extends Object
implements FieldCartesianCost<T>
Abstract class for cost with Cartesian coordinates.
- Since:
- 13.0
- Author:
- Romain Serra
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassClass for control switch function involving Field. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedFieldAbstractCartesianCost(String name, T massFlowRateFactor) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected FieldEventDetector<T> buildSwitchDetector(FieldAbstractCartesianCost<T>.FieldSwitchFunction eventFunction, FieldEventDetectionSettings<T> fieldEventDetectionSettings) Build event detector.intGetter for adjoint vector dimension.Getter for adjoint vector name.protected TgetFieldAdjointVelocityNorm(T[] adjointVariables) Computes the Euclidean norm of the adjoint velocity vector.Getter for mass flow rate factor.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.control.indirect.adjoint.cost.FieldCartesianCost
getCostDerivativeProvider, getFieldEventDetectors, getFieldHamiltonianContribution, getFieldThrustAccelerationVector, toCartesianCost, updateFieldAdjointDerivatives
-
Constructor Details
-
FieldAbstractCartesianCost
Constructor.- Parameters:
name- namemassFlowRateFactor- mass flow rate factor
-
-
Method Details
-
getAdjointDimension
public int getAdjointDimension()Getter for adjoint vector dimension.- Specified by:
getAdjointDimensionin interfaceFieldCartesianCost<T extends CalculusFieldElement<T>>- Returns:
- adjoint dimension
-
getAdjointName
Getter for adjoint vector name.- Specified by:
getAdjointNamein interfaceFieldCartesianCost<T extends CalculusFieldElement<T>>- Returns:
- name
-
getMassFlowRateFactor
Getter for mass flow rate factor. It is negated and multiplied by the thrust force magnitude to obtain the mass time derivative. The fact that it is a constant means that the exhaust speed is assumed to be independent of time.- Specified by:
getMassFlowRateFactorin interfaceFieldCartesianCost<T extends CalculusFieldElement<T>>- Returns:
- mass flow rate factor
-
getFieldAdjointVelocityNorm
Computes the Euclidean norm of the adjoint velocity vector.- Parameters:
adjointVariables- adjoint vector- Returns:
- norm of adjoint velocity
-
buildSwitchDetector
protected FieldEventDetector<T> buildSwitchDetector(FieldAbstractCartesianCost<T>.FieldSwitchFunction eventFunction, FieldEventDetectionSettings<T> fieldEventDetectionSettings) Build event detector.- Parameters:
eventFunction- event functionfieldEventDetectionSettings- detection settings- Returns:
- event detector
- Since:
- 14.0
-