public class EphemerisPvLagrange extends AbstractBoundedPVProvider
This class extends AbstractBoundedPVProvider
which implements
PVCoordinatesProvider
and so provides a position velocity for a
given date. The provided position velocity is based on a Lagrange interpolation in a given position velocity
ephemeris. Tabulated entries are chronologically classified.
The interpolation extracts points from the ephemeris depending on the polynome order and the date to interpolate. Points extraction is based on an implementation of the ISearchIndex interface. This implementation should be based on a table of duration created from the date table with the duration = 0 at the first index.
polyOrder, tDate, tPVCoord
Constructor and Description |
---|
EphemerisPvLagrange(PVCoordinates[] tabPV,
int order,
Frame frame,
AbsoluteDate[] tabDate,
ISearchIndex algo)
Creates an instance of EphemerisPvLagrange
|
EphemerisPvLagrange(SpacecraftState[] tabState,
int order,
ISearchIndex algo)
Creates an instance of EphemerisPvLagrange from a spacecraftstate list
|
Modifier and Type | Method and Description |
---|---|
PVCoordinates |
getPVCoordinates(AbsoluteDate date,
Frame frame)
Frame can be null : by default the frame of expression is the frame used at instantiation
(which is the frame of the first spacecraft state when instantiation is done from a table of spacecraft states).
|
checkBounds, getDateRef, getFrame, getMaxDate, getMinDate, getPreviousIndex, getSearchIndex, indexValidity, setPreviousIndex
public EphemerisPvLagrange(PVCoordinates[] tabPV, int order, Frame frame, AbsoluteDate[] tabDate, ISearchIndex algo)
tabPV
- position velocity coordinates tableorder
- interpolation orderframe
- coordinates expression frametabDate
- table of dates for each position velocityalgo
- class to find the nearest date index from a given date in the date table.
(If null, algo will be BinarySearchIndexOpenClosed
by default
based on a table of duration since the first date of the dates table)IllegalArgumentException
- if parameters are not consistent,
see AbstractBoundedPVProvider
.public EphemerisPvLagrange(SpacecraftState[] tabState, int order, ISearchIndex algo)
tabState
- Spacecraftstate listorder
- lagrange polynome orderalgo
- class to find the nearest date index from a given date in the date table
(If null, algo will be BinarySearchIndexOpenClosed
by default
based on a table of duration since the first date of the dates table)IllegalArgumentException
- if parameters are not consistent,
see AbstractBoundedPVProvider
.public PVCoordinates getPVCoordinates(AbsoluteDate date, Frame frame) throws PatriusException
date
- date of interpolationframe
- frame of coordinates expression. (can be null)PatriusException
- if date of interpolation is too near from min and max input dates
compare to Lagrange orderCopyright © 2020 CNES. All rights reserved.