Package org.orekit.propagation
Class PythonAdditionalStateProvider
- java.lang.Object
-
- org.orekit.propagation.PythonAdditionalStateProvider
-
- All Implemented Interfaces:
AdditionalStateProvider
public class PythonAdditionalStateProvider extends Object implements AdditionalStateProvider
-
-
Constructor Summary
Constructors Constructor Description PythonAdditionalStateProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
finalize()
Part of JCC Python interface to objectdouble[]
getAdditionalState(SpacecraftState state)
Get the additional state.String
getName()
Get the name of the additional state.void
init(SpacecraftState initialState, AbsoluteDate 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(SpacecraftState state)
boolean
yield_(SpacecraftState 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.AdditionalStateProvider
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. Extension point for Python.- Specified by:
getName
in interfaceAdditionalStateProvider
- Returns:
- name of the additional state
-
init
public void init(SpacecraftState initialState, AbsoluteDate target)
Initialize the additional state provider at the start of propagation.- Specified by:
init
in interfaceAdditionalStateProvider
- Parameters:
initialState
- initial state information at the start of propagationtarget
- date of propagation- Since:
- 11.2
-
yield_
public boolean yield_(SpacecraftState 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 SpacecraftState 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(SpacecraftState state)
-
getAdditionalState
public double[] getAdditionalState(SpacecraftState state)
Get the additional state. Extension point for Python.- Specified by:
getAdditionalState
in interfaceAdditionalStateProvider
- Parameters:
state
- spacecraft state to which additional state should correspond- Returns:
- additional state corresponding to spacecraft state
-
-