public 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 and 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
Modifier | Constructor and Description |
---|---|
|
GroundAtNightDetector(TopocentricFrame groundLocation,
PVCoordinatesProvider sun,
double dawnDuskElevation,
AtmosphericRefractionModel refractionModel)
Simple constructor.
|
protected |
GroundAtNightDetector(TopocentricFrame groundLocation,
PVCoordinatesProvider sun,
double dawnDuskElevation,
AtmosphericRefractionModel refractionModel,
AdaptableInterval maxCheck,
double threshold,
int maxIter,
EventHandler handler)
Private constructor.
|
Modifier and Type | Method and Description |
---|---|
protected GroundAtNightDetector |
create(AdaptableInterval newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler newHandler)
Build a new instance.
|
double |
g(SpacecraftState state)
Compute the value of the switching function.
|
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)
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(TopocentricFrame groundLocation, PVCoordinatesProvider sun, double dawnDuskElevation, AtmosphericRefractionModel refractionModel, AdaptableInterval maxCheck, double threshold, int maxIter, EventHandler handler)
groundLocation
- ground location from which measurement is performedsun
- 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),maxCheck
- maximum checking intervalthreshold
- convergence threshold (s)maxIter
- maximum number of iterations in the event time searchhandler
- event handler to call at event occurrencesprotected GroundAtNightDetector create(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler 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 EventDetector
g
in class AbstractDetector<GroundAtNightDetector>
state
- the current state information: date, kinematics, attitudeCopyright © 2002-2023 CS GROUP. All rights reserved.