public class PatriusStepNormalizer extends Object implements PatriusStepHandler
PatriusFixedStepHandler
into a PatriusStepHandler
.
It mirrors the StepNormalizer
interface from commons-math
but provides a space-dynamics interface to the methods.
Modified to take into account propagation direction (in time). Lines 111 to 115 Cf A-1031.
Constructor and Description |
---|
PatriusStepNormalizer(double hIn,
PatriusFixedStepHandler handlerIn)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
handleStep(PatriusStepInterpolator interpolator,
boolean isLast)
Handle the last accepted step.
|
void |
init(SpacecraftState s0,
AbsoluteDate t)
Initialize step handler at the start of a propagation.
|
boolean |
requiresDenseOutput()
Determines whether this handler needs dense output.
|
public PatriusStepNormalizer(double hIn, PatriusFixedStepHandler handlerIn)
hIn
- fixed time step (sign is not used)handlerIn
- fixed time step handler to wrappublic boolean requiresDenseOutput()
public void init(SpacecraftState s0, AbsoluteDate t)
This method is called once at the start of the propagation. It may be used by the step handler to initialize some internal data if needed.
init
in interface PatriusStepHandler
s0
- initial statet
- target time for the integrationpublic void handleStep(PatriusStepInterpolator interpolator, boolean isLast) throws PropagationException
handleStep
in interface PatriusStepHandler
interpolator
- interpolator for the last accepted step. For
efficiency purposes, the various propagators reuse the same
object on each call, so if the instance wants to keep it across
all calls (for example to provide at the end of the propagation a
continuous model valid throughout the propagation range), it
should build a local copy using the clone method and store this
copy.isLast
- true if the step is the last onePropagationException
- this exception is propagated to the
caller if the underlying user function triggers oneCopyright © 2020 CNES. All rights reserved.