Class FieldBooleanDetector<T extends CalculusFieldElement<T>>

java.lang.Object
org.orekit.propagation.events.FieldAbstractDetector<FieldBooleanDetector<T>,T>
org.orekit.propagation.events.FieldBooleanDetector<T>
Type Parameters:
T - type of the field elements
All Implemented Interfaces:
FieldEventDetector<T>

public class FieldBooleanDetector<T extends CalculusFieldElement<T>> extends FieldAbstractDetector<FieldBooleanDetector<T>,T>
This class provides AND and OR operations for event detectors. This class treats positive values of the g function as true and negative values as false.

One example for an imaging satellite might be to only detect events when a satellite is overhead (elevation > 0) AND when the ground point is sunlit (Sun elevation > 0). Another slightly contrived example using the OR operator would be to detect access to a set of ground stations and only report events when the satellite enters or leaves the field of view of the set, but not hand-offs between the ground stations.

For the FieldBooleanDetector is important that the sign of the g function of the underlying event detector is not arbitrary, but has a semantic meaning, e.g. in or out, true or false. This class works well with event detectors that detect entry to or exit from a region, e.g. FieldEclipseDetector, FieldElevationDetector, FieldLatitudeCrossingDetector. Using this detector with detectors that are not based on entry to or exit from a region, e.g. FieldDateDetector, will likely lead to unexpected results. To apply conditions to this latter type of event detectors a FieldEventEnablingPredicateFilter is usually more appropriate.

Since:
12.0
Author:
Evan Ward, luc Luc Maisonobe
See Also: