类 IterativeLinearSolverEvent

java.lang.Object
java.util.EventObject
org.hipparchus.util.IterationEvent
org.hipparchus.linear.IterativeLinearSolverEvent
所有已实现的接口:
Serializable
直接已知子类:
DefaultIterativeLinearSolverEvent

public abstract class IterativeLinearSolverEvent extends IterationEvent
This is the base class for all events occurring during the iterations of a IterativeLinearSolver.
另请参阅:
  • 构造器详细资料

    • IterativeLinearSolverEvent

      public IterativeLinearSolverEvent(Object source, int iterations)
      创建此类的新实例。
      参数:
      source - 最初发生事件的迭代算法
      iterations - 创建this事件时执行的迭代次数
  • 方法详细资料

    • getRightHandSideVector

      public abstract RealVector getRightHandSideVector()
      返回要解决的线性系统的当前右手边。此方法应返回右手边向量的不可修改视图,或实际右手边向量的深度副本,以免损害源IterativeLinearSolver的后续迭代。
      返回:
      右手边向量b
    • getNormOfResidual

      public abstract double getNormOfResidual()
      返回残差的范数。返回的值不需要是精确的。相反,应返回所谓更新残差的范数(如果可用)。例如,共轭梯度方法计算一系列残差,其范数易于计算。但是,由于舍入误差的累积,此残差可能在一些迭代后与真实残差不同。例如,A. Greenbaum和Z. Strakos,预测有限精度Lanzos和共轭梯度计算的行为,技术报告538,纽约大学计算机科学系,1991年(可在此处获取)。
      返回:
      残差的范数,||r||
    • getResidual

      public RealVector getResidual()

      返回残差。这是一个可选操作,因为并非所有迭代线性求解器都提供更新的残差向量的廉价估计,在这种情况下

      默认实现会抛出一个MathRuntimeException。如果重写此方法,则providesResidual()也应该被重写。

      返回:
      更新的残差,r
    • getSolution

      public abstract RealVector getSolution()
      返回要解决的线性系统的当前解的估计值。此方法应返回当前解的不可修改视图,或实际当前解的深度副本,以免损害源IterativeLinearSolver的后续迭代。
      返回:
      解,x
    • providesResidual

      public boolean providesResidual()
      如果支持getResidual(),则返回true。默认实现返回false
      返回:
      如果getResidual()抛出一个MathRuntimeException,则返回false