T - type of the field elementspublic class FieldApsideDetector<T extends org.hipparchus.CalculusFieldElement<T>> extends FieldAbstractDetector<FieldApsideDetector<T>,T>
This class finds apside crossing events (i.e. apogee or perigee crossing).
The default implementation behavior is to continue
propagation at apogee crossing and to stop propagation
at perigee crossing. This can be changed by calling
FieldAbstractDetector.withHandler(FieldEventHandler) after construction.
Beware that apside detection will fail for almost circular orbits. If
for example an apside detector is used to trigger an ImpulseManeuver and the maneuver
change the orbit shape to circular, then the detector may completely fail just
after the maneuver has been performed!
FieldPropagator.addEventDetector(FieldEventDetector)DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD| Modifier | Constructor and Description |
|---|---|
protected |
FieldApsideDetector(FieldAdaptableInterval<T> maxCheck,
T threshold,
int maxIter,
FieldEventHandler<T> handler)
Protected constructor with full parameters.
|
|
FieldApsideDetector(FieldOrbit<T> orbit)
Build a new instance.
|
|
FieldApsideDetector(T threshold,
FieldOrbit<T> orbit)
Build a new instance.
|
| Modifier and Type | Method and Description |
|---|---|
protected FieldApsideDetector<T> |
create(FieldAdaptableInterval<T> newMaxCheck,
T newThreshold,
int newMaxIter,
FieldEventHandler<T> newHandler)
Build a new instance.
|
T |
g(FieldSpacecraftState<T> s)
Compute the value of the switching function.
|
getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThresholdpublic FieldApsideDetector(FieldOrbit<T> orbit)
The orbit is used only to set an upper bound for the max check interval to period/3 and to set the convergence threshold according to orbit size
orbit - initial orbitpublic FieldApsideDetector(T threshold, FieldOrbit<T> orbit)
The orbit is used only to set an upper bound for the max check interval to period/3
threshold - convergence threshold (s)orbit - initial orbitprotected FieldApsideDetector(FieldAdaptableInterval<T> maxCheck, T threshold, int maxIter, FieldEventHandler<T> handler)
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 occurrencesprotected FieldApsideDetector<T> create(FieldAdaptableInterval<T> newMaxCheck, T newThreshold, int newMaxIter, FieldEventHandler<T> newHandler)
create in class FieldAbstractDetector<FieldApsideDetector<T extends org.hipparchus.CalculusFieldElement<T>>,T extends org.hipparchus.CalculusFieldElement<T>>newMaxCheck - maximum checking intervalnewThreshold - convergence threshold (s)newMaxIter - maximum number of iterations in the event time searchnewHandler - event handler to call at event occurrencespublic T g(FieldSpacecraftState<T> s)
g in interface FieldEventDetector<T extends org.hipparchus.CalculusFieldElement<T>>g in class FieldAbstractDetector<FieldApsideDetector<T extends org.hipparchus.CalculusFieldElement<T>>,T extends org.hipparchus.CalculusFieldElement<T>>s - the current state information: date, kinematics, attitudeCopyright © 2002-2023 CS GROUP. All rights reserved.