Package org.orekit.control.heuristics
Class FieldAbstractInPlaneImpulseProvider<T extends CalculusFieldElement<T>>
- java.lang.Object
-
- org.orekit.control.heuristics.FieldAbstractInPlaneImpulseProvider<T>
-
- All Implemented Interfaces:
FieldImpulseProvider<T>
- Direct Known Subclasses:
FieldCircularizingImpulseProvider,FieldSmaChangingImpulseProvider
public abstract class FieldAbstractInPlaneImpulseProvider<T extends CalculusFieldElement<T>> extends Object implements FieldImpulseProvider<T>
Abstract class modelling impulsive, in-plane maneuvers. The impulse vector is computed in the same frame as the orbit. The instantaneous orbital plane is left unchanged. A constraint on the maximum magnitude can be optionally set.- Since:
- 14.0
- Author:
- Romain Serra
- See Also:
AbstractInPlaneImpulseProvider,FieldImpulseManeuver
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedFieldAbstractInPlaneImpulseProvider(T maximumMagnitude)Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description FieldVector3D<T>getImpulse(FieldSpacecraftState<T> state, boolean isForward)Method returning the impulse to be applied (Field version).TgetMaximumMagnitude()Getter for the maximum impulse's magnitude.protected abstract FieldVector3D<T>getUnconstrainedImpulse(FieldSpacecraftState<T> state, boolean isForward)Compute the impulse without magnitude constraint.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.forces.maneuvers.FieldImpulseProvider
finish, init
-
-
-
-
Constructor Detail
-
FieldAbstractInPlaneImpulseProvider
protected FieldAbstractInPlaneImpulseProvider(T maximumMagnitude)
Constructor.- Parameters:
maximumMagnitude- maximum magnitude
-
-
Method Detail
-
getMaximumMagnitude
public T getMaximumMagnitude()
Getter for the maximum impulse's magnitude.- Returns:
- maximum magnitude
-
getImpulse
public FieldVector3D<T> getImpulse(FieldSpacecraftState<T> state, boolean isForward)
Description copied from interface:FieldImpulseProviderMethod returning the impulse to be applied (Field version).- Specified by:
getImpulsein interfaceFieldImpulseProvider<T extends CalculusFieldElement<T>>- Parameters:
state- state before the maneuver is applied ifisForwardis true, after otherwiseisForward- flag on propagation direction- Returns:
- impulse in satellite's frame
-
getUnconstrainedImpulse
protected abstract FieldVector3D<T> getUnconstrainedImpulse(FieldSpacecraftState<T> state, boolean isForward)
Compute the impulse without magnitude constraint.- Parameters:
state- state immediately before (or after in backward time) the maneuverisForward- flag on propagation direction- Returns:
- impulse vector
-
-