Class StartStopEventsTrigger<A extends EventDetector,O extends EventDetector>
- Type Parameters:
A- type of the start detectorO- type of the stop detector
- All Implemented Interfaces:
ManeuverTriggers,ResettableManeuverTriggers,EventDetectorsProvider,ParameterDriversProvider
The thruster starts firing when the start detector becomes positive. The thruster stops firing when the stop detector becomes positive. The 2 detectors should not be positive at the same time. A date detector is not suited as it does not delimit an interval. They can be both negative at the same time.
- Since:
- 11.1
- Author:
- Luc Maisonobe
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.orekit.forces.maneuvers.trigger.AbstractManeuverTriggers
AbstractManeuverTriggers.FieldTriggerHandler<S extends CalculusFieldElement<S>>, AbstractManeuverTriggers.TriggerHandler -
Field Summary
Fields inherited from interface org.orekit.propagation.events.EventDetectorsProvider
DATATION_ACCURACY -
Constructor Summary
ConstructorsConstructorDescriptionStartStopEventsTrigger(A prototypeStartDetector, O prototypeStopDetector) Simple constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected <S extends CalculusFieldElement<S>>
FieldEventDetector<S> convertStartDetector(Field<S> field, A detector) Convert a primitive firing start detector into a field firing start detector.protected <S extends CalculusFieldElement<S>>
FieldEventDetector<S> convertStopDetector(Field<S> field, O detector) Convert a primitive firing stop detector into a field firing stop detector.Get the discrete events related to the model.<S extends CalculusFieldElement<S>>
Stream<FieldEventDetector<S>> getFieldEventDetectors(Field<S> field) Get the discrete events related to the model.Getter for the firing start detector.Getter for the firing stop detector.voidinit(SpacecraftState initialState, AbsoluteDate target) Initialization method called at propagation start.protected booleanisFiringOnInitialState(SpacecraftState initialState, boolean isForward) Method to check if the thruster is firing on initialization. can be called by sub classesMethods inherited from class org.orekit.forces.maneuvers.trigger.AbstractManeuverTriggers
addResetter, addResetter, applyResetters, applyResetters, convertDetector, getFirings, init, initializeResetters, initializeResetters, isFiring, isFiring, notifyResetters, notifyResettersMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.propagation.events.EventDetectorsProvider
getDateDetector, getEventDetectors, getFieldDateDetector, getFieldEventDetectorsMethods inherited from interface org.orekit.forces.maneuvers.trigger.ManeuverTriggers
getName, getParametersDriversMethods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
Constructor Details
-
StartStopEventsTrigger
Simple constructor.Note that the
startDetectorandstopDetectorpassed as an argument are used only as a prototypes from which new detectors will be built usingManeuverTriggerDetector. The original event handlers from the prototype will be ignored and never called.If the trigger is used in a
field-based propagation, the detector will be automatically converted to a field equivalent. Beware however that theeventOccurredof the converted propagator will call the method with the same name in the prototype detector, in order to get the correct return value.- Parameters:
prototypeStartDetector- prototype detector for firing startprototypeStopDetector- prototype detector for firing stop
-
-
Method Details
-
getStartDetector
Getter for the firing start detector.- Returns:
- firing start detector
-
getStopDetector
Getter for the firing stop detector.- Returns:
- firing stop detector
-
init
Initialization method called at propagation start.The default implementation does nothing.
- Specified by:
initin interfaceManeuverTriggers- Overrides:
initin classAbstractManeuverTriggers- Parameters:
initialState- initial spacecraft state (at the start of propagation).target- date of propagation. Not equal toinitialState.getDate().
-
isFiringOnInitialState
Method to check if the thruster is firing on initialization. can be called by sub classes- Specified by:
isFiringOnInitialStatein classAbstractManeuverTriggers- Parameters:
initialState- initial spacecraft stateisForward- if true, propagation will be in the forward direction- Returns:
- true if firing in propagation direction
-
getEventDetectors
Get the discrete events related to the model.This method is not intended to be called several time, only once by a propagator, as it has the side effect of rebuilding the events detectors when called
- Returns:
- stream of event detectors
-
getFieldEventDetectors
public <S extends CalculusFieldElement<S>> Stream<FieldEventDetector<S>> getFieldEventDetectors(Field<S> field) Get the discrete events related to the model.This method is not intended to be called several time, only once by a propagator, as it has the side effect of rebuilding the events detectors when called
- Type Parameters:
S- extends CalculusFieldElement<T>- Parameters:
field- field to which the state belongs- Returns:
- stream of event detectors
-
convertStartDetector
protected <S extends CalculusFieldElement<S>> FieldEventDetector<S> convertStartDetector(Field<S> field, A detector) Convert a primitive firing start detector into a field firing start detector.The
FieldEventDetectionSettingsmust be set up in conformance with the non-field detector.A default implementation is provided but might need to be overridden in specific cases.
- Type Parameters:
S- type of the field elements- Parameters:
field- field to which the state belongsdetector- primitive firing start detector to convert- Returns:
- converted firing start detector
-
convertStopDetector
protected <S extends CalculusFieldElement<S>> FieldEventDetector<S> convertStopDetector(Field<S> field, O detector) Convert a primitive firing stop detector into a field firing stop detector.The
FieldEventDetectionSettingsmust be set up in conformance with the non-field detector.A default implementation is provided but might need to be overridden in specific cases.
- Type Parameters:
S- type of the field elements- Parameters:
field- field to which the state belongsdetector- primitive firing stop detector to convert- Returns:
- converted firing stop detector
-