Package org.orekit.propagation
Class PythonFieldAdditionalStateProvider<T extends CalculusFieldElement<T>>
- java.lang.Object
-
- org.orekit.propagation.PythonFieldAdditionalStateProvider<T>
-
- All Implemented Interfaces:
FieldAdditionalStateProvider<T>
public class PythonFieldAdditionalStateProvider<T extends CalculusFieldElement<T>> extends Object implements FieldAdditionalStateProvider<T>
-
-
Constructor Summary
Constructors Constructor Description PythonFieldAdditionalStateProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
finalize()
Part of JCC Python interface to objectT[]
getAdditionalState(FieldSpacecraftState<T> state)
Get the additional state.String
getName()
Get the name of the additional state.void
init(FieldSpacecraftState<T> initialState, FieldAbsoluteDate<T> target)
Initialize the additional state provider 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)
boolean
yield_(FieldSpacecraftState<T> state)
Check if this provider should yield so another provider has an opportunity to add missing parts.-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.FieldAdditionalStateProvider
yields
-
-
-
-
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 state.- Specified by:
getName
in interfaceFieldAdditionalStateProvider<T extends CalculusFieldElement<T>>
- Returns:
- name of the additional state
-
init
public void init(FieldSpacecraftState<T> initialState, FieldAbsoluteDate<T> target)
Initialize the additional state provider at the start of propagation.- Specified by:
init
in interfaceFieldAdditionalStateProvider<T extends CalculusFieldElement<T>>
- Parameters:
initialState
- initial state information at the start of propagationtarget
- date of propagation- Since:
- 11.2
-
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 state) { return !state.getAdditionalStates().containsKey("STM"); }
The default implementation returns
false
, meaning that state data can begenerated
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
- Since:
- 11.1
-
yield
public boolean yield(FieldSpacecraftState<T> state)
-
getAdditionalState
public T[] getAdditionalState(FieldSpacecraftState<T> state)
Get the additional state.- Specified by:
getAdditionalState
in interfaceFieldAdditionalStateProvider<T extends CalculusFieldElement<T>>
- Parameters:
state
- spacecraft state to which additional state should correspond- Returns:
- additional state corresponding to spacecraft state
-
-