T
- type of the field elementspublic class FieldLatitudeCrossingDetector<T extends org.hipparchus.CalculusFieldElement<T>> extends FieldAbstractDetector<FieldLatitudeCrossingDetector<T>,T>
This detector identifies when a spacecraft crosses a fixed latitude with respect to a central body.
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Modifier | Constructor and Description |
---|---|
|
FieldLatitudeCrossingDetector(org.hipparchus.Field<T> field,
OneAxisEllipsoid body,
double latitude)
Build a new detector.
|
protected |
FieldLatitudeCrossingDetector(FieldAdaptableInterval<T> maxCheck,
T threshold,
int maxIter,
FieldEventHandler<T> handler,
OneAxisEllipsoid body,
double latitude)
Protected constructor with full parameters.
|
|
FieldLatitudeCrossingDetector(T maxCheck,
T threshold,
OneAxisEllipsoid body,
double latitude)
Build a detector.
|
Modifier and Type | Method and Description |
---|---|
protected FieldLatitudeCrossingDetector<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 detection function.
|
OneAxisEllipsoid |
getBody()
Get the body on which the geographic zone is defined.
|
double |
getLatitude()
Get the fixed latitude to be crossed (radians).
|
getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, withHandler, withMaxCheck, withMaxCheck, withMaxIter, withThreshold
public FieldLatitudeCrossingDetector(org.hipparchus.Field<T> field, OneAxisEllipsoid body, double latitude)
The new instance uses default values for maximal checking interval
(FieldAbstractDetector.DEFAULT_MAXCHECK
) and convergence threshold (FieldAbstractDetector.DEFAULT_THRESHOLD
).
field
- the type of numbers to use.body
- body on which the latitude is definedlatitude
- latitude to be crossedpublic FieldLatitudeCrossingDetector(T maxCheck, T threshold, OneAxisEllipsoid body, double latitude)
maxCheck
- maximal checking interval (s)threshold
- convergence threshold (s)body
- body on which the latitude is definedlatitude
- latitude to be crossedprotected FieldLatitudeCrossingDetector(FieldAdaptableInterval<T> maxCheck, T threshold, int maxIter, FieldEventHandler<T> handler, OneAxisEllipsoid body, double latitude)
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 occurrencesbody
- body on which the latitude is definedlatitude
- latitude to be crossedprotected FieldLatitudeCrossingDetector<T> create(FieldAdaptableInterval<T> newMaxCheck, T newThreshold, int newMaxIter, FieldEventHandler<T> newHandler)
create
in class FieldAbstractDetector<FieldLatitudeCrossingDetector<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 OneAxisEllipsoid getBody()
public double getLatitude()
public T g(FieldSpacecraftState<T> s)
The value is the spacecraft latitude minus the fixed latitude to be crossed. It is positive if the spacecraft is northward and negative if it is southward with respect to the fixed latitude.
g
in interface FieldEventDetector<T extends org.hipparchus.CalculusFieldElement<T>>
g
in class FieldAbstractDetector<FieldLatitudeCrossingDetector<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.