Class AbstractStateCovarianceInterpolator
- java.lang.Object
-
- org.orekit.time.AbstractTimeInterpolator<TimeStampedPair<Orbit,StateCovariance>>
-
- org.orekit.propagation.covariance.AbstractStateCovarianceInterpolator
-
- All Implemented Interfaces:
TimeInterpolator<TimeStampedPair<Orbit,StateCovariance>>
- Direct Known Subclasses:
StateCovarianceBlender,StateCovarianceKeplerianHermiteInterpolator
public abstract class AbstractStateCovarianceInterpolator extends AbstractTimeInterpolator<TimeStampedPair<Orbit,StateCovariance>>
Abstract class for orbit and state covariance interpolator.- Author:
- Vincent Cucchietti
- See Also:
Orbit,StateCovariance,TimeStampedPair
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.orekit.time.AbstractTimeInterpolator
AbstractTimeInterpolator.InterpolationData
-
-
Field Summary
Fields Modifier and Type Field Description static intCOLUMN_DIMDefault column dimension for position-velocity state covariance.static PositionAngleTypeDEFAULT_POSITION_ANGLEDefault position angle for covariance expressed in Cartesian elements.static intROW_DIMDefault row dimension for position-velocity state covariance.-
Fields inherited from class org.orekit.time.AbstractTimeInterpolator
DEFAULT_EXTRAPOLATION_THRESHOLD_SEC, DEFAULT_INTERPOLATION_POINTS
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractStateCovarianceInterpolator(int interpolationPoints, double extrapolationThreshold, TimeInterpolator<Orbit> orbitInterpolator, Frame outFrame, OrbitType outOrbitType, PositionAngleType outPositionAngleType)Constructor.protectedAbstractStateCovarianceInterpolator(int interpolationPoints, double extrapolationThreshold, TimeInterpolator<Orbit> orbitInterpolator, LOFType outLOF)Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract StateCovariancecomputeInterpolatedCovarianceInOrbitFrame(List<TimeStampedPair<Orbit,StateCovariance>> uncertainStates, Orbit interpolatedOrbit)Compute the interpolated covariance expressed in the interpolated orbit frame.protected TimeStampedPair<Orbit,StateCovariance>expressCovarianceInDesiredOutput(Orbit interpolatedOrbit, StateCovariance covarianceInOrbitFrame)Express covariance in output configuration defined at this instance construction.TimeInterpolator<Orbit>getOrbitInterpolator()Get orbit interpolator.FramegetOutFrame()Get output frame.LOFTypegetOutLOF()Get output local orbital frame.OrbitTypegetOutOrbitType()Get output orbit type.PositionAngleTypegetOutPositionAngleType()Get output position angle type.List<TimeInterpolator<? extends TimeStamped>>getSubInterpolators()Get all lowest level interpolators implemented by this instance, otherwise return a list with this instance only.TimeStampedPair<Orbit,StateCovariance>interpolate(AbstractTimeInterpolator.InterpolationData interpolationData)Interpolate orbit and associated covariance.protected OrbitinterpolateOrbit(AbsoluteDate interpolationDate, List<TimeStampedPair<Orbit,StateCovariance>> neighborList)Interpolate orbit at given interpolation date.-
Methods inherited from class org.orekit.time.AbstractTimeInterpolator
addOptionalSubInterpolatorIfDefined, checkInterpolatorCompatibilityWithSampleSize, getCentralDate, getCentralDate, getExtrapolationThreshold, getNbInterpolationPoints, getTimeParameter, interpolate, interpolate
-
-
-
-
Field Detail
-
DEFAULT_POSITION_ANGLE
public static final PositionAngleType DEFAULT_POSITION_ANGLE
Default position angle for covariance expressed in Cartesian elements.
-
COLUMN_DIM
public static final int COLUMN_DIM
Default column dimension for position-velocity state covariance.- See Also:
- Constant Field Values
-
ROW_DIM
public static final int ROW_DIM
Default row dimension for position-velocity state covariance.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AbstractStateCovarianceInterpolator
protected AbstractStateCovarianceInterpolator(int interpolationPoints, double extrapolationThreshold, TimeInterpolator<Orbit> orbitInterpolator, LOFType outLOF)Constructor.- Parameters:
interpolationPoints- number of interpolation pointsextrapolationThreshold- extrapolation threshold beyond which the propagation will failorbitInterpolator- orbit interpolatoroutLOF- local orbital frame- See Also:
Frame,OrbitType,PositionAngleType
-
AbstractStateCovarianceInterpolator
protected AbstractStateCovarianceInterpolator(int interpolationPoints, double extrapolationThreshold, TimeInterpolator<Orbit> orbitInterpolator, Frame outFrame, OrbitType outOrbitType, PositionAngleType outPositionAngleType)Constructor.- Parameters:
interpolationPoints- number of interpolation pointsextrapolationThreshold- extrapolation threshold beyond which the propagation will failorbitInterpolator- orbit interpolatoroutFrame- desired output covariance frameoutPositionAngleType- desired output position angleoutOrbitType- desired output orbit type- See Also:
Frame,OrbitType,PositionAngleType
-
-
Method Detail
-
interpolate
public TimeStampedPair<Orbit,StateCovariance> interpolate(AbstractTimeInterpolator.InterpolationData interpolationData)
Interpolate orbit and associated covariance.- Specified by:
interpolatein classAbstractTimeInterpolator<TimeStampedPair<Orbit,StateCovariance>>- Parameters:
interpolationData- interpolation data- Returns:
- interpolated orbit and associated covariance
-
getOutFrame
public Frame getOutFrame()
Get output frame.- Returns:
- output frame. Can be null.
-
getOutLOF
public LOFType getOutLOF()
Get output local orbital frame.- Returns:
- output local orbital frame. Can be null.
-
getOutOrbitType
public OrbitType getOutOrbitType()
Get output orbit type.- Returns:
- output orbit type.
-
getOutPositionAngleType
public PositionAngleType getOutPositionAngleType()
Get output position angle type.- Returns:
- output position angle.
-
getOrbitInterpolator
public TimeInterpolator<Orbit> getOrbitInterpolator()
Get orbit interpolator.- Returns:
- orbit interpolator.
-
getSubInterpolators
public List<TimeInterpolator<? extends TimeStamped>> getSubInterpolators()
Description copied from class:AbstractTimeInterpolatorGet all lowest level interpolators implemented by this instance, otherwise return a list with this instance only.An example would be the spacecraft state interpolator which can use different interpolators for each of its attributes (orbit, absolute position-velocity-acceleration coordinates, mass...). In this case, it would return the list of all of these interpolators (or possibly all of their sub-interpolators if they were to use multiple interpolators themselves).
- Specified by:
getSubInterpolatorsin interfaceTimeInterpolator<TimeStampedPair<Orbit,StateCovariance>>- Overrides:
getSubInterpolatorsin classAbstractTimeInterpolator<TimeStampedPair<Orbit,StateCovariance>>- Returns:
- list of interpolators
-
interpolateOrbit
protected Orbit interpolateOrbit(AbsoluteDate interpolationDate, List<TimeStampedPair<Orbit,StateCovariance>> neighborList)
Interpolate orbit at given interpolation date.- Parameters:
interpolationDate- interpolation dateneighborList- neighbor list- Returns:
- interpolated orbit
-
computeInterpolatedCovarianceInOrbitFrame
protected abstract StateCovariance computeInterpolatedCovarianceInOrbitFrame(List<TimeStampedPair<Orbit,StateCovariance>> uncertainStates, Orbit interpolatedOrbit)
Compute the interpolated covariance expressed in the interpolated orbit frame.- Parameters:
uncertainStates- list of orbits and associated covariancesinterpolatedOrbit- interpolated orbit- Returns:
- interpolated covariance expressed in the interpolated orbit frame
-
expressCovarianceInDesiredOutput
protected TimeStampedPair<Orbit,StateCovariance> expressCovarianceInDesiredOutput(Orbit interpolatedOrbit, StateCovariance covarianceInOrbitFrame)
Express covariance in output configuration defined at this instance construction.- Parameters:
interpolatedOrbit- interpolated orbitcovarianceInOrbitFrame- covariance expressed in interpolated orbit frame- Returns:
- covariance in desired output configuration
-
-