public class ElevationExtremumDetector extends AbstractDetector<ElevationExtremumDetector>
This detector identifies when a spacecraft reaches its extremum elevation with respect to a ground point.
As in most cases only the elevation maximum is needed and the
minimum is often irrelevant, this detector is often wrapped into
an event slope filter configured with
FilterType.TRIGGER_ONLY_DECREASING_EVENTS (i.e. when the
elevation derivative decreases from positive values to negative values,
which correspond to a maximum). Setting up this filter saves some computation
time as the elevation minimum occurrences are not even looked at. It is
however still often necessary to do an additional filtering
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD| Modifier | Constructor and Description |
|---|---|
protected |
ElevationExtremumDetector(AdaptableInterval maxCheck,
double threshold,
int maxIter,
EventHandler handler,
TopocentricFrame topo)
Protected constructor with full parameters.
|
|
ElevationExtremumDetector(double maxCheck,
double threshold,
TopocentricFrame topo)
Build a detector.
|
|
ElevationExtremumDetector(TopocentricFrame topo)
Build a new detector.
|
| Modifier and Type | Method and Description |
|---|---|
protected ElevationExtremumDetector |
create(AdaptableInterval newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler newHandler)
Build a new instance.
|
double |
g(SpacecraftState s)
Compute the value of the detection function.
|
double |
getElevation(SpacecraftState s)
Get the elevation value.
|
TopocentricFrame |
getTopocentricFrame()
Returns the topocentric frame centered on ground point.
|
getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThresholdpublic ElevationExtremumDetector(TopocentricFrame topo)
The new instance uses default values for maximal checking interval
(AbstractDetector.DEFAULT_MAXCHECK) and convergence threshold (AbstractDetector.DEFAULT_THRESHOLD).
topo - topocentric frame centered on ground pointpublic ElevationExtremumDetector(double maxCheck,
double threshold,
TopocentricFrame topo)
maxCheck - maximal checking interval (s)threshold - convergence threshold (s)topo - topocentric frame centered on ground pointprotected ElevationExtremumDetector(AdaptableInterval maxCheck, double threshold, int maxIter, EventHandler handler, TopocentricFrame topo)
This constructor is not public as users are expected to use the builder
API with the various withXxx() methods to set up the instance
in a readable manner without using a huge amount of parameters.
maxCheck - maximum checking intervalthreshold - convergence threshold (s)maxIter - maximum number of iterations in the event time searchhandler - event handler to call at event occurrencestopo - topocentric frame centered on ground pointprotected ElevationExtremumDetector create(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler newHandler)
create in class AbstractDetector<ElevationExtremumDetector>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 TopocentricFrame getTopocentricFrame()
public double getElevation(SpacecraftState s)
s - the current state information: date, kinematics, attitudepublic double g(SpacecraftState s)
The value is the spacecraft elevation first time derivative.
g in interface EventDetectorg in class AbstractDetector<ElevationExtremumDetector>s - the current state information: date, kinematics, attitudeCopyright © 2002-2023 CS GROUP. All rights reserved.