Interface EphemerisFile.EphemerisSegment<C extends TimeStampedPVCoordinates>
-
- Type Parameters:
C
- type of the Cartesian coordinates
- All Known Implementing Classes:
CPF.CPFEphemeris
,OemSegment
,OrekitEphemerisFile.OrekitEphemerisSegment
,SP3Segment
,STKEphemerisFile.STKEphemerisSegment
,TrajectoryStateHistory
- Enclosing interface:
- EphemerisFile<C extends TimeStampedPVCoordinates,S extends EphemerisFile.EphemerisSegment<C>>
public static interface EphemerisFile.EphemerisSegment<C extends TimeStampedPVCoordinates>
A segment of an ephemeris for a satellite.Segments are typically used to split an ephemeris around discontinuous events such as maneuvers.
- Author:
- Evan Ward
- See Also:
EphemerisFile
,EphemerisFile.SatelliteEphemeris
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description CartesianDerivativesFilter
getAvailableDerivatives()
Get which derivatives of position are available in this ephemeris segment.List<C>
getCoordinates()
Get the coordinates for this ephemeris segment ingetFrame()
.Frame
getFrame()
Get the reference frame for this ephemeris segment.default Frame
getInertialFrame()
Get the inertial reference frame for this ephemeris segment.int
getInterpolationSamples()
Get the number of samples to use in interpolation.double
getMu()
Get the standard gravitational parameter for the satellite.default BoundedPropagator
getPropagator()
View this ephemeris segment as a propagator.default BoundedPropagator
getPropagator(AttitudeProvider attitudeProvider)
View this ephemeris segment as a propagator.AbsoluteDate
getStart()
Get the start date of this ephemeris segment.AbsoluteDate
getStop()
Get the end date of this ephemeris segment.
-
-
-
Method Detail
-
getMu
double getMu()
Get the standard gravitational parameter for the satellite.- Returns:
- the gravitational parameter used in
getPropagator(AttitudeProvider)
, in m³/s².
-
getFrame
Frame getFrame()
Get the reference frame for this ephemeris segment. The defining frame forgetCoordinates()
.- Returns:
- the reference frame for this segment. Never
null
.
-
getInertialFrame
default Frame getInertialFrame()
Get the inertial reference frame for this ephemeris segment. Defines the propagation frame forgetPropagator(AttitudeProvider)
.The default implementation returns
getFrame()
if it is inertial. Otherwise it returnsFrame.getRoot()
. Implementors are encouraged to override this default implementation if a more suitable inertial frame is available.- Returns:
- an reference frame that is inertial, i.e.
Frame.isPseudoInertial()
istrue
. May be the same asgetFrame()
if it is inertial.
-
getInterpolationSamples
int getInterpolationSamples()
Get the number of samples to use in interpolation.- Returns:
- the number of points to use for interpolation.
-
getAvailableDerivatives
CartesianDerivativesFilter getAvailableDerivatives()
Get which derivatives of position are available in this ephemeris segment.While
getCoordinates()
always returns position, velocity, and acceleration the return value from this method indicates which of those are in the ephemeris file and are actually valid.- Returns:
- a value indicating if the file contains velocity and/or acceleration data.
-
getCoordinates
List<C> getCoordinates()
Get the coordinates for this ephemeris segment ingetFrame()
.- Returns:
- a list of state vectors in chronological order. The coordinates are not
necessarily evenly spaced in time. The value of
getAvailableDerivatives()
indicates if the velocity or accelerations were specified in the file. Any position, velocity, or acceleration coordinates that are not specified in the ephemeris file are zero in the returned values.
-
getStart
AbsoluteDate getStart()
Get the start date of this ephemeris segment.The date returned by this method is equivalent to
getPropagator().getMinDate()
.- Returns:
- ephemeris segment start date.
-
getStop
AbsoluteDate getStop()
Get the end date of this ephemeris segment.The date returned by this method is equivalent to
getPropagator().getMaxDate()
.- Returns:
- ephemeris segment end date.
-
getPropagator
default BoundedPropagator getPropagator()
View this ephemeris segment as a propagator.In order to view the ephemeris for this satellite as a
Propagator
several conditions must be met. An OrekitFrame
must be constructable from the frame specification in the ephemeris file. This condition is met whengetFrame()
return normally. Additionally,getMu()
must return a valid value. If these conditions are not met anOrekitException
may be thrown by this method or by one of the methods of the returnedPropagator
.The
attitude provider
used is aFrameAlignedProvider
aligned with theinertial frame
Each call to this method creates a new propagator.
- Returns:
- a propagator for this ephemeris segment.
-
getPropagator
default BoundedPropagator getPropagator(AttitudeProvider attitudeProvider)
View this ephemeris segment as a propagator.In order to view the ephemeris for this satellite as a
Propagator
several conditions must be met. An OrekitFrame
must be constructable from the frame specification in the ephemeris file. This condition is met whengetFrame()
return normally. Additionally,getMu()
must return a valid value. If these conditions are not met anOrekitException
may be thrown by this method or by one of the methods of the returnedPropagator
.Each call to this method creates a new propagator.
- Parameters:
attitudeProvider
- provider for attitude computation- Returns:
- a propagator for this ephemeris segment.
- Since:
- 12.0
-
-