Class GPSPropagator
- java.lang.Object
-
- org.orekit.propagation.AbstractPropagator
-
- org.orekit.propagation.analytical.AbstractAnalyticalPropagator
-
- org.orekit.propagation.analytical.gnss.GPSPropagator
-
- All Implemented Interfaces:
Propagator
,PVCoordinatesProvider
public class GPSPropagator extends AbstractAnalyticalPropagator
This class aims at propagating a GPS orbit fromGPSOrbitalElements
.- Since:
- 8.0
- Author:
- Pascal Parraud
- See Also:
- GPS Interface Specification
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
GPSPropagator.Builder
This nested class aims at building a GPSPropagator.
-
Field Summary
-
Fields inherited from interface org.orekit.propagation.Propagator
DEFAULT_LAW, DEFAULT_MASS, EPHEMERIS_GENERATION_MODE, MASTER_MODE, SLAVE_MODE
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Frame
getECEF()
Gets the Earth Centered Earth Fixed frame used to propagate GPS orbits according to the GPS Interface Specification.Frame
getECI()
Gets the Earth Centered Inertial frame used to propagate the orbit.Frame
getFrame()
Get the frame in which the orbit is propagated.GPSOrbitalElements
getGPSOrbitalElements()
Gets the underlying GPS orbital elements.protected double
getMass(AbsoluteDate date)
Get the mass.static double
getMU()
Get the Earth gravity coefficient used for GPS propagation.PVCoordinates
propagateInEcef(AbsoluteDate date)
Gets the PVCoordinates of the GPS SV inECEF frame
.protected Orbit
propagateOrbit(AbsoluteDate date)
Extrapolate an orbit up to a specific target date.void
resetInitialState(SpacecraftState state)
Reset the propagator initial state.protected void
resetIntermediateState(SpacecraftState state, boolean forward)
Reset an intermediate state.-
Methods inherited from class org.orekit.propagation.analytical.AbstractAnalyticalPropagator
acceptStep, addEventDetector, basicPropagate, clearEventsDetectors, getEventsDetectors, getGeneratedEphemeris, getPvProvider, propagate
-
Methods inherited from class org.orekit.propagation.AbstractPropagator
addAdditionalStateProvider, getAdditionalStateProviders, getAttitudeProvider, getFixedStepSize, getInitialState, getManagedAdditionalStates, getMode, getPVCoordinates, getStartDate, getStepHandler, isAdditionalStateManaged, propagate, setAttitudeProvider, setEphemerisMode, setEphemerisMode, setMasterMode, setMasterMode, setSlaveMode, setStartDate, updateAdditionalStates
-
-
-
-
Method Detail
-
propagateInEcef
public PVCoordinates propagateInEcef(AbsoluteDate date)
Gets the PVCoordinates of the GPS SV inECEF frame
.The algorithm is defined at Table 20-IV from IS-GPS-200 document, with automatic differentiation added to compute velocity and acceleration.
- Parameters:
date
- the computation date- Returns:
- the GPS SV PVCoordinates in
ECEF frame
-
getMU
public static double getMU()
Get the Earth gravity coefficient used for GPS propagation.- Returns:
- the Earth gravity coefficient.
-
getGPSOrbitalElements
public GPSOrbitalElements getGPSOrbitalElements()
Gets the underlying GPS orbital elements.- Returns:
- the underlying GPS orbital elements
-
getECI
public Frame getECI()
Gets the Earth Centered Inertial frame used to propagate the orbit.- Returns:
- the ECI frame
-
getECEF
public Frame getECEF()
Gets the Earth Centered Earth Fixed frame used to propagate GPS orbits according to the GPS Interface Specification.This frame is assimilated to the WGS84 ECEF.
- Returns:
- the ECEF frame
-
getFrame
public Frame getFrame()
Get the frame in which the orbit is propagated.The propagation frame is the definition frame of the initial state, so this method should be called after this state has been set, otherwise it may return null.
- Specified by:
getFrame
in interfacePropagator
- Overrides:
getFrame
in classAbstractPropagator
- Returns:
- frame in which the orbit is propagated
- See Also:
Propagator.resetInitialState(SpacecraftState)
-
resetInitialState
public void resetInitialState(SpacecraftState state)
Reset the propagator initial state.- Specified by:
resetInitialState
in interfacePropagator
- Overrides:
resetInitialState
in classAbstractPropagator
- Parameters:
state
- new initial state to consider
-
resetIntermediateState
protected void resetIntermediateState(SpacecraftState state, boolean forward)
Reset an intermediate state.- Specified by:
resetIntermediateState
in classAbstractAnalyticalPropagator
- Parameters:
state
- new intermediate state to considerforward
- if true, the intermediate state is valid for propagations after itself
-
getMass
protected double getMass(AbsoluteDate date)
Get the mass.- Specified by:
getMass
in classAbstractAnalyticalPropagator
- Parameters:
date
- target date for the orbit- Returns:
- mass mass
-
propagateOrbit
protected Orbit propagateOrbit(AbsoluteDate date)
Extrapolate an orbit up to a specific target date.- Specified by:
propagateOrbit
in classAbstractAnalyticalPropagator
- Parameters:
date
- target date for the orbit- Returns:
- extrapolated parameters
-
-