Package org.orekit.forces.maneuvers
Enum Control3DVectorCostType
- java.lang.Object
-
- java.lang.Enum<Control3DVectorCostType>
-
- org.orekit.forces.maneuvers.Control3DVectorCostType
-
- All Implemented Interfaces:
Serializable
,Comparable<Control3DVectorCostType>
public enum Control3DVectorCostType extends Enum<Control3DVectorCostType>
Enumerate on types of cost for 3D control vector (thrust as a force or acceleration, including an impulse) at a given time. It is typically a norm (for a single, gimbaled thruster it would be the Euclidean one) and relates to the mass flow rate. See ROSS, I. Michael. Space Trajectory Optimization and L1-norm Optimal Control Problems. Modern astrodynamics, 2006, vol. 1, p. 155.It is used widely across the
org.orekit.forces.maneuvers
package.Note that norms in finite-dimensional vector spaces are all equivalent in a topological sense.
- Since:
- 12.0
- Author:
- Romain Serra
- See Also:
ImpulseManeuver
,FieldImpulseManeuver
,Maneuver
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract <T extends CalculusFieldElement<T>>
Tevaluate(FieldVector3D<T> controlVector)
Evaluate the cost of the input seen as a 3D control vector.abstract double
evaluate(Vector3D controlVector)
Evaluate the cost of the input seen as a 3D control vector.static Control3DVectorCostType
valueOf(String name)
Returns the enum constant of this type with the specified name.static Control3DVectorCostType[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
NONE
public static final Control3DVectorCostType NONE
Zero cost (free control).
-
ONE_NORM
public static final Control3DVectorCostType ONE_NORM
1-norm.
-
TWO_NORM
public static final Control3DVectorCostType TWO_NORM
2-norm also known as Euclidean.
-
INF_NORM
public static final Control3DVectorCostType INF_NORM
Infinite norm also known as Max.
-
-
Method Detail
-
values
public static Control3DVectorCostType[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (Control3DVectorCostType c : Control3DVectorCostType.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Control3DVectorCostType valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
evaluate
public abstract double evaluate(Vector3D controlVector)
Evaluate the cost of the input seen as a 3D control vector.- Parameters:
controlVector
- vector- Returns:
- cost of vector
-
evaluate
public abstract <T extends CalculusFieldElement<T>> T evaluate(FieldVector3D<T> controlVector)
Evaluate the cost of the input seen as a 3D control vector.- Type Parameters:
T
- CalculusFieldElement used- Parameters:
controlVector
- vector- Returns:
- cost of vector
-
-