public class DSSTTesseral extends Object implements DSSTForceModel
Only resonant tesserals are considered.
| Constructor and Description |
|---|
DSSTTesseral(Frame centralBodyFrame,
double centralBodyRotationRate,
UnnormalizedSphericalHarmonicsProvider provider,
int maxDegreeTesseralSP,
int maxOrderTesseralSP,
int maxEccPowTesseralSP,
int maxFrequencyShortPeriodics,
int maxDegreeMdailyTesseralSP,
int maxOrderMdailyTesseralSP,
int maxEccPowMdailyTesseralSP)
Simple constructor.
|
| Modifier and Type | Method and Description |
|---|---|
EventDetector[] |
getEventsDetectors()
Get the discrete events related to the model.
|
double[] |
getMeanElementRate(SpacecraftState spacecraftState)
Computes the mean equinoctial elements rates dai / dt.
|
List<ShortPeriodTerms> |
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 attitudeProvider)
Register an attitude provider.
|
void |
updateShortPeriodTerms(SpacecraftState... meanStates)
Update the short period terms.
|
public DSSTTesseral(Frame centralBodyFrame, double centralBodyRotationRate, UnnormalizedSphericalHarmonicsProvider provider, int maxDegreeTesseralSP, int maxOrderTesseralSP, int maxEccPowTesseralSP, int maxFrequencyShortPeriodics, int maxDegreeMdailyTesseralSP, int maxOrderMdailyTesseralSP, int maxEccPowMdailyTesseralSP) throws OrekitException
centralBodyFrame - rotating body framecentralBodyRotationRate - central body rotation rate (rad/s)provider - provider for spherical harmonicsmaxDegreeTesseralSP - maximal degree to consider for short periodics tesseral harmonics potential
(must be between 2 and provider.getMaxDegree())maxOrderTesseralSP - maximal order to consider for short periodics tesseral harmonics potential
(must be between 0 and provider.getMaxOrder())maxEccPowTesseralSP - maximum power of the eccentricity to use in summation over s for
short periodic tesseral harmonics (without m-daily), should typically not exceed 4 as higher
values will exceed computer capacitymaxFrequencyShortPeriodics - maximum frequency in mean longitude for short periodic computations
(typically maxDegreeTesseralSP + maxEccPowTesseralSP and no more than 12)maxDegreeMdailyTesseralSP - maximal degree to consider for short periodics m-daily tesseral harmonics potential
(must be between 2 and provider.getMaxDegree())maxOrderMdailyTesseralSP - maximal order to consider for short periodics m-daily tesseral harmonics potential
(must be between 0 and provider.getMaxOrder())maxEccPowMdailyTesseralSP - maximum power of the eccentricity to use in summation over s for
m-daily tesseral harmonics, (must be between 0 and maxDegreeMdailyTesseralSP - 2,
but should typically not exceed 4 as higher values will exceed computer capacity)OrekitException - if degrees or powers are out of rangepublic List<ShortPeriodTerms> initialize(AuxiliaryElements aux, boolean meanOnly) throws OrekitException
This method aims at being called at the very beginning of a propagation.
initialize in interface DSSTForceModelaux - auxiliary elements related to the current orbitmeanOnly - only mean elements are used during the propagationOrekitException - if some specific error occurspublic void initializeStep(AuxiliaryElements aux) throws OrekitException
This method aims at being called before mean elements rates computation.
initializeStep in interface DSSTForceModelaux - auxiliary elements related to the current orbitOrekitException - if some specific error occurspublic double[] getMeanElementRate(SpacecraftState spacecraftState) throws OrekitException
getMeanElementRate in interface DSSTForceModelspacecraftState - current state information: date, kinematics, attitudeOrekitException - if some specific error occurspublic void updateShortPeriodTerms(SpacecraftState... meanStates) throws OrekitException
The short period terms that will be updated
are the ones that were returned during the call to DSSTForceModel.initialize(AuxiliaryElements, boolean).
updateShortPeriodTerms in interface DSSTForceModelmeanStates - mean states information: date, kinematics, attitudeOrekitException - if some specific error occurspublic EventDetector[] getEventsDetectors()
getEventsDetectors in interface DSSTForceModelpublic void registerAttitudeProvider(AttitudeProvider attitudeProvider)
Register an attitude provider that can be used by the force model.
registerAttitudeProvider in interface DSSTForceModelattitudeProvider - the AttitudeProviderCopyright © 2002-2016 CS Systèmes d'information. All rights reserved.