org.orekit.propagation.semianalytical.dsst.forces
public abstract class AbstractGaussianContribution extends Object implements DSSTForceModel
DSSTForceModel
methods for Gaussian contributions to DSST propagation.
This abstract class allows to provide easily a subset of DSSTForceModel
methods
for specific Gaussian contributions (i.e. atmospheric drag and solar radiation pressure).
Gaussian contributions can be expressed as: dai/dt = δai/δv . q
where:
Only two methods must be implemented by derived classes:
getAcceleration(SpacecraftState, Vector3D, Vector3D)
and
getLLimits(SpacecraftState)
.
Modifier and Type | Field and Description |
---|---|
protected double |
a
a.
|
protected double |
A
A = sqrt(μ * a).
|
protected double |
B
B = sqrt(1 - h2 - k2).
|
protected double |
C
C = 1 + p2 + q2.
|
protected double |
co2AB
C / (2 * A * B) .
|
protected double |
ecc
Eccentricity.
|
protected Vector3D |
f
Equinoctial frame f vector.
|
protected Vector3D |
g
Equinoctial frame g vector.
|
protected double |
h
ey.
|
protected double |
I
Retrograde factor.
|
protected double |
k
ex.
|
protected double |
n
Kepler mean motion: n = sqrt(μ / a3).
|
protected double |
ooA
1 / A .
|
protected double |
ooAB
1 / (A * B) .
|
protected double |
ooBpo
1 / (1 + B) .
|
protected double |
ooMu
1 / μ .
|
protected double |
p
hy.
|
protected double |
q
hx.
|
protected double |
ton2a
2 / (n2 * a) .
|
protected Vector3D |
w
Equinoctial frame w vector.
|
Modifier | Constructor and Description |
---|---|
protected |
AbstractGaussianContribution(double threshold)
Build a new instance.
|
Modifier and Type | Method and Description |
---|---|
protected abstract Vector3D |
getAcceleration(SpacecraftState state,
Vector3D position,
Vector3D velocity)
Compute the acceleration due to the non conservative perturbing force.
|
protected abstract double[] |
getLLimits(SpacecraftState state)
Compute the limits in L, the true longitude, for integration.
|
double[] |
getMeanElementRate(SpacecraftState state)
Computes the mean equinoctial elements rates dai / dt.
|
void |
initialize(AuxiliaryElements aux)
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.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getEventsDetectors, getShortPeriodicVariations
protected double I
protected double a
protected double k
protected double h
protected double q
protected double p
protected double ecc
protected double n
protected Vector3D f
protected Vector3D g
protected Vector3D w
protected double A
protected double B
protected double C
protected double ton2a
protected double ooA
protected double ooAB
protected double co2AB
protected double ooBpo
protected double ooMu
protected AbstractGaussianContribution(double threshold)
threshold
- tolerance for the choice of the Gauss quadrature orderpublic void initialize(AuxiliaryElements aux) throws OrekitException
This method aims at being called at the very beginning of a propagation.
initialize
in interface DSSTForceModel
aux
- auxiliary elements related to the current orbitOrekitException
- 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 DSSTForceModel
aux
- auxiliary elements related to the current orbitOrekitException
- if some specific error occurspublic double[] getMeanElementRate(SpacecraftState state) throws OrekitException
getMeanElementRate
in interface DSSTForceModel
state
- current state information: date, kinematics, attitudeOrekitException
- if some specific error occursprotected abstract Vector3D getAcceleration(SpacecraftState state, Vector3D position, Vector3D velocity) throws OrekitException
state
- current state information: date, kinematics, attitudeposition
- spacecraft positionvelocity
- spacecraft velocityOrekitException
- if some specific error occursprotected abstract double[] getLLimits(SpacecraftState state) throws OrekitException
state
- current state information: date, kinematics, attitudeOrekitException
- if some specific error occursCopyright © 2002–2015 CS Syst?mes d'Information. All rights reserved.