Sparse linear algebra » Reference » IterativeLinearSolvers module module

Contents

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:

These iterative solvers are associated with some preconditioners:

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.