T
- type of the field elements
public class FieldApsideDetector<T extends org.hipparchus.CalculusFieldElement<T>> extends FieldAbstractDetector<FieldApsideDetector<T>,T>
此类用于查找apside交叉事件(即远地点或近地点交叉)。
默认实现行为是在远地点交叉时继续
传播,在近地点交叉时停止
传播。可以在构造后调用FieldAbstractDetector.withHandler(FieldEventHandler)
来更改此行为。
请注意,对于几乎圆形轨道,apside检测将失败。例如,如果apside检测器用于触发一个ImpulseManeuver
,并且机动改变了轨道形状为圆形,则检测器可能在执行机动后完全失败!
FieldPropagator.addEventDetector(FieldEventDetector)
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Modifier | Constructor and Description |
---|---|
protected |
FieldApsideDetector(FieldAdaptableInterval<T> maxCheck, T threshold, int maxIter, FieldEventHandler<T> handler)
具有完整参数的受保护构造函数。
|
|
FieldApsideDetector(FieldOrbit<T> orbit)
构建一个新实例。
|
|
FieldApsideDetector(T threshold, FieldOrbit<T> orbit)
构建一个新实例。
|
Modifier and Type | Method and Description |
---|---|
protected FieldApsideDetector<T> |
create(FieldAdaptableInterval<T> newMaxCheck, T newThreshold, int newMaxIter, FieldEventHandler<T> newHandler)
构建一个新实例。
|
T |
g(FieldSpacecraftState<T> s)
计算切换函数的值。
|
getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThreshold
public FieldApsideDetector(FieldOrbit<T> orbit)
轨道仅用于将最大检查间隔设置为周期的1/3,并根据轨道大小设置收敛阈值
orbit
- 初始轨道
public FieldApsideDetector(T threshold, FieldOrbit<T> orbit)
轨道仅用于将最大检查间隔设置为周期的1/3
threshold
- 收敛阈值(秒)
orbit
- 初始轨道
protected FieldApsideDetector(FieldAdaptableInterval<T> maxCheck, T threshold, int maxIter, FieldEventHandler<T> handler)
此构造函数不是公共的,因为预期用户将使用构建器API和各种withXxx()
方法来设置实例,而无需使用大量参数。
maxCheck
- 最大检查间隔
threshold
- 收敛阈值(秒)
maxIter
- 事件时间搜索中的最大迭代次数
handler
- 事件发生时要调用的事件处理程序
protected FieldApsideDetector<T> create(FieldAdaptableInterval<T> newMaxCheck, T newThreshold, int newMaxIter, FieldEventHandler<T> newHandler)
create
在类 FieldAbstractDetector<FieldApsideDetector<T extends org.hipparchus.CalculusFieldElement<T>>,T extends org.hipparchus.CalculusFieldElement<T>>
newMaxCheck
- 最大检查间隔
newThreshold
- 收敛阈值(秒)
newMaxIter
- 事件时间搜索中的最大迭代次数
newHandler
- 事件发生时要调用的事件处理程序
public T g(FieldSpacecraftState<T> s)
g
在接口 FieldEventDetector<T extends org.hipparchus.CalculusFieldElement<T>>
g
在类 FieldAbstractDetector<FieldApsideDetector<T extends org.hipparchus.CalculusFieldElement<T>>,T extends org.hipparchus.CalculusFieldElement<T>>
s
- 当前状态信息:日期、运动学、姿态
Copyright © 2002-2023 CS GROUP. All rights reserved.