T
- interpolated time stamped type
public abstract class AbstractTimeInterpolator<T extends TimeStamped> extends Object implements TimeInterpolator<T>
Modifier and Type | Class and Description |
---|---|
class |
AbstractTimeInterpolator.InterpolationData
用于存储插值数据的嵌套类。
|
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULT_EXTRAPOLATION_THRESHOLD_SEC
默认的外推时间阈值:1毫秒。
|
static int |
DEFAULT_INTERPOLATION_POINTS
默认的插值点数。
|
Constructor and Description |
---|
AbstractTimeInterpolator(int interpolationPoints, double extrapolationThreshold)
构造函数。
|
Modifier and Type | Method and Description |
---|---|
protected void |
addOptionalSubInterpolatorIfDefined(TimeInterpolator<? extends TimeStamped> subInterpolator, List<TimeInterpolator<? extends TimeStamped>> subInterpolators)
将所有最低级别的子插值器添加到子插值器列表中。
|
static void |
checkInterpolatorCompatibilityWithSampleSize(TimeInterpolator<? extends TimeStamped> interpolator, int sampleSize)
检查给定插值器是否与给定样本大小兼容的方法。
|
static <T extends TimeStamped> |
getCentralDate(AbsoluteDate date, ImmutableTimeStampedCache<T> cachedSamples, double threshold)
获取用于查找邻居的中心日期,同时考虑外推阈值。
|
double |
getExtrapolationThreshold()
获取外推阈值。
|
int |
getNbInterpolationPoints()
获取插值点数。
|
List<TimeInterpolator<? extends TimeStamped>> |
getSubInterpolators()
获取此实例实现的所有最低级别的插值器,否则返回仅包含此实例的列表。
|
protected double |
getTimeParameter(AbsoluteDate interpolatingTime, AbsoluteDate previousDate, AbsoluteDate nextDate)
通过将插值时间与前一个日期之间的差异归一化为表格值之间的Δt,获取介于[0:1]之间的时间参数。
|
T |
interpolate(AbsoluteDate interpolationDate, Collection<T> sample)
获取插值的实例。
|
T |
interpolate(AbsoluteDate interpolationDate, Stream<T> sample)
获取插值的实例。
|
protected abstract T |
interpolate(AbstractTimeInterpolator.InterpolationData interpolationData)
从给定的插值数据插值实例。
|
public static final double DEFAULT_EXTRAPOLATION_THRESHOLD_SEC
public static final int DEFAULT_INTERPOLATION_POINTS
public AbstractTimeInterpolator(int interpolationPoints, double extrapolationThreshold)
interpolationPoints
- 插值点数
extrapolationThreshold
- 超出此阈值将导致传播失败
public static void checkInterpolatorCompatibilityWithSampleSize(TimeInterpolator<? extends TimeStamped> interpolator, int sampleSize)
interpolator
- 插值器
sampleSize
- 样本大小
public T interpolate(AbsoluteDate interpolationDate, Stream<T> sample)
插值
在接口 TimeInterpolator<T extends TimeStamped>
interpolationDate
- 插值日期
sample
- 时间戳样本
TimeStamped
, AbsoluteDate
public T interpolate(AbsoluteDate interpolationDate, Collection<T> sample)
插值
在接口 TimeInterpolator<T extends TimeStamped>
interpolationDate
- 插值日期
sample
- 时间戳样本
public static <T extends TimeStamped> AbsoluteDate getCentralDate(AbsoluteDate date, ImmutableTimeStampedCache<T> cachedSamples, double threshold)
T
- 元素类型
date
- 插值日期
cachedSamples
- 缓存的样本
threshold
- 外推阈值
public List<TimeInterpolator<? extends TimeStamped>> getSubInterpolators()
例如,太空船状态插值器可以为其每个属性(轨道、绝对位置-速度-加速度坐标、质量等)使用不同的插值器。在这种情况下,它将返回所有这些插值器的列表(或者如果它们要使用多个插值器自身的所有子插值器)。
getSubInterpolators
在接口 TimeInterpolator<T extends TimeStamped>
public int getNbInterpolationPoints()
getNbInterpolationPoints
在接口 TimeInterpolator<T extends TimeStamped>
public double getExtrapolationThreshold()
getExtrapolationThreshold
在接口 TimeInterpolator<T extends TimeStamped>
protected void addOptionalSubInterpolatorIfDefined(TimeInterpolator<? extends TimeStamped> subInterpolator, List<TimeInterpolator<? extends TimeStamped>> subInterpolators)
subInterpolator
- 要添加的可选子插值器
subInterpolators
- 子插值器列表
protected abstract T interpolate(AbstractTimeInterpolator.InterpolationData interpolationData)
interpolationData
- 插值数据
protected double getTimeParameter(AbsoluteDate interpolatingTime, AbsoluteDate previousDate, AbsoluteDate nextDate)
interpolatingTime
- 我们要在其中插值值的时间(在前一个和下一个表格日期之间)
previousDate
- 前一个表格值日期
nextDate
- 下一个表格值日期
Copyright © 2002-2023 CS GROUP. All rights reserved.