Package org.orekit.frames
Class InterpolatingTransformProvider
- java.lang.Object
-
- org.orekit.frames.InterpolatingTransformProvider
-
- All Implemented Interfaces:
Serializable
,TransformProvider
public class InterpolatingTransformProvider extends Object implements TransformProvider
Transform provider using thread-safe interpolation on transforms sample.The interpolation is a polynomial Hermite interpolation, which can either use or ignore the derivatives provided by the raw provider. This means that simple raw providers that do not compute derivatives can be used, the derivatives will be added appropriately by the interpolation process.
- Author:
- Luc Maisonobe
- See Also:
GenericTimeStampedCache
,ShiftingTransformProvider
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description InterpolatingTransformProvider(TransformProvider rawProvider, CartesianDerivativesFilter cFilter, AngularDerivativesFilter aFilter, int gridPoints, double step, int maxSlots, double maxSpan, double newSlotInterval)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getGridPoints()
Get the number of interpolation grid points.TransformProvider
getRawProvider()
Get the underlying provider for raw (non-interpolated) transforms.double
getStep()
Get the grid points time step.Transform
getTransform(AbsoluteDate date)
Get theTransform
corresponding to specified date.<T extends CalculusFieldElement<T>>
FieldTransform<T>getTransform(FieldAbsoluteDate<T> date)
Get theFieldTransform
corresponding to specified date.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.frames.TransformProvider
getKinematicTransform, getKinematicTransform, getStaticTransform, getStaticTransform
-
-
-
-
Constructor Detail
-
InterpolatingTransformProvider
public InterpolatingTransformProvider(TransformProvider rawProvider, CartesianDerivativesFilter cFilter, AngularDerivativesFilter aFilter, int gridPoints, double step, int maxSlots, double maxSpan, double newSlotInterval)
Simple constructor.- Parameters:
rawProvider
- provider for raw (non-interpolated) transformscFilter
- filter for derivatives from the sample to use in interpolationaFilter
- filter for derivatives from the sample to use in interpolationgridPoints
- number of interpolation grid pointsstep
- grid points time stepmaxSlots
- maximum number of independent cached time slots in thetime-stamped cache
maxSpan
- maximum duration span in seconds of one slot in thetime-stamped cache
newSlotInterval
- time interval above which a new slot is created in thetime-stamped cache
- Since:
- 9.1
-
-
Method Detail
-
getRawProvider
public TransformProvider getRawProvider()
Get the underlying provider for raw (non-interpolated) transforms.- Returns:
- provider for raw (non-interpolated) transforms
-
getGridPoints
public int getGridPoints()
Get the number of interpolation grid points.- Returns:
- number of interpolation grid points
-
getStep
public double getStep()
Get the grid points time step.- Returns:
- grid points time step
-
getTransform
public Transform getTransform(AbsoluteDate date)
Get theTransform
corresponding to specified date.- Specified by:
getTransform
in interfaceTransformProvider
- Parameters:
date
- current date- Returns:
- transform at specified date
-
getTransform
public <T extends CalculusFieldElement<T>> FieldTransform<T> getTransform(FieldAbsoluteDate<T> date)
Get theFieldTransform
corresponding to specified date.- Specified by:
getTransform
in interfaceTransformProvider
- Type Parameters:
T
- type of the field elements- Parameters:
date
- current date- Returns:
- transform at specified date
-
-