Base class for linear iterative solvers. More...
#include <IterativeSolverBase.h>
Inherits noncopyable.
Public Member Functions | |
| Derived & | analyzePattern (const MatrixType &A) |
| Derived & | compute (const MatrixType &A) |
| RealScalar | error () const |
| Derived & | factorize (const MatrixType &A) |
| ComputationInfo | info () const |
| int | iterations () const |
| IterativeSolverBase () | |
| IterativeSolverBase (const MatrixType &A) | |
| int | maxIterations () const |
| Preconditioner & | preconditioner () |
| const Preconditioner & | preconditioner () const |
| Derived & | setMaxIterations (int maxIters) |
| Derived & | setTolerance (RealScalar tolerance) |
| template<typename Rhs > | |
| const internal::solve_retval < Derived, Rhs > | solve (const MatrixBase< Rhs > &b) const |
| template<typename Rhs > | |
| const internal::sparse_solve_retval < IterativeSolverBase, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
| RealScalar | tolerance () const |
Base class for linear iterative solvers.
| IterativeSolverBase | ( | ) | [inline] |
Default constructor.
| IterativeSolverBase | ( | const MatrixType & | A | ) | [inline] |
Initialize the solver with matrix A for further Ax=b solving.
This constructor is a shortcut for the default constructor followed by a call to compute().
| Derived& analyzePattern | ( | const MatrixType & | A | ) | [inline] |
Initializes the iterative solver for the sparcity pattern of the matrix A for further solving Ax=b problems.
Currently, this function mostly call analyzePattern on the preconditioner. In the future we might, for instance, implement column reodering for faster matrix vector products.
| Derived& compute | ( | const MatrixType & | A | ) | [inline] |
Initializes the iterative solver with the matrix A for further solving Ax=b problems.
Currently, this function mostly initialized/compute the preconditioner. In the future we might, for instance, implement column reodering for faster matrix vector products.
Referenced by IterativeSolverBase< ConjugateGradient< _MatrixType, _UpLo, _Preconditioner > >::IterativeSolverBase().
| RealScalar error | ( | ) | const [inline] |
| Derived& factorize | ( | const MatrixType & | A | ) | [inline] |
Initializes the iterative solver with the numerical values of the matrix A for further solving Ax=b problems.
Currently, this function mostly call factorize on the preconditioner.
| ComputationInfo info | ( | ) | const [inline] |
| int iterations | ( | ) | const [inline] |
| int maxIterations | ( | ) | const [inline] |
| Preconditioner& preconditioner | ( | ) | [inline] |
| const Preconditioner& preconditioner | ( | ) | const [inline] |
| Derived& setMaxIterations | ( | int | maxIters | ) | [inline] |
Sets the max number of iterations
| Derived& setTolerance | ( | RealScalar | tolerance | ) | [inline] |
Sets the tolerance threshold used by the stopping criteria
| const internal::solve_retval<Derived, Rhs> solve | ( | const MatrixBase< Rhs > & | b | ) | const [inline] |
using the current decomposition of A.| const internal::sparse_solve_retval<IterativeSolverBase, Rhs> solve | ( | const SparseMatrixBase< Rhs > & | b | ) | const [inline] |
using the current decomposition of A.| RealScalar tolerance | ( | ) | const [inline] |
Referenced by IterativeSolverBase< ConjugateGradient< _MatrixType, _UpLo, _Preconditioner > >::setTolerance().