public class GroundAtNightDetector extends AbstractDetector<GroundAtNightDetector>
此探测器主要用于安排光学测量(无源望远镜观测卫星与星空背景或主动卫星激光测距)。
当地面处于夜晚时(即太阳低于黎明/黄昏仰角),此探测器的g
函数为正。
Modifier and Type | Field and Description |
---|---|
static double |
ASTRONOMICAL_DAWN_DUSK_ELEVATION
天文黎明/黄昏时太阳仰角(地平线以下18°)。
|
static double |
CIVIL_DAWN_DUSK_ELEVATION
民用黎明/黄昏时太阳仰角(地平线以下6°)。
|
static double |
NAUTICAL_DAWN_DUSK_ELEVATION
航海黎明/黄昏时太阳仰角(地平线以下12°)。
|
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Modifier | Constructor and Description |
---|---|
|
GroundAtNightDetector(TopocentricFrame groundLocation, PVCoordinatesProvider sun, double dawnDuskElevation, AtmosphericRefractionModel refractionModel)
简单构造器。
|
protected |
GroundAtNightDetector(TopocentricFrame groundLocation, PVCoordinatesProvider sun, double dawnDuskElevation, AtmosphericRefractionModel refractionModel, AdaptableInterval maxCheck, double threshold, int maxIter, EventHandler handler)
私有构造器。
|
Modifier and Type | Method and Description |
---|---|
protected GroundAtNightDetector |
create(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler newHandler)
构建一个新实例。
|
double |
g(SpacecraftState state)
计算切换函数的值。
|
getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThreshold
public static final double CIVIL_DAWN_DUSK_ELEVATION
public static final double NAUTICAL_DAWN_DUSK_ELEVATION
public static final double ASTRONOMICAL_DAWN_DUSK_ELEVATION
public GroundAtNightDetector(TopocentricFrame groundLocation, PVCoordinatesProvider sun, double dawnDuskElevation, AtmosphericRefractionModel refractionModel)
请注意,地球标准折射模型
仅适用于仰角高于-2°的情况。因此,它不适用于与民用黎明/黄昏仰角
(-6°)、航海黎明/黄昏仰角
(-12°)或天文黎明/黄昏仰角
(-18°)一起使用。应优先选择可以计算大负仰角处折射的ITU 453折射模型
。
groundLocation
- 要检查的地面位置
sun
- 太阳位置提供者
dawnDuskElevation
- 我们认为夜晚足够黑暗的太阳仰角以下(弧度)(通常为天文黎明/黄昏仰角
)
refractionModel
- 折射模型的引用(如果应忽略折射则为null)
protected GroundAtNightDetector(TopocentricFrame groundLocation, PVCoordinatesProvider sun, double dawnDuskElevation, AtmosphericRefractionModel refractionModel, AdaptableInterval maxCheck, double threshold, int maxIter, EventHandler handler)
groundLocation
- 进行测量的地面位置
sun
- 太阳位置提供者
dawnDuskElevation
- 我们认为夜晚足够黑暗的太阳仰角以下(弧度)(通常为天文黎明/黄昏仰角
)
refractionModel
- 折射模型的引用(如果应忽略折射则为null)
maxCheck
- 最大检查间隔
threshold
- 收敛阈值(秒)
maxIter
- 事件时间搜索中的最大迭代次数
handler
- 事件发生时要调用的事件处理器
protected GroundAtNightDetector create(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler newHandler)
create
在类 AbstractDetector<GroundAtNightDetector>
newMaxCheck
- 最大检查间隔(秒)
newThreshold
- 收敛阈值(秒)
newMaxIter
- 事件时间搜索中的最大迭代次数
newHandler
- 事件发生时要调用的事件处理器
public double g(SpacecraftState state)
当地面处于夜晚时(即太阳低于黎明/黄昏仰角),此探测器的g
函数为正。
此函数仅取决于日期,而不取决于航天器的实际位置。
g
在接口 EventDetector
g
在类 AbstractDetector<GroundAtNightDetector>
state
- 当前状态信息:日期、运动学、姿态
Copyright © 2002-2023 CS GROUP. All rights reserved.