|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.orekit.propagation.AbstractPropagator
org.orekit.propagation.analytical.tle.TLEPropagator
public abstract class TLEPropagator
This class provides elements to propagate TLE's.
The models used are SGP4 and SDP4, initially proposed by NORAD as the unique convenient propagator for TLE's. Inputs and outputs of this propagator are only suited for NORAD two lines elements sets, since it uses estimations and mean values appropriate for TLE's only.
Deep- or near- space propagator is selected internally according to NORAD recommendations
so that the user has not to worry about the used computation methods. One instance is created
for each TLE (this instance can only be get using selectExtrapolator(TLE) method,
and can compute position and velocity coordinates at any
time. Maximum accuracy is guaranteed in a 24h range period before and after the provided
TLE epoch (of course this accuracy is not really measurable nor predictable: according to
CelesTrak, the precision is close to one kilometer
and error won't probably rise above 2 km).
This implementation is largely inspired from the paper and source code Revisiting Spacetrack Report #3 and is fully compliant with its results and tests cases.
TLE,
Serialized Form| Field Summary | |
|---|---|
protected double |
a
final semi major axis. |
protected double |
a0dp
original recovered semi major axis. |
protected double |
beta0
sqrt (1 - e2). |
protected double |
beta02
1 - e2. |
protected double |
c1
C1 from SPTRCK #3. |
protected double |
c2
C2 from SPTRCK #3. |
protected double |
c4
C4 from SPTRCK #3. |
protected double |
coef
coef for SGP C3 computation. |
protected double |
coef1
coef for SGP C5 computation. |
protected double |
cosi0
cosinus original inclination. |
protected double |
e
final eccentricity. |
protected double |
e0sq
original eccentricity squared. |
protected double |
eeta
original eccentricity * eta. |
protected double |
eta
eta from SPTRCK #3. |
protected double |
etasq
eta squared. |
protected double |
i
final inclination. |
protected double |
omega
final perigee argument. |
protected double |
omgdot
common parameter for perigee argument (omega) computation. |
protected double |
perige
perigee, expressed in KM and ALTITUDE. |
protected double |
s4
s* new value for the contant s. |
protected double |
sini0
sinus original inclination. |
protected double |
t2cof
3/2 * C1. |
protected double |
theta2
cos io squared. |
protected TLE |
tle
Initial state. |
protected double |
tsi
tsi from SPTRCK #3. |
protected double |
xl
L from SPTRCK #3. |
protected double |
xmdot
common parameter for mean anomaly (M) computation. |
protected double |
xn0dp
original recovered mean motion. |
protected double |
xnodcf
common parameter for raan (OMEGA) computation. |
protected double |
xnode
final RAAN. |
protected double |
xnodot
common parameter for raan (OMEGA) computation. |
| Fields inherited from class org.orekit.propagation.AbstractPropagator |
|---|
MASS |
| Fields inherited from interface org.orekit.propagation.Propagator |
|---|
EPHEMERIS_GENERATION_MODE, MASTER_MODE, SLAVE_MODE |
| Constructor Summary | |
|---|---|
protected |
TLEPropagator(TLE initialTLE,
AttitudeProvider attitudeProviderForces,
AttitudeProvider attitudeProviderEvents,
MassProvider mass)
Protected constructor for derived classes. |
protected |
TLEPropagator(TLE initialTLE,
AttitudeProvider attitudeProvider,
MassProvider mass)
Protected constructor for derived classes. |
| Method Summary | |
|---|---|
Frame |
getFrame()
Get the frame in which the orbit is propagated. |
PVCoordinates |
getPVCoordinates(AbsoluteDate date)
Get the extrapolated position and velocity from an initial TLE. |
TLE |
getTLE()
Get the underlying TLE. |
protected Orbit |
propagateOrbit(AbsoluteDate date)
Extrapolate an orbit up to a specific target date. |
static TLEPropagator |
selectExtrapolator(TLE tle)
Selects the extrapolator to use with the selected TLE. |
static TLEPropagator |
selectExtrapolator(TLE tle,
AttitudeProvider attitudeProviderForces,
AttitudeProvider attitudeProviderEvents,
MassProvider mass)
Selects the extrapolator to use with the selected TLE. |
static TLEPropagator |
selectExtrapolator(TLE tle,
AttitudeProvider attitudeProvider,
MassProvider mass)
Selects the extrapolator to use with the selected TLE. |
protected abstract void |
sxpInitialize()
Initialization proper to each propagator (SGP or SDP). |
protected abstract void |
sxpPropagate(double t)
Propagation proper to each propagator (SGP or SDP). |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final TLE tle
protected double xnode
protected double a
protected double e
protected double i
protected double omega
protected double xl
protected double a0dp
protected double xn0dp
protected double cosi0
protected double theta2
protected double sini0
protected double xmdot
protected double omgdot
protected double xnodot
protected double e0sq
protected double beta02
protected double beta0
protected double perige
protected double etasq
protected double eeta
protected double s4
protected double tsi
protected double eta
protected double coef
protected double coef1
protected double c1
protected double c2
protected double c4
protected double xnodcf
protected double t2cof
| Constructor Detail |
|---|
protected TLEPropagator(TLE initialTLE,
AttitudeProvider attitudeProvider,
MassProvider mass)
throws OrekitException
initialTLE - the unique TLE to propagateattitudeProvider - provider for attitude computationmass - spacecraft mass (kg)
OrekitException - if some specific error occurs
protected TLEPropagator(TLE initialTLE,
AttitudeProvider attitudeProviderForces,
AttitudeProvider attitudeProviderEvents,
MassProvider mass)
throws OrekitException
initialTLE - the unique TLE to propagateattitudeProviderForces - provider for attitude computation in forces computation caseattitudeProviderEvents - provider for attitude computation in events computation casemass - spacecraft mass (kg)
OrekitException - if some specific error occurs| Method Detail |
|---|
public static TLEPropagator selectExtrapolator(TLE tle)
throws OrekitException
tle - the TLE to propagate.
OrekitException - if the underlying model cannot be initialized
public static TLEPropagator selectExtrapolator(TLE tle,
AttitudeProvider attitudeProvider,
MassProvider mass)
throws OrekitException
tle - the TLE to propagate.attitudeProvider - provider for attitude computationmass - spacecraft mass (kg)
OrekitException - if the underlying model cannot be initialized
public static TLEPropagator selectExtrapolator(TLE tle,
AttitudeProvider attitudeProviderForces,
AttitudeProvider attitudeProviderEvents,
MassProvider mass)
throws OrekitException
tle - the TLE to propagate.attitudeProviderForces - provider for attitude computation in forces computation caseattitudeProviderEvents - provider for attitude computation in events computation casemass - spacecraft mass (kg)
OrekitException - if the underlying model cannot be initialized
public PVCoordinates getPVCoordinates(AbsoluteDate date)
throws OrekitException
date - the final date
OrekitException - if propagation cannot be performed at given date
protected abstract void sxpInitialize()
throws OrekitException
OrekitException - if some specific error occurs
protected abstract void sxpPropagate(double t)
throws OrekitException
t - the offset from initial epoch (min)
OrekitException - if current state cannot be propagated
protected Orbit propagateOrbit(AbsoluteDate date)
throws PropagationException
propagateOrbit in class AbstractPropagatordate - target date for the orbit
PropagationException - if some parameters are out of boundspublic TLE getTLE()
public Frame getFrame()
4 cases are possible:
Propagator.setOrbitFrame(Frame)): it is returned.
getFrame in interface PropagatorgetFrame in class AbstractPropagator
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||