类 IterationManager
java.lang.Object
org.hipparchus.util.IterationManager
这个抽象类提供了一个管理迭代算法的通用框架。可以设置最大迭代次数,并提供了监视当前迭代计数的方法。还提供了一个轻量级的事件框架。
-
构造器概要
构造器说明IterationManager
(int maxIterations) 创建此类的新实例。IterationManager
(int maxIterations, Incrementor.MaxCountExceededCallback callBack) 创建此类的新实例。 -
方法概要
修饰符和类型方法说明void
addIterationListener
(IterationListener listener) 将监听器附加到此管理器。void
通知所有已注册的监听器,初始阶段(主迭代循环之前)已完成。void
通知所有已注册的监听器,已执行新的迭代(在主迭代循环中)。void
通知所有已注册的监听器,已启动新的迭代(在主迭代循环中)。void
通知所有已注册的监听器,已完成最终阶段(迭代后)。int
返回此求解器的迭代次数,如果尚未执行任何迭代,则返回0。int
返回最大迭代次数。void
将迭代计数增加一,并在达到最大迭代次数时抛出异常。void
removeIterationListener
(IterationListener listener) 从当前附加到this
对象的监听器列表中移除指定的迭代监听器。void
将迭代计数设置为0。
-
构造器详细资料
-
IterationManager
public IterationManager(int maxIterations) 创建此类的新实例。- 参数:
-
maxIterations
- 最大迭代次数
-
IterationManager
创建此类的新实例。- 参数:
-
maxIterations
- 最大迭代次数 -
callBack
- 达到最大迭代次数时要调用的函数 - 抛出:
-
NullArgumentException
- 如果callBack
为null
-
-
方法详细资料
-
addIterationListener
将监听器附加到此管理器。- 参数:
-
listener
- 一个IterationListener
对象。
-
fireInitializationEvent
通知所有已注册的监听器,初始阶段(主迭代循环之前)已完成。- 参数:
-
e
-IterationEvent
对象。
-
fireIterationPerformedEvent
通知所有已注册的监听器,已执行新的迭代(在主迭代循环中)。- 参数:
-
e
-IterationEvent
对象。
-
fireIterationStartedEvent
通知所有已注册的监听器,已启动新的迭代(在主迭代循环中)。- 参数:
-
e
-IterationEvent
对象。
-
fireTerminationEvent
通知所有已注册的监听器,已完成最终阶段(迭代后)。- 参数:
-
e
-IterationEvent
对象。
-
getIterations
public int getIterations()返回此求解器的迭代次数,如果尚未执行任何迭代,则返回0。- 返回:
- 迭代次数。
-
getMaxIterations
public int getMaxIterations()返回最大迭代次数。- 返回:
- 最大迭代次数。
-
incrementIterationCount
将迭代计数增加一,并在达到最大迭代次数时抛出异常。此方法应在新迭代开始时调用。- 抛出:
-
MathIllegalStateException
- 如果达到最大迭代次数。
-
removeIterationListener
从当前附加到this
对象的监听器列表中移除指定的迭代监听器。尝试移除先前未注册的监听器不会导致任何错误。- 参数:
-
listener
- 要移除的IterationListener
。
-
resetIterationCount
public void resetIterationCount()将迭代计数设置为0。此方法必须在初始阶段调用。
-