module
IterativeLinearSolvers moduleContents
- Reference
This module currently provides iterative methods to solve problems of the form A
x
= b
, where A
is a squared matrix, usually very large and sparse. Those solvers are accessible via the following classes:
- ConjugateGradient for selfadjoint (hermitian) matrices,
- LeastSquaresConjugateGradient for rectangular least-square problems,
- BiCGSTAB for general square matrices.
These iterative solvers are associated with some preconditioners:
- IdentityPreconditioner - not really useful
- DiagonalPreconditioner - also called Jacobi preconditioner, work very well on diagonal dominant matrices.
- IncompleteLUT - incomplete LU factorization with dual thresholding
Such problems can also be solved using the direct sparse decomposition modules: SparseCholesky, CholmodSupport, UmfPackSupport, SuperLUSupport.
#include <Eigen/IterativeLinearSolvers>
Classes
-
template<typename _MatrixType, typename _Preconditioner>class Eigen::BiCGSTAB
- A bi conjugate gradient stabilized solver for sparse square problems.
-
template<typename _MatrixType, int _UpLo, typename _Preconditioner>class Eigen::ConjugateGradient
- A conjugate gradient solver for sparse (or dense) self-adjoint problems.
-
template<typename _Scalar>class Eigen::DiagonalPreconditioner
- A preconditioner based on the digonal entries.
- class Eigen::IdentityPreconditioner
- A naive preconditioner which approximates any matrix as the identity matrix.
-
template<typename _Scalar, typename _StorageIndex = int>class Eigen::IncompleteLUT
- Incomplete LU factorization with dual-threshold strategy.
-
template<typename Derived>class Eigen::IterativeSolverBase
- Base class for linear iterative solvers.
-
template<typename _Scalar>class Eigen::LeastSquareDiagonalPreconditioner
- Jacobi preconditioner for LeastSquaresConjugateGradient.
-
template<typename _MatrixType, typename _Preconditioner>class Eigen::LeastSquaresConjugateGradient
- A conjugate gradient solver for sparse (or dense) least-square problems.
-
template<typename Decomposition, typename RhsType, typename GuessType>class Eigen::SolveWithGuess
- Pseudo expression representing a solving operation.