Package org.orekit.files.iirv
Class IIRVSegment
- java.lang.Object
-
- org.orekit.files.iirv.IIRVSegment
-
- All Implemented Interfaces:
EphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
public class IIRVSegment extends Object implements EphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
Ephemeris segment from an IIRV file. Each IIRV file (i.e.IIRVMessage
) is defined as containing only oneIIRVSegment
.- Since:
- 13.0
- Author:
- Nick LaFarge
-
-
Constructor Summary
Constructors Constructor Description IIRVSegment(double mu, int interpolationSamples, int startYear, IIRVMessage iirvMessage)
Constructs aIIRVSegment
instance.IIRVSegment(int startYear, IIRVMessage iirvMessage)
Constructs aIIRVSegment
instance with default values.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CartesianDerivativesFilter
getAvailableDerivatives()
Get which derivatives of position are available in this ephemeris segment.List<TimeStampedPVCoordinates>
getCoordinates()
Get the coordinates for this ephemeris segment inEphemerisFile.EphemerisSegment.getFrame()
.Frame
getFrame()
Get the reference frame for this ephemeris segment.IIRVMessage
getIIRVMessage()
Gets the IIRV message for this segment.int
getInterpolationSamples()
Get the number of samples to use in interpolation.double
getMu()
Get the standard gravitational parameter for the satellite.AbsoluteDate
getStart()
Get the start date of this ephemeris segment.int
getStartYear()
Gets the start year for this segment.AbsoluteDate
getStop()
Get the end date of this ephemeris segment.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.files.general.EphemerisFile.EphemerisSegment
getInertialFrame, getPropagator, getPropagator
-
-
-
-
Constructor Detail
-
IIRVSegment
public IIRVSegment(int startYear, IIRVMessage iirvMessage)
Constructs aIIRVSegment
instance with default values.Default gravitational parameter is
Constants.IERS96_EARTH_MU
. Default number of interpolation samples is 7.- Parameters:
startYear
- Year associated with the beginning of the IIRV messageiirvMessage
- IIRV message consisting of sequentialIIRVVector
instances, sorted bySequenceNumberTerm
.
-
IIRVSegment
public IIRVSegment(double mu, int interpolationSamples, int startYear, IIRVMessage iirvMessage)
Constructs aIIRVSegment
instance.- Parameters:
mu
- gravitational parameter (m^3/s^2)interpolationSamples
- number of samples to use in interpolationstartYear
- Year associated with the beginning of the IIRV messageiirvMessage
- IIRV message consisting of sequentialIIRVVector
instances, sorted bySequenceNumberTerm
.
-
-
Method Detail
-
getMu
public double getMu()
Get the standard gravitational parameter for the satellite.- Specified by:
getMu
in interfaceEphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
- Returns:
- the gravitational parameter used in
EphemerisFile.EphemerisSegment.getPropagator(AttitudeProvider)
, in m³/s².
-
getFrame
@DefaultDataContext public Frame getFrame()
Get the reference frame for this ephemeris segment. The defining frame forEphemerisFile.EphemerisSegment.getCoordinates()
.- Specified by:
getFrame
in interfaceEphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
- Returns:
- the reference frame for this segment. Never
null
.
-
getInterpolationSamples
public int getInterpolationSamples()
Get the number of samples to use in interpolation.- Specified by:
getInterpolationSamples
in interfaceEphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
- Returns:
- the number of points to use for interpolation.
-
getAvailableDerivatives
public CartesianDerivativesFilter getAvailableDerivatives()
Get which derivatives of position are available in this ephemeris segment.While
EphemerisFile.EphemerisSegment.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.- Specified by:
getAvailableDerivatives
in interfaceEphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
- Returns:
- a value indicating if the file contains velocity and/or acceleration data.
-
getStart
public AbsoluteDate getStart()
Get the start date of this ephemeris segment.The date returned by this method is equivalent to
getPropagator().getMinDate()
.- Specified by:
getStart
in interfaceEphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
- Returns:
- ephemeris segment start date.
-
getStop
public AbsoluteDate getStop()
Get the end date of this ephemeris segment.The date returned by this method is equivalent to
getPropagator().getMaxDate()
.- Specified by:
getStop
in interfaceEphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
- Returns:
- ephemeris segment end date.
-
getCoordinates
public List<TimeStampedPVCoordinates> getCoordinates()
Get the coordinates for this ephemeris segment inEphemerisFile.EphemerisSegment.getFrame()
.- Specified by:
getCoordinates
in interfaceEphemerisFile.EphemerisSegment<TimeStampedPVCoordinates>
- Returns:
- a list of state vectors in chronological order. The coordinates are not
necessarily evenly spaced in time. The value of
EphemerisFile.EphemerisSegment.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.
-
getIIRVMessage
public IIRVMessage getIIRVMessage()
Gets the IIRV message for this segment.- Returns:
- IIRV message for this segment
-
getStartYear
public int getStartYear()
Gets the start year for this segment.- Returns:
- start year for this segment.
-
-