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 intgetGridPoints()Get the number of interpolation grid points.TransformProvidergetRawProvider()Get the underlying provider for raw (non-interpolated) transforms.doublegetStep()Get the grid points time step.TransformgetTransform(AbsoluteDate date)Get theTransformcorresponding to specified date.<T extends CalculusFieldElement<T>>
FieldTransform<T>getTransform(FieldAbsoluteDate<T> date)Get theFieldTransformcorresponding 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 cachemaxSpan- maximum duration span in seconds of one slot in thetime-stamped cachenewSlotInterval- 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 theTransformcorresponding to specified date.- Specified by:
getTransformin interfaceTransformProvider- Parameters:
date- current date- Returns:
- transform at specified date
-
getTransform
public <T extends CalculusFieldElement<T>> FieldTransform<T> getTransform(FieldAbsoluteDate<T> date)
Get theFieldTransformcorresponding to specified date.- Specified by:
getTransformin interfaceTransformProvider- Type Parameters:
T- type of the field elements- Parameters:
date- current date- Returns:
- transform at specified date
-
-