EventDetector
instances are registered to any Propagator
. When the event associated with the detector occurs, the propagator interrupts
the propagation and calls the eventOccurred
method of the event detector, which can do whatever the user want and either stop or resume
propagation, optionally resetting the state.
If the registered events detectors are configured to stop propagation when triggered, the propagator can be run with an arbitrary large target date, relying on the events occurrence to stop propagation exactly at the right time.
The package provides some predefined events:
AlignmentDetector
detects satellite/body alignment (and by default stop when reaching alignment)
AngularSeparationDetector
detects angular separation thresholds crossing between spacecraft and a beacon
(typically the Sun) as seen from an observer (typically a ground station)
AltitudeDetector
detects altitude crossing (and by default stop at descending)
ApsideDetector
detects apside crossing (and by default stop at perigee)
CircularFieldOfViewDetector
detects moving target entering/exiting satellite sensor Field Of View with a
circular shaped boundary (and by default continue on entry and stop on exit)
DateDetector
detects occurrence of a predefine instant (and by default stop there)
EclipseDetector
detects satellite entering/exiting an eclipse (and by default stop on exit)
ElevationDetector
detects satellite raising/setting (and by default stop at setting)
ElevationExtremumDetector
detects satellite maximum/minimum elevation (and by default stop at minimum)
FieldOfViewDetector
detects moving target entering/exiting satellite sensor Field Of View with an arbitrarily
shaped boundary (and by default continue on entry and stop on exit)
FootprintOverlapDetector
detects geographic zone entering or exiting Field Of View of a spacecraft sensor (and by default stop at zone exit)
GeographicZoneDetector
detects geographic boundaries crossings (and by default stop at zone exit)
GroundFieldOfViewDetector
detects spacecraft entering/exiting ground based Field Of View with an arbitrarily
shaped boundary (and by default continue on entry and stop on exit)
LatitudeCrossingDetector
detects satellite crossing a parallel (and by default stop at northward crossing)
LatitudeExtremumDetector
detects satellite maximum/minimum latitude (and by default stop at minimum)
LongitudeCrossingDetector
detects satellite crossing a meridian (the increasing/decreasing flag is irrelevant for this detector)
LongitudeExtremumDetector
detects satellite maximum/minimum longitude (and by default stop at minimum)
NodeDetector
detects node crossing (and by default stop at ascending node)
PositionAngleDetector
detects anomaly, latitude argument or longitude argument crossings, with either true
eccentric or mean angles (the increasing/decreasing flag is irrelevant for this detector)
In addition to raw events, the class also provides EventsLogger
to gather all events that occurred during a propagation, EventShifter
which allows to slightly shift an
event in time (for example to trigger something say 5 minutes before eclipse entry), EventSlopeFilter
and EventEnablingPredicateFilter
to trigger
only specific types of events, without losing computation time by locating events user is not
interested in. Also the BooleanDetector
allows
the user to combine other event detectors using Boolean logic.
The low level interfaces and classes are heavily based on similar classes from the ode.events package from the Hipparchus library. The changes are mainly adaptations of the signatures to space dynamics.
double
to AbsoluteDate
double[]
to SpacecraftState
Interface | Description |
---|---|
EnablingPredicate<S extends EventDetector> |
This interface represents an event enabling predicate function.
|
EventDetector |
This interface represents space-dynamics aware events detectors.
|
FieldEventDetector<T extends RealFieldElement<T>> |
This interface represents space-dynamics aware events detectors.
|
FunctionalDetector.GFunction |
A functional interface for the
FunctionalDetector.g(SpacecraftState) function. |
Class | Description |
---|---|
AbstractDetector<T extends EventDetector> |
Common parts shared by several orbital events finders.
|
AlignmentDetector |
Finder for satellite/body alignment events in orbital plane.
|
AltitudeDetector |
Finder for satellite altitude crossing events.
|
AngularSeparationDetector |
Detects when spacecraft comes close to a moving beacon, as seen from a moving observer.
|
ApsideDetector |
Finder for apside crossing events.
|
BooleanDetector |
This class provides AND and OR operations for event detectors.
|
CircularFieldOfViewDetector |
Finder for target entry/exit events with respect to a satellite sensor Field Of View.
|
DateDetector |
Finder for date events.
|
EclipseDetector |
Finder for satellite eclipse related events.
|
ElevationDetector |
Finder for satellite raising/setting events that allows for the
setting of azimuth and/or elevation bounds or a ground azimuth/elevation
mask input.
|
ElevationExtremumDetector |
Detector for elevation extremum with respect to a ground point.
|
EventEnablingPredicateFilter<T extends EventDetector> |
Wrapper used to detect events only when enabled by an external predicated function.
|
EventShifter<T extends EventDetector> |
Wrapper shifting events occurrences times.
|
EventsLogger |
This class logs events detectors events during propagation.
|
EventsLogger.LoggedEvent |
Class for logged events entries.
|
EventSlopeFilter<T extends EventDetector> |
Wrapper used to detect only increasing or decreasing events.
|
EventState<T extends EventDetector> |
This class handles the state for one
event detector during integration steps. |
EventState.EventOccurrence |
Class to hold the data related to an event occurrence that is needed to decide how
to modify integration.
|
FieldAbstractDetector<D extends FieldEventDetector<T>,T extends RealFieldElement<T>> |
Common parts shared by several orbital events finders.
|
FieldAltitudeDetector<T extends RealFieldElement<T>> |
Finder for satellite altitude crossing events.
|
FieldApsideDetector<T extends RealFieldElement<T>> |
Finder for apside crossing events.
|
FieldDateDetector<T extends RealFieldElement<T>> |
Finder for date events.
|
FieldEclipseDetector<T extends RealFieldElement<T>> |
Finder for satellite eclipse related events.
|
FieldElevationDetector<T extends RealFieldElement<T>> |
Finder for satellite raising/setting events that allows for the
setting of azimuth and/or elevation bounds or a ground azimuth/elevation
mask input.
|
FieldEventsLogger<T extends RealFieldElement<T>> |
This class logs events detectors events during propagation.
|
FieldEventsLogger.FieldLoggedEvent<T extends RealFieldElement<T>> |
Class for logged events entries.
|
FieldEventState<D extends FieldEventDetector<T>,T extends RealFieldElement<T>> |
This class handles the state for one
event detector during integration steps. |
FieldEventState.EventOccurrence<T extends RealFieldElement<T>> |
Class to hold the data related to an event occurrence that is needed to decide how
to modify integration.
|
FieldNodeDetector<T extends RealFieldElement<T>> |
Finder for node crossing events.
|
FieldOfView |
Class representing a spacecraft sensor Field Of View.
|
FieldOfViewDetector |
Finder for target entry/exit events with respect to a satellite sensor
Field Of View . |
FootprintOverlapDetector |
Detector triggered by geographical region entering/leaving a spacecraft sensor
Field Of View . |
FunctionalDetector |
A detector that implements the
FunctionalDetector.g(SpacecraftState) function using a
lambda that can be set using FunctionalDetector.withGFunction(GFunction) . |
GeographicZoneDetector |
Detector for entry/exit of a zone defined by geographic boundaries.
|
GroundFieldOfViewDetector |
Finder for satellite entry/exit events with respect to a sensor
Field Of View attached to an arbitrary frame. |
LatitudeCrossingDetector |
Detector for geographic latitude crossing.
|
LatitudeExtremumDetector |
Detector for geographic latitude extremum.
|
LongitudeCrossingDetector |
Detector for geographic longitude crossing.
|
LongitudeExtremumDetector |
Detector for geographic longitude extremum.
|
NegateDetector |
An event detector that negates the sign on another event detector's
g function. |
NodeDetector |
Finder for node crossing events.
|
PositionAngleDetector |
Detector for in-orbit position angle.
|
Enum | Description |
---|---|
FilterType |
Enumerate for
filtering events . |
Copyright © 2002-2018 CS Systèmes d'information. All rights reserved.