类 StepEndEventState

java.lang.Object
org.hipparchus.ode.events.StepEndEventState
所有已实现的接口:
EventState

public class StepEndEventState extends Object implements EventState
此类处理在步骤结束时触发的一个事件处理器的状态。
从以下版本开始:
3.0
  • 构造器详细资料

    • StepEndEventState

      public StepEndEventState(ODEStepEndHandler handler)
      简单构造函数。
      参数:
      handler - 步骤结束处理程序
  • 方法详细资料

    • getHandler

      public ODEStepEndHandler getHandler()
      获取底层步骤结束处理程序。
      返回:
      底层步骤结束处理程序
    • init

      public void init(ODEStateAndDerivative s0, double t)
      在积分开始时初始化处理程序。

      此方法在积分开始时调用一次。如果需要,处理程序可以用来初始化一些内部数据。

      指定者:
      init 在接口中 EventState
      参数:
      s0 - 初始状态
      t - 积分的目标时间
    • setStepEnd

      public void setStepEnd(double stepEnd)
      设置步骤结束。
      参数:
      stepEnd - 步骤结束
    • evaluateStep

      public boolean evaluateStep(ODEStateInterpolator interpolator)
      评估对处理程序提议步骤的影响。
      指定者:
      evaluateStep 在接口中 EventState
      参数:
      interpolator - 提议步骤的步骤插值器
      返回:
      如果事件处理程序在提议步骤结束之前触发事件,则返回true
    • getEventTime

      public double getEventTime()
      获取当前步骤中触发的事件的发生时间。
      指定者:
      getEventTime 在接口中 EventState
      返回:
      当前步骤中触发的事件的发生时间,如果没有事件触发则返回无穷大
    • doEvent

      public EventOccurrence doEvent(ODEStateAndDerivative state)
      通知用户的监听器事件。该事件完全在此方法调用中发生,包括必要时调用ODEEventHandler.resetState(ODEEventDetector, ODEStateAndDerivative)
      指定者:
      doEvent 在接口中 EventState
      参数:
      state - 事件发生时的状态。这必须与当前值EventState.getEventTime()相同。
      返回:
      用户请求的操作以及如果操作是Action.RESET_STATE时的新状态。否则新状态为state。停止时间指示了如果操作是Action.STOP时积分应该停止的时间。这保证了积分将在根之后或根上停止,以便可以安全地重新启动积分。