public class ElevationExtremumDetector extends AbstractDetector<ElevationExtremumDetector>
该探测器标识了当飞船相对于地面点达到其高程极值时。
由于在大多数情况下只需要高程的最大值,而最小值通常是无关紧要的,因此这个探测器通常被包装在一个配置了事件斜率过滤器
中,该过滤器配置了FilterType.TRIGGER_ONLY_DECREASING_EVENTS
(即当高程导数从正值减少到负值时,对应于最大值)。设置这个过滤器可以节省一些计算时间,因为甚至不会查看高程最小值的出现。然而,通常仍然需要进行额外的过滤。
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Modifier | Constructor and Description |
---|---|
protected |
ElevationExtremumDetector(AdaptableInterval maxCheck, double threshold, int maxIter, EventHandler handler, TopocentricFrame topo)
具有完整参数的受保护构造函数。
|
|
ElevationExtremumDetector(double maxCheck, double threshold, TopocentricFrame topo)
构建一个探测器。
|
|
ElevationExtremumDetector(TopocentricFrame topo)
构建一个新的探测器。
|
Modifier and Type | Method and Description |
---|---|
protected ElevationExtremumDetector |
create(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler newHandler)
构建一个新实例。
|
double |
g(SpacecraftState s)
计算探测函数的值。
|
double |
getElevation(SpacecraftState s)
获取高程值。
|
TopocentricFrame |
getTopocentricFrame()
返回以地面点为中心的地心框架。
|
getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThreshold
public ElevationExtremumDetector(TopocentricFrame topo)
新实例使用最大检查间隔(AbstractDetector.DEFAULT_MAXCHECK
)和收敛阈值(AbstractDetector.DEFAULT_THRESHOLD
)的默认值。
topo
- 以地面点为中心的地心框架
public ElevationExtremumDetector(double maxCheck, double threshold, TopocentricFrame topo)
maxCheck
- 最大检查间隔(秒)
threshold
- 收敛阈值(秒)
topo
- 以地面点为中心的地心框架
protected ElevationExtremumDetector(AdaptableInterval maxCheck, double threshold, int maxIter, EventHandler handler, TopocentricFrame topo)
此构造函数不是公共的,因为用户应该使用各种withXxx()
方法来设置实例,以便以可读的方式设置实例,而不使用大量参数。
maxCheck
- 最大检查间隔
threshold
- 收敛阈值(秒)
maxIter
- 事件时间搜索中的最大迭代次数
handler
- 在事件发生时调用的事件处理程序
topo
- 以地面点为中心的地心框架
protected ElevationExtremumDetector create(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler newHandler)
create
在类 AbstractDetector<ElevationExtremumDetector>
newMaxCheck
- 最大检查间隔(秒)
newThreshold
- 收敛阈值(秒)
newMaxIter
- 事件时间搜索中的最大迭代次数
newHandler
- 在事件发生时调用的事件处理程序
public TopocentricFrame getTopocentricFrame()
public double getElevation(SpacecraftState s)
s
- 当前状态信息:日期、运动学、姿态
public double g(SpacecraftState s)
该值是飞船高程的第一时间导数。
g
在接口 EventDetector
g
在类 AbstractDetector<ElevationExtremumDetector>
s
- 当前状态信息:日期、运动学、姿态
Copyright © 2002-2023 CS GROUP. All rights reserved.