public class StelaAtmosphericDrag extends AbstractStelaGaussContribution
StelaAeroModel
,
Serialized FormdPert
Constructor and Description |
---|
StelaAtmosphericDrag(DragSensitive inSpacecraft,
Atmosphere inAtmosphere,
int inSquaringPoints,
double inEarthRadius,
double inAtmoThreshold,
int inDragRecomputeStep)
Constructor.
|
StelaAtmosphericDrag(DragSensitive inSpacecraft,
Atmosphere inAtmosphere,
int inSquaringPoints,
double inEarthRadius,
double inAtmoThreshold,
int inDragRecomputeStep,
int orderFS)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected double[] |
computeAnomalyBounds(double a,
double e,
double za)
Computes true anomaly and eccentric anomaly bounds.
|
double[][] |
computePartialDerivatives(StelaEquinoctialOrbit orbit)
Compute the partial derivatives for a given spacecraft state.
|
double[] |
computePerturbation(StelaEquinoctialOrbit orbit,
OrbitNatureConverter converter)
Compute the dE/dt force derivatives for a given spacecraft state.
|
double[] |
computeShortPeriods(StelaEquinoctialOrbit orbit,
OrbitNatureConverter converter)
Compute the short periodic variations for a given spacecraft state.
|
int |
getDragRecomputeStep() |
void |
setTransMatComputationFlag(boolean transMatrixFlag)
Setter for the switch indicating whether the drag term of the transition matrix has to be
computed.
|
computeCoeffs, computeGaussDerivativeEquations, computeGaussEquations, computeQuadElements, evaluateFS, getdPert, getType
public StelaAtmosphericDrag(DragSensitive inSpacecraft, Atmosphere inAtmosphere, int inSquaringPoints, double inEarthRadius, double inAtmoThreshold, int inDragRecomputeStep)
Fourier Series order for short periods computation is set to default value: 10.
inSpacecraft
- the drag sensitive spacecraft.inAtmosphere
- the atmospheric model.inSquaringPoints
- number of points for Simpson' Squaring.inEarthRadius
- the Earth radius.inAtmoThreshold
- the altitude of the upper atmospheric boundary.inDragRecomputeStep
- drag will be re-computed every inDragRecomputeStep steps (if value is 0, computed
every substep)public StelaAtmosphericDrag(DragSensitive inSpacecraft, Atmosphere inAtmosphere, int inSquaringPoints, double inEarthRadius, double inAtmoThreshold, int inDragRecomputeStep, int orderFS)
inSpacecraft
- the drag sensitive spacecraft.inAtmosphere
- the atmospheric model.inSquaringPoints
- number of points for Simpson' Squaring.inEarthRadius
- the Earth radius.inAtmoThreshold
- the altitude of the upper atmospheric boundary.inDragRecomputeStep
- drag will be re-computed every inDragRecomputeStep steps (if value is 0, computed
every substep)orderFS
- Fourier Series order for short periods computationpublic int getDragRecomputeStep()
public double[] computePerturbation(StelaEquinoctialOrbit orbit, OrbitNatureConverter converter) throws PatriusException
computePerturbation
in class AbstractStelaGaussContribution
orbit
- current orbit information: date, kinematicsconverter
- mean / osculating parameters converterPatriusException
- if perturbation computation failspublic double[] computeShortPeriods(StelaEquinoctialOrbit orbit, OrbitNatureConverter converter) throws PatriusException
orbit
- current orbit information: date, kinematicsconverter
- converter necessary in some specific case (drag short periods computation)PatriusException
- if short periods computation failspublic double[][] computePartialDerivatives(StelaEquinoctialOrbit orbit) throws PatriusException
orbit
- current orbit information: date, kinematicsPatriusException
- if partial derivatives computation failsprotected double[] computeAnomalyBounds(double a, double e, double za)
a
- semi-major axise
- eccentricityza
- apogee altitudepublic void setTransMatComputationFlag(boolean transMatrixFlag)
transMatrixFlag
- flag to setCopyright © 2023 CNES. All rights reserved.