Class PreconditionedIterativeLinearSolver

  • Direct Known Subclasses:
    ConjugateGradient, SymmLQ

    public abstract class PreconditionedIterativeLinearSolver
    extends IterativeLinearSolver

    This abstract class defines preconditioned iterative solvers. When A is ill-conditioned, instead of solving system A · x = b directly, it is preferable to solve either \[ (M \cdot A) \cdot x = M \cdot b \] (left preconditioning), or \[ (A \cdot M) \cdot y = b, \text{followed by} M \cdot y = x \]

    (right preconditioning), where M approximates in some way A-1, while matrix-vector products of the type \(M \cdot y\) remain comparatively easy to compute. In this library, M (not M-1!) is called the preconditioner.

    Concrete implementations of this abstract class must be provided with the preconditioner M, as a RealLinearOperator.