Serializable, EventDetectorpublic class GroundAtNightDetector extends AbstractDetector<GroundAtNightDetector>
This detector is mainly useful for scheduling optical measurements (either passive telescope observation of satellites against the stars background or active satellite laser ranging).
The g function of this detector is positive when ground is at night
(i.e. Sun is below dawn/dusk elevation angle).
| Modifier and Type | Field | Description |
|---|---|---|
static double |
ASTRONOMICAL_DAWN_DUSK_ELEVATION |
Sun elevation at astronomical dawn/dusk (18° below horizon).
|
static double |
CIVIL_DAWN_DUSK_ELEVATION |
Sun elevation at civil dawn/dusk (6° below horizon).
|
static double |
NAUTICAL_DAWN_DUSK_ELEVATION |
Sun elevation at nautical dawn/dusk (12° below horizon).
|
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD| Constructor | Description |
|---|---|
GroundAtNightDetector(TopocentricFrame groundLocation,
PVCoordinatesProvider sun,
double dawnDuskElevation,
AtmosphericRefractionModel refractionModel) |
Simple constructor.
|
| Modifier and Type | Method | Description |
|---|---|---|
protected GroundAtNightDetector |
create(double newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler<? super GroundAtNightDetector> newHandler) |
Build a new instance.
|
double |
g(SpacecraftState state) |
Compute the value of the switching function.
|
eventOccurred, getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, resetState, withHandler, withMaxCheck, withMaxIter, withThresholdpublic 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)
Beware that Earth
standard refraction model does apply only for elevations above -2°. It is therefore
not suitable for used with CIVIL_DAWN_DUSK_ELEVATION (-6°), NAUTICAL_DAWN_DUSK_ELEVATION (-12°) or ASTRONOMICAL_DAWN_DUSK_ELEVATION (-18°).
The ITU 453 refraction model
which can compute refraction at large negative elevations should be preferred.
groundLocation - ground location to checksun - provider for Sun positiondawnDuskElevation - Sun elevation below which we consider night is dark enough (rad)
(typically ASTRONOMICAL_DAWN_DUSK_ELEVATION)refractionModel - reference to refraction model (null if refraction should be ignored)protected GroundAtNightDetector create(double newMaxCheck, double newThreshold, int newMaxIter, EventHandler<? super GroundAtNightDetector> newHandler)
create in class AbstractDetector<GroundAtNightDetector>newMaxCheck - maximum checking interval (s)newThreshold - convergence threshold (s)newMaxIter - maximum number of iterations in the event time searchnewHandler - event handler to call at event occurrencespublic double g(SpacecraftState state)
The g function of this detector is positive when ground is at night
(i.e. Sun is below dawn/dusk elevation angle).
This function only depends on date, not on the actual position of the spacecraft.
g in interface EventDetectorg in class AbstractDetector<GroundAtNightDetector>state - the current state information: date, kinematics, attitudeCopyright © 2002-2019 CS Systèmes d'information. All rights reserved.