Class PythonFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- java.lang.Object
-
- org.orekit.propagation.integration.PythonFieldAdditionalDerivativesProvider<T>
-
- All Implemented Interfaces:
FieldAdditionalDerivativesProvider<T>
public class PythonFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>> extends Object implements FieldAdditionalDerivativesProvider<T>
-
-
Constructor Summary
Constructors Constructor Description PythonFieldAdditionalDerivativesProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description FieldCombinedDerivatives<T>
combinedDerivatives(FieldSpacecraftState<T> s)
Compute the derivatives related to the additional state (and optionally main state increments).T[]
derivatives(FieldSpacecraftState<T> s)
Deprecated.as of 11.2, replaced bycombinedDerivatives(FieldSpacecraftState)
void
finalize()
Part of JCC Python interface to objectint
getDimension()
Get the dimension of the generated derivative.String
getName()
Get the name of the additional derivatives (which will become state once integrated).void
init(FieldSpacecraftState<T> initialState, FieldAbsoluteDate<T> target)
Initialize the generator at the start of propagation.void
pythonDecRef()
Part of JCC Python interface to objectlong
pythonExtension()
Part of JCC Python interface to objectvoid
pythonExtension(long pythonObject)
Part of JCC Python interface to objectboolean
yield(FieldSpacecraftState<T> state)
Check if this provider should yield so another provider has an opportunity to add missing parts.boolean
yield_(FieldSpacecraftState<T> state)
Check if this provider should yield so another provider has an opportunity to add missing parts.
-
-
-
Method Detail
-
pythonExtension
public void pythonExtension(long pythonObject)
Part of JCC Python interface to object
-
pythonExtension
public long pythonExtension()
Part of JCC Python interface to object
-
finalize
public void finalize() throws Throwable
Part of JCC Python interface to object
-
pythonDecRef
public void pythonDecRef()
Part of JCC Python interface to object
-
getName
public String getName()
Get the name of the additional derivatives (which will become state once integrated).- Specified by:
getName
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Returns:
- name of the additional state (names containing "orekit" with any case are reserved for the library internal use)
-
getDimension
public int getDimension()
Get the dimension of the generated derivative.- Specified by:
getDimension
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Returns:
- dimension of the generated
-
init
public void init(FieldSpacecraftState<T> initialState, FieldAbsoluteDate<T> target)
Initialize the generator at the start of propagation.- Specified by:
init
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Parameters:
initialState
- initial state information at the start of propagationtarget
- date of propagation
-
yield_
public boolean yield_(FieldSpacecraftState<T> state)
Check if this provider should yield so another provider has an opportunity to add missing parts.Decision to yield is often based on an additional state being
already available
in the providedstate
(but it could theoretically also depend on an additional state derivative beingalready available
, or any other criterion). If for example a provider needs the state transition matrix, it could implement this method as:public boolean yield(final FieldSpacecraftState<T> state) { return !state.getAdditionalStates().containsKey("STM"); }
The default implementation returns
false
, meaning that derivative data can becomputed
immediately.- Parameters:
state
- state to handle- Returns:
- true if this provider should yield so another provider has an opportunity to add missing parts as the state is incrementally built up
-
yield
public boolean yield(FieldSpacecraftState<T> state)
Description copied from interface:FieldAdditionalDerivativesProvider
Check if this provider should yield so another provider has an opportunity to add missing parts.Decision to yield is often based on an additional state being
already available
in the providedstate
(but it could theoretically also depend on an additional state derivative beingalready available
, or any other criterion). If for example a provider needs the state transition matrix, it could implement this method as:public boolean yield(final FieldSpacecraftState<T> state) { return !state.getAdditionalStates().containsKey("STM"); }
The default implementation returns
false
, meaning that derivative data can becomputed
immediately.- Specified by:
yield
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Parameters:
state
- state to handle- Returns:
- true if this provider should yield so another provider has an opportunity to add missing parts as the state is incrementally built up
-
derivatives
public T[] derivatives(FieldSpacecraftState<T> s)
Deprecated.as of 11.2, replaced bycombinedDerivatives(FieldSpacecraftState)
Compute the derivatives related to the additional state parameters.- Specified by:
derivatives
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Parameters:
s
- current state information: date, kinematics, attitude, and additional states this equations depend on (according to theyield
method)- Returns:
- computed derivatives
-
combinedDerivatives
public FieldCombinedDerivatives<T> combinedDerivatives(FieldSpacecraftState<T> s)
Compute the derivatives related to the additional state (and optionally main state increments).As of 11.2, there is a default implementation that calls the deprecated
derivatives(FieldSpacecraftState)
method. This has been done for backward compatibility only and will be removed in 12.0.- Specified by:
combinedDerivatives
in interfaceFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
- Parameters:
s
- current state information: date, kinematics, attitude, and additional states this equations depend on (according to theyield
method)- Returns:
- computed combined derivatives, which may include some incremental coupling effect to add to main state derivatives
- Since:
- 11.2
-
-