Class PythonDSSTForceModel
- java.lang.Object
-
- org.orekit.propagation.semianalytical.dsst.forces.PythonDSSTForceModel
-
- All Implemented Interfaces:
DSSTForceModel
,ParametersDriversProvider
public class PythonDSSTForceModel extends Object implements DSSTForceModel
-
-
Constructor Summary
Constructors Constructor Description PythonDSSTForceModel()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
finalize()
Part of JCC Python interface to objectEventDetector[]
getEventsDetectors()
Get the discrete events related to the model.<T extends CalculusFieldElement<T>>
FieldEventDetector<T>[]getFieldEventsDetectors(Field<T> field)
Get the discrete events related to the model.<T extends CalculusFieldElement<T>>
T[]getMeanElementRate(FieldSpacecraftState<T> state, FieldAuxiliaryElements<T> auxiliaryElements, T[] parameters)
Computes the mean equinoctial elements rates dai / dt.double[]
getMeanElementRate(SpacecraftState state, AuxiliaryElements auxiliaryElements, double[] parameters)
Computes the mean equinoctial elements rates dai / dt.<T extends CalculusFieldElement<T>>
T[]getMeanElementRate_FFT(FieldSpacecraftState<T> state, FieldAuxiliaryElements<T> auxiliaryElements, T[] parameters)
Computes the mean equinoctial elements rates dai / dt.List<ParameterDriver>
getParametersDrivers()
Get the drivers for force model parameters.List<ShortPeriodTerms>
initializeShortPeriodTerms(AuxiliaryElements auxiliaryElements, PropagationType type, double[] parameters)
Performs initialization prior to propagation for the current force model.<T extends CalculusFieldElement<T>>
List<FieldShortPeriodTerms<T>>initializeShortPeriodTerms(FieldAuxiliaryElements<T> auxiliaryElements, PropagationType type, T[] parameters)
Performs initialization prior to propagation for the current force model.<T extends CalculusFieldElement<T>>
List<FieldShortPeriodTerms<T>>initializeShortPeriodTerms_FPT(FieldAuxiliaryElements<T> auxiliaryElements, PropagationType type, T[] parameters)
Performs initialization prior to propagation for the current force model.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 objectvoid
registerAttitudeProvider(AttitudeProvider provider)
Register an attitude provider.void
updateShortPeriodTerms(double[] parameters, SpacecraftState... meanStates)
Update the short period terms.<T extends CalculusFieldElement<T>>
voidupdateShortPeriodTerms(T[] parameters, FieldSpacecraftState<T>... meanStates)
Update the short period terms.<T extends CalculusFieldElement<T>>
voidupdateShortPeriodTerms_TF(T[] parameters, FieldSpacecraftState<T>... meanStates)
Update the short period terms.-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.semianalytical.dsst.forces.DSSTForceModel
getParameters, getParameters, init, init
-
-
-
-
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
-
initializeShortPeriodTerms
public List<ShortPeriodTerms> initializeShortPeriodTerms(AuxiliaryElements auxiliaryElements, PropagationType type, double[] parameters)
Performs initialization prior to propagation for the current force model.This method aims at being called at the very beginning of a propagation.
- Specified by:
initializeShortPeriodTerms
in interfaceDSSTForceModel
- Parameters:
auxiliaryElements
- auxiliary elements related to the current orbittype
- type of the elements used during the propagationparameters
- values of the force model parameters- Returns:
- a list of objects that will hold short period terms (the objects are also retained by the force model, which will update them during propagation)
-
initializeShortPeriodTerms_FPT
public <T extends CalculusFieldElement<T>> List<FieldShortPeriodTerms<T>> initializeShortPeriodTerms_FPT(FieldAuxiliaryElements<T> auxiliaryElements, PropagationType type, T[] parameters)
Performs initialization prior to propagation for the current force model.This method aims at being called at the very beginning of a propagation.
- Parameters:
auxiliaryElements
- auxiliary elements related to the current orbittype
- type of the elements used during the propagationparameters
- values of the force model parameters- Returns:
- a list of objects that will hold short period terms (the objects are also retained by the force model, which will update them during propagation)
-
initializeShortPeriodTerms
public <T extends CalculusFieldElement<T>> List<FieldShortPeriodTerms<T>> initializeShortPeriodTerms(FieldAuxiliaryElements<T> auxiliaryElements, PropagationType type, T[] parameters)
Description copied from interface:DSSTForceModel
Performs initialization prior to propagation for the current force model.This method aims at being called at the very beginning of a propagation.
- Specified by:
initializeShortPeriodTerms
in interfaceDSSTForceModel
- Type Parameters:
T
- type of the elements- Parameters:
auxiliaryElements
- auxiliary elements related to the current orbittype
- type of the elements used during the propagationparameters
- values of the force model parameters- Returns:
- a list of objects that will hold short period terms (the objects are also retained by the force model, which will update them during propagation)
-
getMeanElementRate
public double[] getMeanElementRate(SpacecraftState state, AuxiliaryElements auxiliaryElements, double[] parameters)
Computes the mean equinoctial elements rates dai / dt.- Specified by:
getMeanElementRate
in interfaceDSSTForceModel
- Parameters:
state
- current state information: date, kinematics, attitudeauxiliaryElements
- auxiliary elements related to the current orbitparameters
- values of the force model parameters- Returns:
- the mean element rates dai/dt
-
getMeanElementRate_FFT
public <T extends CalculusFieldElement<T>> T[] getMeanElementRate_FFT(FieldSpacecraftState<T> state, FieldAuxiliaryElements<T> auxiliaryElements, T[] parameters)
Computes the mean equinoctial elements rates dai / dt.- Parameters:
state
- current state information: date, kinematics, attitudeauxiliaryElements
- auxiliary elements related to the current orbitparameters
- values of the force model parameters- Returns:
- the mean element rates dai/dt
-
getMeanElementRate
public <T extends CalculusFieldElement<T>> T[] getMeanElementRate(FieldSpacecraftState<T> state, FieldAuxiliaryElements<T> auxiliaryElements, T[] parameters)
Description copied from interface:DSSTForceModel
Computes the mean equinoctial elements rates dai / dt.- Specified by:
getMeanElementRate
in interfaceDSSTForceModel
- Type Parameters:
T
- type of the elements- Parameters:
state
- current state information: date, kinematics, attitudeauxiliaryElements
- auxiliary elements related to the current orbitparameters
- values of the force model parameters- Returns:
- the mean element rates dai/dt
-
getEventsDetectors
public EventDetector[] getEventsDetectors()
Get the discrete events related to the model.- Specified by:
getEventsDetectors
in interfaceDSSTForceModel
- Returns:
- array of events detectors or null if the model is not related to any discrete events
-
getFieldEventsDetectors
public <T extends CalculusFieldElement<T>> FieldEventDetector<T>[] getFieldEventsDetectors(Field<T> field)
Get the discrete events related to the model.- Specified by:
getFieldEventsDetectors
in interfaceDSSTForceModel
- Type Parameters:
T
- type of the elements- Parameters:
field
- field used by default- Returns:
- array of events detectors or null if the model is not related to any discrete events
-
registerAttitudeProvider
public void registerAttitudeProvider(AttitudeProvider provider)
Register an attitude provider.Register an attitude provider that can be used by the force model.
- Specified by:
registerAttitudeProvider
in interfaceDSSTForceModel
- Parameters:
provider
- theAttitudeProvider
-
updateShortPeriodTerms
public void updateShortPeriodTerms(double[] parameters, SpacecraftState... meanStates)
Update the short period terms.The
short period terms
that will be updated are the ones that were returned during the call toinitializeShortPeriodTerms(AuxiliaryElements, PropagationType, double[])
.- Specified by:
updateShortPeriodTerms
in interfaceDSSTForceModel
- Parameters:
parameters
- values of the force model parametersmeanStates
- mean states information: date, kinematics, attitude
-
updateShortPeriodTerms_TF
public <T extends CalculusFieldElement<T>> void updateShortPeriodTerms_TF(T[] parameters, FieldSpacecraftState<T>... meanStates)
Update the short period terms.The
short period terms
that will be updated are the ones that were returned during the call toinitializeShortPeriodTerms(AuxiliaryElements, PropagationType, double[])
.- Parameters:
parameters
- values of the force model parametersmeanStates
- mean states information: date, kinematics, attitude
-
updateShortPeriodTerms
public <T extends CalculusFieldElement<T>> void updateShortPeriodTerms(T[] parameters, FieldSpacecraftState<T>... meanStates)
Description copied from interface:DSSTForceModel
Update the short period terms.The
short period terms
that will be updated are the ones that were returned during the call toDSSTForceModel.initializeShortPeriodTerms(AuxiliaryElements, PropagationType, double[])
.- Specified by:
updateShortPeriodTerms
in interfaceDSSTForceModel
- Type Parameters:
T
- type of the elements- Parameters:
parameters
- values of the force model parametersmeanStates
- mean states information: date, kinematics, attitude
-
getParametersDrivers
public List<ParameterDriver> getParametersDrivers()
Get the drivers for force model parameters.- Specified by:
getParametersDrivers
in interfaceParametersDriversProvider
- Returns:
- drivers for force model parameters
-
-