Class GNSSPropagator
- java.lang.Object
-
- org.orekit.propagation.AbstractPropagator
-
- org.orekit.propagation.analytical.AbstractAnalyticalPropagator
-
- org.orekit.propagation.analytical.gnss.GNSSPropagator
-
- All Implemented Interfaces:
Propagator,PVCoordinatesProvider
public class GNSSPropagator extends AbstractAnalyticalPropagator
Common handling ofAbstractAnalyticalPropagatormethods for GNSS propagators.This class allows to provide easily a subset of
AbstractAnalyticalPropagatormethods for specific GNSS propagators.- Author:
- Pascal Parraud
-
-
Field Summary
-
Fields inherited from interface org.orekit.propagation.Propagator
DEFAULT_MASS
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected AbstractMatricesHarvestercreateHarvester(String stmName, RealMatrix initialStm, DoubleArrayDictionary initialJacobianColumns)Create the harvester suitable for propagator.FramegetECEF()Gets the Earth Centered Earth Fixed frame used to propagate GNSS orbits according to the Interface Control Document.FramegetECI()Gets the Earth Centered Inertial frame used to propagate the orbit.FramegetFrame()Get the frame in which the orbit is propagated.protected List<String>getJacobiansColumnsNames()Get the names of the parameters in the matrix returned byMatricesHarvester.getParametersJacobian(org.orekit.propagation.SpacecraftState).protected doublegetMass(AbsoluteDate date)Get the mass.doublegetMU()Gets the Earth gravity coefficient used for GNSS propagation.GNSSOrbitalElements<?>getOrbitalElements()Get the underlying GNSS propagation orbital elements.PVCoordinatespropagateInEcef(AbsoluteDate date)Gets the PVCoordinates of the GNSS SV inECEF frame.OrbitpropagateOrbit(AbsoluteDate date)Extrapolate an orbit up to a specific target date.voidresetInitialState(SpacecraftState state)Reset the propagator initial state.protected voidresetIntermediateState(SpacecraftState state, boolean forward)Reset an intermediate state.-
Methods inherited from class org.orekit.propagation.analytical.AbstractAnalyticalPropagator
acceptStep, addEventDetector, basicPropagate, clearEventsDetectors, getEphemerisGenerator, getEventDetectors, getPvProvider, propagate
-
Methods inherited from class org.orekit.propagation.AbstractPropagator
addAdditionalDataProvider, getAdditionalDataProviders, getAttitudeProvider, getHarvester, getInitialState, getManagedAdditionalData, getMultiplexer, getStartDate, initializeAdditionalData, initializePropagation, isAdditionalDataManaged, propagate, setAttitudeProvider, setStartDate, setupMatricesComputation, stateChanged, updateAdditionalData, updateUnmanagedData
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.Propagator
clearStepHandlers, getPosition, getPVCoordinates, setStepHandler, setStepHandler
-
-
-
-
Method Detail
-
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 GNSS orbits according to the Interface Control Document.- Returns:
- the ECEF frame
-
getMU
public double getMU()
Gets the Earth gravity coefficient used for GNSS propagation.- Returns:
- the Earth gravity coefficient.
-
getOrbitalElements
public GNSSOrbitalElements<?> getOrbitalElements()
Get the underlying GNSS propagation orbital elements.- Returns:
- the underlying GNSS orbital elements
- Since:
- 13.0
-
createHarvester
protected AbstractMatricesHarvester createHarvester(String stmName, RealMatrix initialStm, DoubleArrayDictionary initialJacobianColumns)
Create the harvester suitable for propagator.- Overrides:
createHarvesterin classAbstractPropagator- Parameters:
stmName- State Transition Matrix state nameinitialStm- initial State Transition Matrix ∂Y/∂Y₀, if null (which is the most frequent case), assumed to be 6x6 identityinitialJacobianColumns- initial columns of the Jacobians matrix with respect to parameters, if null or if some selected parameters are missing from the dictionary, the corresponding initial column is assumed to be 0- Returns:
- harvester to retrieve computed matrices during and after propagation
- Since:
- 13.0
-
getJacobiansColumnsNames
protected List<String> getJacobiansColumnsNames()
Get the names of the parameters in the matrix returned byMatricesHarvester.getParametersJacobian(org.orekit.propagation.SpacecraftState).- Overrides:
getJacobiansColumnsNamesin classAbstractAnalyticalPropagator- Returns:
- names of the parameters (i.e. columns) of the Jacobian matrix
- Since:
- 13.0
-
propagateOrbit
public Orbit propagateOrbit(AbsoluteDate date)
Extrapolate an orbit up to a specific target date.- Specified by:
propagateOrbitin classAbstractAnalyticalPropagator- Parameters:
date- target date for the orbit- Returns:
- extrapolated parameters
-
propagateInEcef
public PVCoordinates propagateInEcef(AbsoluteDate date)
Gets the PVCoordinates of the GNSS SV inECEF frame.The algorithm uses automatic differentiation to compute velocity and acceleration.
- Parameters:
date- the computation date- Returns:
- the GNSS SV PVCoordinates in
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:
getFramein interfacePropagator- Overrides:
getFramein classAbstractPropagator- Returns:
- frame in which the orbit is propagated
- See Also:
Propagator.resetInitialState(SpacecraftState)
-
getMass
protected double getMass(AbsoluteDate date)
Get the mass.- Specified by:
getMassin classAbstractAnalyticalPropagator- Parameters:
date- target date for the orbit- Returns:
- mass mass
-
resetInitialState
public void resetInitialState(SpacecraftState state)
Reset the propagator initial state.- Specified by:
resetInitialStatein interfacePropagator- Overrides:
resetInitialStatein classAbstractPropagator- Parameters:
state- new initial state to consider
-
resetIntermediateState
protected void resetIntermediateState(SpacecraftState state, boolean forward)
Reset an intermediate state.- Specified by:
resetIntermediateStatein classAbstractAnalyticalPropagator- Parameters:
state- new intermediate state to considerforward- if true, the intermediate state is valid for propagations after itself
-
-