T
- the type of the field elements
public abstract class FieldAbstractPropagator<T extends org.hipparchus.CalculusFieldElement<T>> extends Object implements FieldPropagator<T>
Propagator
方法。
这个抽象类允许轻松地提供完整的一组Propagator
方法,包括对任何简单传播方法的所有传播模式支持和离散事件支持。
DEFAULT_MASS
Modifier | Constructor and Description |
---|---|
protected |
FieldAbstractPropagator(org.hipparchus.Field<T> field)
构建一个新实例。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addEventDetector, clearEventsDetectors, clearStepHandlers, getEphemerisGenerator, getEventsDetectors, propagate, setStepHandler, setStepHandler
getPosition
protected FieldAbstractPropagator(org.hipparchus.Field<T> field)
field
- 设置字段
protected void setStartDate(FieldAbsoluteDate<T> startDate)
startDate
- 开始日期
protected FieldAbsoluteDate<T> getStartDate()
public AttitudeProvider getAttitudeProvider()
getAttitudeProvider
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
public void setAttitudeProvider(AttitudeProvider attitudeProvider)
setAttitudeProvider
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
attitudeProvider
- 姿态提供程序
public org.hipparchus.Field<T> getField()
public FieldSpacecraftState<T> getInitialState()
getInitialState
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
public Frame getFrame()
传播参考系是初始状态的定义参考系,因此应在设置此状态后调用此方法,否则可能返回null。
getFrame
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
FieldPropagator.resetInitialState(FieldSpacecraftState)
public void resetInitialState(FieldSpacecraftState<T> state)
resetInitialState
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
state
- 要考虑的新初始状态
public FieldStepHandlerMultiplexer<T> getMultiplexer()
getMultiplexer
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
public void addAdditionalStateProvider(FieldAdditionalStateProvider<T> additionalStateProvider)
addAdditionalStateProvider
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
additionalStateProvider
- 附加状态的提供程序
public List<FieldAdditionalStateProvider<T>> getAdditionalStateProviders()
getAdditionalStateProviders
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
protected FieldSpacecraftState<T> updateUnmanagedStates(FieldSpacecraftState<T> original)
original
- 原始状态
updateAdditionalStates(FieldSpacecraftState)
protected FieldSpacecraftState<T> updateAdditionalStates(FieldSpacecraftState<T> original)
original
- 原始状态
addAdditionalStateProvider(FieldAdditionalStateProvider)
protected void initializeAdditionalStates(FieldAbsoluteDate<T> target)
target
- 传播的日期。不等于initialState.getDate()
。
public boolean isAdditionalStateManaged(String name)
管理的状态是传播器知道如何计算其演变的状态。它们对应于通过调用addAdditionalStateProvider
方法注册的additional state provider
的额外状态。如果传播器是一个基于积分器的传播器,那么通过调用addAdditionalDerivativesProvider
方法注册了一组additional derivatives provider
的状态也被计为管理的额外状态。
在initial state
中存在但没有注册演变方法的额外状态不被视为管理的状态。这些未管理的额外状态在传播过程中不会丢失。它们的值在状态重置之间是分段恒定的,如果某个事件处理程序通过调用resetState
方法在事件发生时改变了未管理的额外状态,则可能会改变它们。
isAdditionalStateManaged
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
name
- 额外状态的名称
public String[] getManagedAdditionalStates()
getManagedAdditionalStates
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
public FieldSpacecraftState<T> propagate(FieldAbsoluteDate<T> target)
简单的传播器只使用目标日期作为计算传播状态的规范。功能更丰富的传播器可以考虑其他信息,并提供不同的操作模式或G-stop功能以在特定事件发生时停止。在这些情况下,目标日期只是一个提示,而不是强制性目标。
propagate
在接口 FieldPropagator<T extends org.hipparchus.CalculusFieldElement<T>>
target
- 应传播轨道状态的目标日期
public TimeStampedFieldPVCoordinates<T> getPVCoordinates(FieldAbsoluteDate<T> date, Frame frame)
FieldPVCoordinates
。
getPVCoordinates
在接口 FieldPVCoordinatesProvider<T extends org.hipparchus.CalculusFieldElement<T>>
date
- 当前日期
frame
- 定义位置的参考系
protected void initializePropagation()
protected void stateChanged(FieldSpacecraftState<T> state)
state
- 新状态
Copyright © 2002-2023 CS GROUP. All rights reserved.