Interface EventDetectorsProvider

    • Field Detail

      • DATATION_ACCURACY

        static final double DATATION_ACCURACY
        Accuracy of switching events dates (s).
        See Also:
        Constant Field Values
    • Method Detail

      • getEventDetectors

        Stream<EventDetector> 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

        <T extends CalculusFieldElement<T>> Stream<FieldEventDetector<T>> getFieldEventDetectors​(Field<T> 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:
        T - extends CalculusFieldElement<T>
        Parameters:
        field - field to which the state belongs
        Returns:
        stream of event detectors
      • getEventDetectors

        default Stream<EventDetector> getEventDetectors​(List<ParameterDriver> parameterDrivers)
        Get the discrete events related to the model from a list of ParameterDriver

        Date detectors are used to cleanly stop the propagator and reset the state derivatives at transition dates (if any) of the parameter drivers.

        This method is not intended to be called several times, only once by a propagator, as it has the side effect of rebuilding the events detectors when called.

        Parameters:
        parameterDrivers - list of parameter drivers
        Returns:
        stream of event detectors
      • getFieldEventDetectors

        default <T extends CalculusFieldElement<T>> Stream<FieldEventDetector<T>> getFieldEventDetectors​(Field<T> field,
                                                                                                         List<ParameterDriver> parameterDrivers)
        Get the discrete events related to the model from a list of ParameterDriver

        Date detectors are used to cleanly stop the propagator and reset the state derivatives at transition dates (if any) of the parameter drivers.

        This method is not intended to be called several times, only once by a propagator, as it has the side effect of rebuilding the events detectors when called.

        Type Parameters:
        T - extends CalculusFieldElement<T>
        Parameters:
        parameterDrivers - list of parameter drivers
        field - field to which the state belongs
        Returns:
        stream of event detectors
      • getDateDetector

        default DateDetector getDateDetector​(TimeStamped... timeStampeds)
        Method building dates' detector.
        Parameters:
        timeStampeds - dates to detect
        Returns:
        dates detector
        Since:
        13.0
      • getFieldDateDetector

        default <T extends CalculusFieldElement<T>> FieldDateDetector<T> getFieldDateDetector​(Field<T> field,
                                                                                              TimeStamped... timeStampeds)
        Method building dates' detector.
        Type Parameters:
        T - field type
        Parameters:
        field - field
        timeStampeds - dates to detect
        Returns:
        dates detector
        Since:
        13.0