fr.cnes.sirius.patrius.propagation
Class PVCoordinatePropagator

java.lang.Object
  extended by org.orekit.propagation.AbstractPropagator
      extended by fr.cnes.sirius.patrius.propagation.PVCoordinatePropagator
All Implemented Interfaces:
Serializable, Propagator, PVCoordinatesProvider

public class PVCoordinatePropagator
extends AbstractPropagator

This class is an analytical propagator which propagates states from the input PV, Attitude, and additional state provider.

It can handle events and all functionalities from extended AbstractPropagator class.

Warning: Events detector with EventDetector.Action.RESET_STATE should not be used with this propagator fed with a "precomputed" PV coordinate provider (such as an ephemeris or an orbit object). In particular, impulse maneuvers cannot be used. Otherwise propagation will fail. This is due to the fact that the provided PV coordinate provider is not valid any more after the EventDetector.Action.RESET_STATE action.

Since:
3.1
Version:
$Id: PVCoordinatePropagator.java 17585 2017-05-10 13:27:59Z bignon $
Author:
chabaudp
See Also:
Serialized Form
Concurrency :
not thread-safe
Concurrency comment :
extends the AbstractPropagator class

Field Summary
 
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
PVCoordinatePropagator(PVCoordinatesProvider pvCoordProvider, AbsoluteDate initDate, double mu, Frame frame)
          Creates an instance of PVCoordinatePropagator without attitude and additional state providers
PVCoordinatePropagator(PVCoordinatesProvider pvCoordProvider, AbsoluteDate initDate, double mu, Frame frame, AttitudeProvider attProviderForces, AttitudeProvider attProviderEvents, List<AdditionalStateProvider> additionalStateProviders)
          Creates an instance of PVCoordinatePropagator with PV, attitude for forces, attitude for events, and additional state providers given by the user.
 
Method Summary
protected  Orbit propagateOrbit(AbsoluteDate date)
          Extrapolate an orbit up to a specific target date.
 
Methods inherited from class org.orekit.propagation.AbstractPropagator
acceptStep, addAdditionalStateProvider, addAdditionalStateProvider, addEventDetector, basicPropagate, clearEventsDetectors, getAttitudeProvider, getAttitudeProviderEvents, getAttitudeProviderForces, getEventsDetectors, getFrame, getGeneratedEphemeris, getInitialState, getMode, getPVCoordinates, getPvProvider, manageStateFrame, propagate, propagate, resetInitialState, setAttitudeProvider, setAttitudeProviderEvents, setAttitudeProviderForces, setEphemerisMode, setMasterMode, setMasterMode, setOrbitFrame, setSlaveMode, setStartDate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PVCoordinatePropagator

public PVCoordinatePropagator(PVCoordinatesProvider pvCoordProvider,
                              AbsoluteDate initDate,
                              double mu,
                              Frame frame)
                       throws OrekitException
Creates an instance of PVCoordinatePropagator without attitude and additional state providers

Parameters:
pvCoordProvider - The position velocity coordinate provider used to propagate position velocity
initDate - reference date
mu - used for internal orbit parameter to convert orbital parameters type
frame - used to express the pv coordinates
Throws:
OrekitException - when a problem occurs in setting initial state
IllegalArgumentException - if frame is not pseudo inertial

PVCoordinatePropagator

public PVCoordinatePropagator(PVCoordinatesProvider pvCoordProvider,
                              AbsoluteDate initDate,
                              double mu,
                              Frame frame,
                              AttitudeProvider attProviderForces,
                              AttitudeProvider attProviderEvents,
                              List<AdditionalStateProvider> additionalStateProviders)
                       throws OrekitException
Creates an instance of PVCoordinatePropagator with PV, attitude for forces, attitude for events, and additional state providers given by the user.

Parameters:
pvCoordProvider - The position velocity coordinate provider used to propagate position velocity
initDate - reference date
mu - used for internal orbit parameter to convert orbital parameters type
frame - used to express the pv coordinates
attProviderForces - The attitude provider used to compute forces. Can be null.
attProviderEvents - The attitude provider used to compute events. Can be null.
additionalStateProviders - The additional state providers used to propagate additional states. Can be null.
Throws:
OrekitException - when a problem occurs in setting initial state
IllegalArgumentException - if frame is not pseudo inertial
Method Detail

propagateOrbit

protected Orbit propagateOrbit(AbsoluteDate date)
                        throws PropagationException
Extrapolate an orbit up to a specific target date.

Specified by:
propagateOrbit in class AbstractPropagator
Parameters:
date - target date for the orbit
Returns:
extrapolated parameters
Throws:
PropagationException - if some parameters are out of bounds


Copyright © 2017 CNES. All Rights Reserved.