public interface DSSTForceModel
DSSTPropagator
.
Objects implementing this interface are intended to be added to a DSST propagator
before the propagation is started.
The propagator will call at the very beginning of a propagation the initialize(AuxiliaryElements, boolean)
method allowing preliminary computation
such as truncation if needed.
Then the propagator will call at each step:
initializeStep(AuxiliaryElements)
method.
The force model instance will extract all the elements needed before
computing the mean element rates.getMeanElementRate(SpacecraftState)
method.
The force model instance will extract all the state data needed to compute
the mean element rates that contribute to the mean state derivative.
The propagator will call the getShortPeriodicVariations(AbsoluteDate, double[])
method at the end of the propagation in order to compute the short periodic
variations to be added to the mean elements to get the final state.
Modifier and Type | Method and Description |
---|---|
void |
computeShortPeriodicsCoefficients(SpacecraftState state)
Compute the coefficients used for short periodic variations.
|
EventDetector[] |
getEventsDetectors()
Get the discrete events related to the model.
|
double[] |
getMeanElementRate(SpacecraftState state)
Computes the mean equinoctial elements rates dai / dt.
|
double[] |
getShortPeriodicVariations(AbsoluteDate date,
double[] meanElements)
Computes the short periodic variations.
|
void |
initialize(AuxiliaryElements aux,
boolean meanOnly)
Performs initialization prior to propagation for the current force model.
|
void |
initializeStep(AuxiliaryElements aux)
Performs initialization at each integration step for the current force model.
|
void |
registerAttitudeProvider(AttitudeProvider provider)
Register an attitude provider.
|
void |
resetShortPeriodicsCoefficients()
Reset the coefficients used for short periodic variations.
|
void initialize(AuxiliaryElements aux, boolean meanOnly) throws OrekitException
This method aims at being called at the very beginning of a propagation.
aux
- auxiliary elements related to the current orbitmeanOnly
- only mean elements are used during the propagationOrekitException
- if some specific error occursvoid initializeStep(AuxiliaryElements aux) throws OrekitException
This method aims at being called before mean elements rates computation.
aux
- auxiliary elements related to the current orbitOrekitException
- if some specific error occursdouble[] getMeanElementRate(SpacecraftState state) throws OrekitException
state
- current state information: date, kinematics, attitudeOrekitException
- if some specific error occursdouble[] getShortPeriodicVariations(AbsoluteDate date, double[] meanElements) throws OrekitException
date
- current datemeanElements
- mean elements at current dateOrekitException
- if some specific error occursEventDetector[] getEventsDetectors()
void registerAttitudeProvider(AttitudeProvider provider)
Register an attitude provider that can be used by the force model.
provider
- the AttitudeProvider
void computeShortPeriodicsCoefficients(SpacecraftState state) throws OrekitException
state
- current state information: date, kinematics, attitudeOrekitException
- if some specific error occursvoid resetShortPeriodicsCoefficients()
This method is aimed to reset short periodics coefficients. It is called when one goes from a interpolation step to the next one.
Copyright © 2002-2015 CS Systèmes d'information. All rights reserved.