Class CartesianFuelCost
java.lang.Object
org.orekit.control.indirect.adjoint.cost.AbstractCartesianCost
org.orekit.control.indirect.adjoint.cost.CartesianFuelCost
- All Implemented Interfaces:
CartesianCost
Class for fuel cost with Cartesian coordinates.
It is the integral over time of the Euclidean norm of the thrust vector.
- Since:
- 13.0
- Author:
- Romain Serra
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionCartesianFuelCost(String name, double massFlowRateFactor, double maximumThrustMagnitude) Constructor with default detection settings.CartesianFuelCost(String name, double massFlowRateFactor, double maximumThrustMagnitude, EventDetectionSettings eventDetectionSettings) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionGetter for event detection settings.Get the detectors needed for propagation.doublegetHamiltonianContribution(double[] adjointVariables, double mass) Computes the Hamiltonian contribution to the cost function.doubleGetter for maximum thrust magnitude.getThrustAccelerationVector(double[] adjointVariables, double mass) Computes the thrust acceleration vector in propagation frame from the adjoint variables and the mass.voidupdateAdjointDerivatives(double[] adjointVariables, double mass, double[] adjointDerivatives) Update the adjoint derivatives if necessary.Methods inherited from class org.orekit.control.indirect.adjoint.cost.AbstractCartesianCost
buildSwitchDetector, getAdjointDimension, getAdjointName, getAdjointVelocityNorm, getMassFlowRateFactorMethods 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.CartesianCost
getCostDerivativeProvider
-
Constructor Details
-
CartesianFuelCost
Constructor with default detection settings.- Parameters:
name- namemassFlowRateFactor- mass flow rate factormaximumThrustMagnitude- maximum thrust magnitude
-
CartesianFuelCost
public CartesianFuelCost(String name, double massFlowRateFactor, double maximumThrustMagnitude, EventDetectionSettings eventDetectionSettings) Constructor.- Parameters:
name- namemassFlowRateFactor- mass flow rate factormaximumThrustMagnitude- maximum thrust magnitudeeventDetectionSettings- singularity event detection settings
-
-
Method Details
-
getMaximumThrustMagnitude
public double getMaximumThrustMagnitude()Getter for maximum thrust magnitude.- Returns:
- maximum thrust
-
getEventDetectionSettings
Getter for event detection settings.- Returns:
- detection settings.
-
getThrustAccelerationVector
Computes the thrust acceleration vector in propagation frame from the adjoint variables and the mass.- Parameters:
adjointVariables- adjoint vectormass- mass- Returns:
- thrust vector
-
updateAdjointDerivatives
public void updateAdjointDerivatives(double[] adjointVariables, double mass, double[] adjointDerivatives) Update the adjoint derivatives if necessary.- Parameters:
adjointVariables- adjoint vectormass- massadjointDerivatives- derivatives to update
-
getHamiltonianContribution
public double getHamiltonianContribution(double[] adjointVariables, double mass) Computes the Hamiltonian contribution to the cost function. It equals the Lagrange-form integrand multiplied by -1.- Parameters:
adjointVariables- adjoint vectormass- mass- Returns:
- contribution to Hamiltonian
-
getEventDetectors
Get the detectors needed for propagation.- Returns:
- event detectors
-