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:
  • Constructor Details

    • FieldAbstractCartesianCost

      protected FieldAbstractCartesianCost(String name, T massFlowRateFactor)
      Constructor.
      Parameters:
      name - name
      massFlowRateFactor - mass flow rate factor
  • Method Details

    • getAdjointDimension

      public int getAdjointDimension()
      Getter for adjoint vector dimension.
      Specified by:
      getAdjointDimension in interface FieldCartesianCost<T extends CalculusFieldElement<T>>
      Returns:
      adjoint dimension
    • getAdjointName

      public String getAdjointName()
      Getter for adjoint vector name.
      Specified by:
      getAdjointName in interface FieldCartesianCost<T extends CalculusFieldElement<T>>
      Returns:
      name
    • getMassFlowRateFactor

      public T 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:
      getMassFlowRateFactor in interface FieldCartesianCost<T extends CalculusFieldElement<T>>
      Returns:
      mass flow rate factor
    • getFieldAdjointVelocityNorm

      protected T getFieldAdjointVelocityNorm(T[] adjointVariables)
      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 function
      fieldEventDetectionSettings - detection settings
      Returns:
      event detector
      Since:
      14.0