Package org.orekit.propagation.events
Class ElevationDetector
- java.lang.Object
-
- org.orekit.propagation.events.AbstractDetector<T>
-
- org.orekit.propagation.events.AbstractTopocentricDetector<ElevationDetector>
-
- org.orekit.propagation.events.ElevationDetector
-
- All Implemented Interfaces:
EventDetector
public class ElevationDetector extends AbstractTopocentricDetector<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. Each calculation be configured to use atmospheric refraction as well.The default implementation behavior is to
continuepropagation at raising and tostoppropagation at setting. This can be changed by callingAbstractDetector.withHandler(EventHandler)after construction.- Since:
- 6.1
- Author:
- Hank Grabowski
-
-
Field Summary
-
Fields inherited from class org.orekit.propagation.events.AbstractDetector
DEFAULT_MAX_CHECK, DEFAULT_MAX_ITER, DEFAULT_THRESHOLD
-
-
Constructor Summary
Constructors Constructor Description ElevationDetector(double maxCheck, double threshold, TopocentricFrame topo)Creates an instance of Elevation detector based on passed in topocentric frame and overrides of default maximal checking interval and convergence threshold values.ElevationDetector(TopocentricFrame topo)Creates an instance of Elevation detector based on passed in topocentric frame and the minimum elevation angle.ElevationDetector(EventDetectionSettings detectionSettings, EventHandler handler, AbstractElevationCrossingFunction elevationCrossingFunction)Constructor with full parameters.ElevationDetector(AdaptableInterval maxCheck, double threshold, TopocentricFrame topo)Creates an instance of Elevation detector based on passed in topocentric frame and overrides of default maximal checking interval and convergence threshold values.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ElevationDetectorcreate(EventDetectionSettings detectionSettings, EventHandler newHandler)Build a new instance.doubleg(SpacecraftState s)Compute the value of the switching function.ElevationMaskgetElevationMask()Returns the currently configured elevation mask.doublegetMinElevation()Returns the currently configured minimum valid elevation value.AtmosphericRefractionModelgetRefractionModel()Returns the currently configured refraction model.ElevationDetectorwithConstantElevation(double newMinElevation)Set up the minimum elevation for detection.ElevationDetectorwithElevationMask(ElevationMask newElevationMask)Set up the elevation mask for detection using the passed in mask object.ElevationDetectorwithRefraction(AtmosphericRefractionModel newRefractionModel)Set up the elevation detector to use an atmospheric refraction model in its calculations.-
Methods inherited from class org.orekit.propagation.events.AbstractTopocentricDetector
getElevation, getTopocentricFrame
-
Methods inherited from class org.orekit.propagation.events.AbstractDetector
checkIfForward, getDetectionSettings, getEventFunction, getHandler, init, isForward, withDetectionSettings, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThreshold
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.events.EventDetector
finish, getMaxCheckInterval, getMaxIterationCount, getThreshold, reset
-
-
-
-
Constructor Detail
-
ElevationDetector
public ElevationDetector(TopocentricFrame topo)
Creates an instance of Elevation detector based on passed in topocentric frame and the minimum elevation angle.uses default values for maximal checking interval (
AbstractDetector.DEFAULT_MAX_CHECK) and convergence threshold (AbstractDetector.DEFAULT_THRESHOLD).- Parameters:
topo- reference to a topocentric model- See Also:
withConstantElevation(double),withElevationMask(ElevationMask),withRefraction(AtmosphericRefractionModel)
-
ElevationDetector
public ElevationDetector(double maxCheck, double threshold, TopocentricFrame topo)Creates an instance of Elevation detector based on passed in topocentric frame and overrides of default maximal checking interval and convergence threshold values.- Parameters:
maxCheck- maximum checking interval (s)threshold- maximum convergence threshold (s)topo- reference to a topocentric model- See Also:
withConstantElevation(double),withElevationMask(ElevationMask),withRefraction(AtmosphericRefractionModel)
-
ElevationDetector
public ElevationDetector(AdaptableInterval maxCheck, double threshold, TopocentricFrame topo)
Creates an instance of Elevation detector based on passed in topocentric frame and overrides of default maximal checking interval and convergence threshold values.- Parameters:
maxCheck- maximum checking adaptable intervalthreshold- maximum convergence threshold (s)topo- reference to a topocentric model- Since:
- 12.1
- See Also:
ElevationDetectionAdaptableIntervalFactory,withConstantElevation(double),withElevationMask(ElevationMask),withRefraction(AtmosphericRefractionModel)
-
ElevationDetector
public ElevationDetector(EventDetectionSettings detectionSettings, EventHandler handler, AbstractElevationCrossingFunction elevationCrossingFunction)
Constructor with full parameters.- Parameters:
detectionSettings- event detection settingshandler- event handler to call at event occurrenceselevationCrossingFunction- elevation crossing function- Since:
- 14.0
-
-
Method Detail
-
create
protected ElevationDetector create(EventDetectionSettings detectionSettings, EventHandler newHandler)
Build a new instance.- Specified by:
createin classAbstractDetector<ElevationDetector>- Parameters:
detectionSettings- detection settingsnewHandler- event handler to call at event occurrences- Returns:
- a new instance of the appropriate sub-type
-
getElevationMask
public ElevationMask getElevationMask()
Returns the currently configured elevation mask.- Returns:
- elevation mask
(null if instance has been configured with
withConstantElevation(double) - See Also:
withElevationMask(ElevationMask)
-
getMinElevation
public double getMinElevation()
Returns the currently configured minimum valid elevation value.- Returns:
- minimum elevation value
(
Double.NaNif instance has been configured withwithElevationMask(ElevationMask) - See Also:
withConstantElevation(double)
-
getRefractionModel
public AtmosphericRefractionModel getRefractionModel()
Returns the currently configured refraction model.- Returns:
- refraction model
- See Also:
withRefraction(AtmosphericRefractionModel)
-
g
public double g(SpacecraftState s)
Compute the value of the switching function. This function measures the difference between the current elevation (and azimuth if necessary) and the reference mask or minimum value.- Parameters:
s- the current state information: date, kinematics, attitude- Returns:
- value of the switching function
-
withConstantElevation
public ElevationDetector withConstantElevation(double newMinElevation)
Set up the minimum elevation for detection.This will override an elevation mask if it has been configured as such previously.
- Parameters:
newMinElevation- minimum elevation for visibility in radians (rad)- Returns:
- a new detector with updated configuration (the instance is not changed)
- Since:
- 6.1
- See Also:
getMinElevation()
-
withElevationMask
public ElevationDetector withElevationMask(ElevationMask newElevationMask)
Set up the elevation mask for detection using the passed in mask object.- Parameters:
newElevationMask- elevation mask to use for the computation- Returns:
- a new detector with updated configuration (the instance is not changed)
- Since:
- 6.1
- See Also:
getElevationMask()
-
withRefraction
public ElevationDetector withRefraction(AtmosphericRefractionModel newRefractionModel)
Set up the elevation detector to use an atmospheric refraction model in its calculations.To disable the refraction when copying an existing elevation detector, call this method with a null argument.
- Parameters:
newRefractionModel- refraction model to use for the computation- Returns:
- a new detector with updated configuration (the instance is not changed)
- Since:
- 6.1
- See Also:
getRefractionModel()
-
-