public class NegateDetector extends AbstractDetector<NegateDetector>
g
function.DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Modifier | Constructor and Description |
---|---|
protected |
NegateDetector(AdaptableInterval newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler newHandler,
EventDetector original)
Private constructor.
|
|
NegateDetector(EventDetector original)
Create a new event detector that negates an existing event detector.
|
Modifier and Type | Method and Description |
---|---|
protected NegateDetector |
create(AdaptableInterval newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler newHandler)
Build a new instance.
|
double |
g(SpacecraftState s)
Compute the value of the switching function.
|
EventDetector |
getOriginal()
Get the delegate event detector.
|
void |
init(SpacecraftState s0,
AbsoluteDate t)
Initialize event handler at the start of a propagation.
|
getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, isForward, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThreshold
public NegateDetector(EventDetector original)
This detector will be initialized with the same EventDetector.getMaxCheckInterval()
, EventDetector.getThreshold()
, and
EventDetector.getMaxIterationCount()
as original
. Initially this
detector will use the ContinueOnEvent
event handler.
original
- detector.protected NegateDetector(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler newHandler, EventDetector original)
newMaxCheck
- max check interval.newThreshold
- convergence threshold in seconds.newMaxIter
- max iterations.newHandler
- event handler.original
- event detector.public EventDetector getOriginal()
public void init(SpacecraftState s0, AbsoluteDate t)
AbstractDetector
This method is called once at the start of the propagation. It may be used by the event handler to initialize some internal data if needed.
The default implementation does nothing
This implementation sets the direction of propagation and initializes the event
handler. If a subclass overrides this method it should call super.init(s0, t)
.
init
in interface EventDetector
init
in class AbstractDetector<NegateDetector>
s0
- initial statet
- target time for the integrationpublic double g(SpacecraftState s)
AbstractDetector
g
in interface EventDetector
g
in class AbstractDetector<NegateDetector>
s
- the current state information: date, kinematics, attitudeprotected NegateDetector create(AdaptableInterval newMaxCheck, double newThreshold, int newMaxIter, EventHandler newHandler)
AbstractDetector
create
in class AbstractDetector<NegateDetector>
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 occurrencesCopyright © 2002-2023 CS GROUP. All rights reserved.