Package org.orekit.files.general
Class EphemerisSegmentPropagator<C extends TimeStampedPVCoordinates>
- java.lang.Object
-
- org.orekit.propagation.AbstractPropagator
-
- org.orekit.propagation.analytical.AbstractAnalyticalPropagator
-
- org.orekit.files.general.EphemerisSegmentPropagator<C>
-
- Type Parameters:
C
- type of the Cartesian coordinates
- All Implemented Interfaces:
BoundedPropagator
,Propagator
,PVCoordinatesProvider
public class EphemerisSegmentPropagator<C extends TimeStampedPVCoordinates> extends AbstractAnalyticalPropagator implements BoundedPropagator
APropagator
based on aEphemerisFile.EphemerisSegment
.The
getPVCoordinates(AbsoluteDate, Frame)
is implemented without using theAbstractPropagator.propagate(AbsoluteDate)
methods so using this class as aPVCoordinatesProvider
still behaves as expected when the ephemeris file did not have a valid gravitational parameter.- Author:
- Evan Ward
-
-
Field Summary
-
Fields inherited from interface org.orekit.propagation.Propagator
DEFAULT_MASS
-
-
Constructor Summary
Constructors Constructor Description EphemerisSegmentPropagator(EphemerisFile.EphemerisSegment<C> ephemeris, AttitudeProvider attitudeProvider)
Create aPropagator
from an ephemeris segment.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SpacecraftState
getInitialState()
Get the propagator initial state.protected double
getMass(AbsoluteDate date)
Get the mass.AbsoluteDate
getMaxDate()
Get the last date of the range.AbsoluteDate
getMinDate()
Get the first date of the range.Vector3D
getPosition(AbsoluteDate date, Frame frame)
Get the position of the body in the selected frame.TimeStampedPVCoordinates
getPVCoordinates(AbsoluteDate date, Frame frame)
Get thePVCoordinates
of the body in the selected 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, getEphemerisGenerator, getEventDetectors, getJacobiansColumnsNames, getPvProvider, propagate
-
Methods inherited from class org.orekit.propagation.AbstractPropagator
addAdditionalStateProvider, createHarvester, getAdditionalStateProviders, getAttitudeProvider, getFrame, getHarvester, getManagedAdditionalStates, getMultiplexer, getStartDate, initializeAdditionalStates, initializePropagation, isAdditionalStateManaged, propagate, setAttitudeProvider, setStartDate, setupMatricesComputation, stateChanged, updateAdditionalStates, updateUnmanagedStates
-
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
addAdditionalStateProvider, addEventDetector, clearEventsDetectors, clearStepHandlers, getAdditionalStateProviders, getAttitudeProvider, getEphemerisGenerator, getEventDetectors, getFrame, getManagedAdditionalStates, getMultiplexer, isAdditionalStateManaged, propagate, propagate, setAttitudeProvider, setStepHandler, setStepHandler, setupMatricesComputation
-
-
-
-
Constructor Detail
-
EphemerisSegmentPropagator
public EphemerisSegmentPropagator(EphemerisFile.EphemerisSegment<C> ephemeris, AttitudeProvider attitudeProvider)
Create aPropagator
from an ephemeris segment.- Parameters:
ephemeris
- segment containing the data for this propagator.attitudeProvider
- provider for attitude computation
-
-
Method Detail
-
getPVCoordinates
public TimeStampedPVCoordinates getPVCoordinates(AbsoluteDate date, Frame frame)
Description copied from interface:Propagator
Get thePVCoordinates
of the body in the selected frame.- Specified by:
getPVCoordinates
in interfacePropagator
- Specified by:
getPVCoordinates
in interfacePVCoordinatesProvider
- Parameters:
date
- current dateframe
- the frame where to define the position- Returns:
- time-stamped position/velocity of the body (m and m/s)
-
getPosition
public Vector3D getPosition(AbsoluteDate date, Frame frame)
Description copied from interface:Propagator
Get the position of the body in the selected frame.- Specified by:
getPosition
in interfacePropagator
- Specified by:
getPosition
in interfacePVCoordinatesProvider
- Parameters:
date
- current dateframe
- the frame where to define the position- Returns:
- position of the body (m and)
-
propagateOrbit
protected Orbit propagateOrbit(AbsoluteDate date)
Description copied from class:AbstractAnalyticalPropagator
Extrapolate an orbit up to a specific target date.- Specified by:
propagateOrbit
in classAbstractAnalyticalPropagator
- Parameters:
date
- target date for the orbit- Returns:
- extrapolated parameters
-
getMinDate
public AbsoluteDate getMinDate()
Description copied from interface:BoundedPropagator
Get the first date of the range.- Specified by:
getMinDate
in interfaceBoundedPropagator
- Returns:
- the first date of the range
-
getMaxDate
public AbsoluteDate getMaxDate()
Description copied from interface:BoundedPropagator
Get the last date of the range.- Specified by:
getMaxDate
in interfaceBoundedPropagator
- Returns:
- the last date of the range
-
getMass
protected double getMass(AbsoluteDate date)
Description copied from class:AbstractAnalyticalPropagator
Get the mass.- Specified by:
getMass
in classAbstractAnalyticalPropagator
- Parameters:
date
- target date for the orbit- Returns:
- mass mass
-
getInitialState
public SpacecraftState getInitialState()
Description copied from class:AbstractPropagator
Get the propagator initial state.- Specified by:
getInitialState
in interfacePropagator
- Overrides:
getInitialState
in classAbstractPropagator
- Returns:
- initial state
-
resetIntermediateState
protected void resetIntermediateState(SpacecraftState state, boolean forward)
Description copied from class:AbstractAnalyticalPropagator
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
-
resetInitialState
public void resetInitialState(SpacecraftState state)
Description copied from class:AbstractPropagator
Reset the propagator initial state.- Specified by:
resetInitialState
in interfacePropagator
- Overrides:
resetInitialState
in classAbstractPropagator
- Parameters:
state
- new initial state to consider
-
-