public class ImpulseDaManeuver extends ImpulseManeuver implements ImpulseParKepManeuver
AbstractDetector.PropagationDelayType
EventDetector.Action
deltaVSat
DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
DECREASING, INCREASING, INCREASING_DECREASING
Constructor and Description |
---|
ImpulseDaManeuver(EventDetector inTrigger,
double da,
double isp,
MassProvider massModel,
String part)
Build a new instance.
|
ImpulseDaManeuver(EventDetector inTrigger,
double da,
PropulsiveProperty engine,
MassProvider massModel,
TankProperty tank)
Build a new instance using propulsive and engine property.
|
Modifier and Type | Method and Description |
---|---|
void |
computeDV(SpacecraftState state)
Method to compute the DV thanks to Keplerian parameters included in the Spacecraft state.
|
double |
getDa()
Getter for semi-major axis increment.
|
SpacecraftState |
resetState(SpacecraftState oldState)
Reset the state (including additional states) prior to continue propagation.
|
copy, eventOccurred, g, getDeltaVSat, getFrame, getIsp, getLofType, getMaxCheckInterval, getMaxIterationCount, getPropulsiveProperty, getSlopeSelection, getTankProperty, getThreshold, getTrigger, getUsedDV, hasFired, init, shouldBeRemoved
getPropagationDelayType, getSignalEmissionDate, getSignalReceptionDate, setPropagationDelayType
public ImpulseDaManeuver(EventDetector inTrigger, double da, double isp, MassProvider massModel, String part) throws PatriusException
inTrigger
- triggering event (it must generate a STOP event action to trigger the
maneuver)da
- semi major axis increment (m)isp
- engine specific impulse (s)massModel
- mass modelpart
- part of the mass model that provides the propellantPatriusException
- thrown if mass from mass provider is negativepublic ImpulseDaManeuver(EventDetector inTrigger, double da, PropulsiveProperty engine, MassProvider massModel, TankProperty tank)
inTrigger
- triggering event (it must generate a STOP event action to trigger the
maneuver)da
- semi major axis increment (m)engine
- engine property (specific impulse)massModel
- mass modeltank
- tank property gathering mass and part name informationpublic SpacecraftState resetState(SpacecraftState oldState) throws PatriusException
This method is called after the step handler has returned and before the next step is started, but only when
EventDetector.eventOccurred(fr.cnes.sirius.patrius.propagation.SpacecraftState, boolean, boolean)
has itself returned the EventDetector.Action.RESET_STATE
indicator. It allows the
user to reset the state for the next step, without perturbing the step handler of the finishing step. If the
EventDetector.eventOccurred(fr.cnes.sirius.patrius.propagation.SpacecraftState, boolean, boolean)
never returns the EventDetector.Action.RESET_STATE
indicator, this function will
never be called, and it is safe to simply return null.
resetState
in interface EventDetector
resetState
in class ImpulseManeuver
oldState
- old statePatriusException
- thrown if the mass becomes negative
(PatriusMessages.SPACECRAFT_MASS_BECOMES_NEGATIVE)public void computeDV(SpacecraftState state)
computeDV
in interface ImpulseParKepManeuver
state
- S/C statepublic double getDa()
Copyright © 2021 CNES. All rights reserved.