Class SP3Segment
- All Implemented Interfaces:
EphemerisFile.EphemerisSegment<SP3Coordinate>
SP3Ephemeris.- Since:
- 12.0
- Author:
- Thomas Neidhart, Evan Ward, Luc Maisonobe
-
Constructor Summary
ConstructorsConstructorDescriptionSP3Segment(double mu, Frame frame, int interpolationSamples, CartesianDerivativesFilter filter) Simple constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCoordinate(SP3Coordinate coord) Adds a new P/V coordinate.Extract the clock model.Get which derivatives of position are available in this ephemeris segment.Get the coordinates for this ephemeris segment inEphemerisFile.EphemerisSegment.getFrame().getFrame()Get the reference frame for this ephemeris segment.intGet the number of samples to use in interpolation.doublegetMu()Get the standard gravitational parameter for the satellite.View this ephemeris segment as a propagator.getPropagator(AttitudeProvider attitudeProvider) View this ephemeris segment as a propagator.getStart()Get the start date of this ephemeris segment.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, waitMethods inherited from interface org.orekit.files.general.EphemerisFile.EphemerisSegment
getInertialFrame
-
Constructor Details
-
SP3Segment
public SP3Segment(double mu, Frame frame, int interpolationSamples, CartesianDerivativesFilter filter) Simple constructor.- Parameters:
mu- standard gravitational parameter to use for creatingOrbitsfrom the ephemeris data.frame- reference frameinterpolationSamples- number of points to use for interpolationfilter- available derivatives
-
-
Method Details
-
extractClockModel
Extract the clock model.If some clock or clock rate are present in the SP3 files as default values (999999.999999), then they filtered out here when building the clock model, so interpolation will work if at least there are some remaining regular values.
- Returns:
- extracted clock model
- Since:
- 12.1
-
getMu
public double getMu()Get the standard gravitational parameter for the satellite.- Specified by:
getMuin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Returns:
- the gravitational parameter used in
EphemerisFile.EphemerisSegment.getPropagator(AttitudeProvider), in m³/s².
-
getStart
Get the start date of this ephemeris segment.The date returned by this method is equivalent to
getPropagator().getMinDate().- Specified by:
getStartin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Returns:
- ephemeris segment start date.
-
getStop
Get the end date of this ephemeris segment.The date returned by this method is equivalent to
getPropagator().getMaxDate().- Specified by:
getStopin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Returns:
- ephemeris segment end date.
-
getFrame
Get the reference frame for this ephemeris segment. The defining frame forEphemerisFile.EphemerisSegment.getCoordinates().- Specified by:
getFramein interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Returns:
- the reference frame for this segment. Never
null.
-
getInterpolationSamples
public int getInterpolationSamples()Get the number of samples to use in interpolation.- Specified by:
getInterpolationSamplesin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Returns:
- the number of points to use for interpolation.
-
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:
getAvailableDerivativesin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Returns:
- a value indicating if the file contains velocity and/or acceleration data.
-
getCoordinates
Get the coordinates for this ephemeris segment inEphemerisFile.EphemerisSegment.getFrame().- Specified by:
getCoordinatesin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- 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.
-
addCoordinate
Adds a new P/V coordinate.- Parameters:
coord- the P/V coordinate of the satellite
-
getPropagator
View this ephemeris segment as a propagator.In order to view the ephemeris for this satellite as a
Propagatorseveral conditions must be met. An OrekitFramemust be constructable from the frame specification in the ephemeris file. This condition is met whenEphemerisFile.EphemerisSegment.getFrame()return normally. Additionally,EphemerisFile.EphemerisSegment.getMu()must return a valid value. If these conditions are not met anOrekitExceptionmay be thrown by this method or by one of the methods of the returnedPropagator.The
attitude providerused is aFrameAlignedProvideraligned with theinertial frameEach call to this method creates a new propagator.
- Specified by:
getPropagatorin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Returns:
- a propagator for this ephemeris segment.
-
getPropagator
View this ephemeris segment as a propagator.In order to view the ephemeris for this satellite as a
Propagatorseveral conditions must be met. An OrekitFramemust be constructable from the frame specification in the ephemeris file. This condition is met whenEphemerisFile.EphemerisSegment.getFrame()return normally. Additionally,EphemerisFile.EphemerisSegment.getMu()must return a valid value. If these conditions are not met anOrekitExceptionmay be thrown by this method or by one of the methods of the returnedPropagator.Each call to this method creates a new propagator.
- Specified by:
getPropagatorin interfaceEphemerisFile.EphemerisSegment<SP3Coordinate>- Parameters:
attitudeProvider- provider for attitude computation- Returns:
- a propagator for this ephemeris segment.
-