public class IntegratedEphemeris extends AbstractAnalyticalPropagator implements BoundedPropagator
当调用getEphemerisGenerator
方法时,将自动构建此类的实例。它们在传播结束时创建。之后可以通过此对象随机访问传播范围内的轨道任何中间状态。
典型用例是用于数值积分轨道,可供需要根据其自身算法四处移动而无需与积分器紧密链接的算法使用。
由于此类实现了Propagator
接口,因此它本身可以在批处理模式下用于构建另一个相同类型的实例。但是不建议这样做,因为这将是资源的浪费。
请注意,此类存储所有中间状态以及插值模型,因此可能会占用大量内存。
NumericalPropagator
DEFAULT_MASS
Constructor and Description |
---|
IntegratedEphemeris(AbsoluteDate startDate, AbsoluteDate minDate, AbsoluteDate maxDate, StateMapper mapper, PropagationType type, org.hipparchus.ode.DenseOutputModel model, DoubleArrayDictionary unmanaged, List<AdditionalStateProvider> providers, String[] equations, int[] dimensions)
创建一个新的IntegratedEphemeris实例。
|
Modifier and Type | Method and Description |
---|---|
protected SpacecraftState |
basicPropagate(AbsoluteDate date)
在没有任何花哨功能的情况下传播轨道。
|
Frame |
getFrame()
获取传播轨道的参考系。
|
SpacecraftState |
getInitialState()
获取传播器的初始状态。
|
protected double |
getMass(AbsoluteDate date)
获取质量。
|
AbsoluteDate |
getMaxDate()
获取范围的最后日期。
|
AbsoluteDate |
getMinDate()
获取范围的第一个日期。
|
TimeStampedPVCoordinates |
getPVCoordinates(AbsoluteDate date, Frame frame)
获取所选参考系中的物体的 PVCoordinates 。
|
protected Orbit |
propagateOrbit(AbsoluteDate date)
将轨道外推到特定目标日期。
|
void |
resetInitialState(SpacecraftState state)
重置传播器的初始状态。
|
protected void |
resetIntermediateState(SpacecraftState state, boolean forward)
重置中间状态。
|
void |
setAttitudeProvider(AttitudeProvider attitudeProvider)
设置姿态提供者。
|
protected SpacecraftState |
updateAdditionalStates(SpacecraftState original)
通过添加所有附加状态来更新状态。
|
acceptStep, addEventDetector, clearEventsDetectors, getEphemerisGenerator, getEventsDetectors, getJacobiansColumnsNames, getPvProvider, propagate
addAdditionalStateProvider, createHarvester, getAdditionalStateProviders, getAttitudeProvider, getHarvester, getManagedAdditionalStates, getMultiplexer, getStartDate, initializeAdditionalStates, initializePropagation, isAdditionalStateManaged, propagate, setStartDate, setupMatricesComputation, stateChanged, updateUnmanagedStates
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addAdditionalStateProvider, addEventDetector, clearEventsDetectors, clearStepHandlers, getAdditionalStateProviders, getAttitudeProvider, getDefaultLaw, getEphemerisGenerator, getEventsDetectors, getManagedAdditionalStates, getMultiplexer, isAdditionalStateManaged, propagate, propagate, setStepHandler, setStepHandler, setupMatricesComputation
getPosition
public IntegratedEphemeris(AbsoluteDate startDate, AbsoluteDate minDate, AbsoluteDate maxDate, StateMapper mapper, PropagationType type, org.hipparchus.ode.DenseOutputModel model, DoubleArrayDictionary unmanaged, List<AdditionalStateProvider> providers, String[] equations, int[] dimensions)
startDate
- 积分的起始日期(可以是最小日期或最大日期)
minDate
- 范围的第一个日期
maxDate
- 范围的最后日期
mapper
- 原始双组件和航天器状态之间的映射器
type
- 要输出的轨道类型(平均或瞬时)
model
- 底层原始数学模型
unmanaged
- 必须简单复制的未管理的附加状态
providers
- 预集成状态的提供者
equations
- 附加方程的名称
dimensions
- 附加方程的维度
protected SpacecraftState basicPropagate(AbsoluteDate date)
此方法在精神上类似于AbstractAnalyticalPropagator.propagate(org.orekit.time.AbsoluteDate, org.orekit.time.AbsoluteDate)
方法,不过它在传播过程中不调用任何处理程序,也不调用任何离散事件或附加状态。它总是在指定的日期停止。
basicPropagate
在类 AbstractAnalyticalPropagator
中
date
- 传播的目标日期
protected Orbit propagateOrbit(AbsoluteDate date)
propagateOrbit
在类 AbstractAnalyticalPropagator
中
date
- 轨道的目标日期
protected double getMass(AbsoluteDate date)
getMass
在类 AbstractAnalyticalPropagator
中
date
- 轨道的目标日期
public TimeStampedPVCoordinates getPVCoordinates(AbsoluteDate date, Frame frame)
PVCoordinates
。
getPVCoordinates
在接口 PVCoordinatesProvider
中
getPVCoordinates
在类 AbstractPropagator
中
date
- 当前日期
frame
- 定义位置的参考系
public AbsoluteDate getMinDate()
getMinDate
在接口 BoundedPropagator
中
public AbsoluteDate getMaxDate()
getMaxDate
在接口 BoundedPropagator
中
public Frame getFrame()
AbstractPropagator
传播参考系是初始状态的定义参考系,因此应在设置此状态后调用此方法,否则可能返回null。
getFrame
在接口 Propagator
中
getFrame
在类 AbstractPropagator
中
Propagator.resetInitialState(SpacecraftState)
public void resetInitialState(SpacecraftState state)
resetInitialState
在接口 Propagator
中
resetInitialState
在类 AbstractPropagator
中
state
- 要考虑的新初始状态
protected void resetIntermediateState(SpacecraftState state, boolean forward)
resetIntermediateState
在类 AbstractAnalyticalPropagator
中
state
- 要考虑的新中间状态
forward
- 如果为true,则中间状态对其后的传播有效
public void setAttitudeProvider(AttitudeProvider attitudeProvider)
setAttitudeProvider
在接口 Propagator
setAttitudeProvider
在类 AbstractPropagator
attitudeProvider
- 姿态提供者
public SpacecraftState getInitialState()
getInitialState
在接口 Propagator
getInitialState
在类 AbstractPropagator
protected SpacecraftState updateAdditionalStates(SpacecraftState original)
updateAdditionalStates
在类 AbstractPropagator
original
- 原始状态
未受管理
状态)
AbstractPropagator.addAdditionalStateProvider(AdditionalStateProvider)
, AbstractPropagator.updateUnmanagedStates(SpacecraftState)
Copyright © 2002-2023 CS GROUP. All rights reserved.