Base class for linear iterative solvers. More...
Inheritance diagram for Eigen::IterativeSolverBase< Derived >:Public Types | |
| enum | { ColsAtCompileTime , MaxColsAtCompileTime } |
| typedef internal::traits< Derived >::MatrixType | MatrixType |
| typedef internal::traits< Derived >::Preconditioner | Preconditioner |
| typedef MatrixType::RealScalar | RealScalar |
| typedef MatrixType::Scalar | Scalar |
| typedef MatrixType::StorageIndex | StorageIndex |
Public Member Functions | |
| template<typename Rhs , typename Dest > | |
| void | _solve_impl (const Rhs &b, Dest &x) const |
| template<typename Rhs , typename DestDerived > | |
| std::enable_if_t< Rhs::ColsAtCompileTime!=1 &&DestDerived::ColsAtCompileTime!=1 > | _solve_with_guess_impl (const Rhs &b, MatrixBase< DestDerived > &aDest) const |
| template<typename Rhs , typename DestDerived > | |
| std::enable_if_t< Rhs::ColsAtCompileTime==1||DestDerived::ColsAtCompileTime==1 > | _solve_with_guess_impl (const Rhs &b, MatrixBase< DestDerived > &dest) const |
| template<typename Rhs , typename DestDerived > | |
| void | _solve_with_guess_impl (const Rhs &b, SparseMatrixBase< DestDerived > &aDest) const |
| template<typename MatrixDerived > | |
| Derived & | analyzePattern (const EigenBase< MatrixDerived > &A) |
| EIGEN_CONSTEXPR Index | cols () const EIGEN_NOEXCEPT |
| template<typename MatrixDerived > | |
| Derived & | compute (const EigenBase< MatrixDerived > &A) |
| Derived & | derived () |
| const Derived & | derived () const |
| RealScalar | error () const |
| template<typename MatrixDerived > | |
| Derived & | factorize (const EigenBase< MatrixDerived > &A) |
| ComputationInfo | info () const |
| Index | iterations () const |
| IterativeSolverBase () | |
| template<typename MatrixDerived > | |
| IterativeSolverBase (const EigenBase< MatrixDerived > &A) | |
| IterativeSolverBase (IterativeSolverBase &&)=default | |
| Index | maxIterations () const |
| Preconditioner & | preconditioner () |
| const Preconditioner & | preconditioner () const |
| EIGEN_CONSTEXPR Index | rows () const EIGEN_NOEXCEPT |
| Derived & | setMaxIterations (Index maxIters) |
| Derived & | setTolerance (const RealScalar &tolerance) |
| template<typename Rhs , typename Guess > | |
| const SolveWithGuess< Derived, Rhs, Guess > | solveWithGuess (const MatrixBase< Rhs > &b, const Guess &x0) const |
| RealScalar | tolerance () const |
| ~IterativeSolverBase () | |
Public Member Functions inherited from Eigen::SparseSolverBase< Derived > | |
| Derived & | derived () |
| const Derived & | derived () const |
| template<typename Rhs > | |
| const Solve< Derived, Rhs > | solve (const MatrixBase< Rhs > &b) const |
| template<typename Rhs > | |
| const Solve< Derived, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
| SparseSolverBase () | |
| SparseSolverBase (SparseSolverBase &&other) | |
| ~SparseSolverBase () | |
Protected Types | |
| typedef MatrixWrapper::ActualMatrixType | ActualMatrixType |
| typedef SparseSolverBase< Derived > | Base |
| typedef internal::generic_matrix_wrapper< MatrixType > | MatrixWrapper |
Protected Member Functions | |
| template<typename InputType > | |
| void | grab (const InputType &A) |
| void | init () |
| const ActualMatrixType & | matrix () const |
Protected Attributes | |
| bool | m_analysisIsOk |
| RealScalar | m_error |
| bool | m_factorizationIsOk |
| ComputationInfo | m_info |
| bool | m_isInitialized |
| Index | m_iterations |
| MatrixWrapper | m_matrixWrapper |
| Index | m_maxIterations |
| Preconditioner | m_preconditioner |
| RealScalar | m_tolerance |
Protected Attributes inherited from Eigen::SparseSolverBase< Derived > | |
| bool | m_isInitialized |
Base class for linear iterative solvers.
Definition at line 145 of file IterativeSolverBase.h.
|
protected |
Definition at line 422 of file IterativeSolverBase.h.
|
protected |
Definition at line 148 of file IterativeSolverBase.h.
| typedef internal::traits<Derived>::MatrixType Eigen::IterativeSolverBase< Derived >::MatrixType |
Definition at line 152 of file IterativeSolverBase.h.
|
protected |
Definition at line 421 of file IterativeSolverBase.h.
| typedef internal::traits<Derived>::Preconditioner Eigen::IterativeSolverBase< Derived >::Preconditioner |
Definition at line 153 of file IterativeSolverBase.h.
| typedef MatrixType::RealScalar Eigen::IterativeSolverBase< Derived >::RealScalar |
Definition at line 156 of file IterativeSolverBase.h.
| typedef MatrixType::Scalar Eigen::IterativeSolverBase< Derived >::Scalar |
Definition at line 154 of file IterativeSolverBase.h.
| typedef MatrixType::StorageIndex Eigen::IterativeSolverBase< Derived >::StorageIndex |
Definition at line 155 of file IterativeSolverBase.h.
| anonymous enum |
| Enumerator | |
|---|---|
| ColsAtCompileTime | |
| MaxColsAtCompileTime | |
Definition at line 158 of file IterativeSolverBase.h.
|
inline |
|
inlineexplicit |
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().
Definition at line 184 of file IterativeSolverBase.h.
|
default |
|
inline |
Definition at line 194 of file IterativeSolverBase.h.
|
inline |
Definition at line 405 of file IterativeSolverBase.h.
|
inline |
Definition at line 373 of file IterativeSolverBase.h.
|
inline |
Definition at line 398 of file IterativeSolverBase.h.
|
inline |
Definition at line 339 of file IterativeSolverBase.h.
|
inline |
Initializes the iterative solver for the sparsity pattern of the matrix A for further solving Ax=b problems.
Currently, this function mostly calls analyzePattern on the preconditioner. In the future we might, for instance, implement column reordering for faster matrix vector products.
Definition at line 202 of file IterativeSolverBase.h.
|
inline |
Definition at line 258 of file IterativeSolverBase.h.
|
inline |
Initializes the iterative solver with the matrix A for further solving Ax=b problems.
Currently, this function mostly initializes/computes the preconditioner. In the future we might, for instance, implement column reordering for faster matrix vector products.
Definition at line 243 of file IterativeSolverBase.h.
|
inline |
Definition at line 83 of file SparseSolverBase.h.
|
inline |
Definition at line 84 of file SparseSolverBase.h.
|
inline |
Definition at line 310 of file IterativeSolverBase.h.
|
inline |
Initializes the iterative solver with the numerical values of the matrix A for further solving Ax=b problems.
Currently, this function mostly calls factorize on the preconditioner.
Definition at line 222 of file IterativeSolverBase.h.
|
inlineprotected |
Definition at line 430 of file IterativeSolverBase.h.
|
inline |
Definition at line 331 of file IterativeSolverBase.h.
|
inlineprotected |
Definition at line 412 of file IterativeSolverBase.h.
|
inline |
Definition at line 301 of file IterativeSolverBase.h.
|
inlineprotected |
Definition at line 424 of file IterativeSolverBase.h.
|
inline |
Definition at line 286 of file IterativeSolverBase.h.
|
inline |
Definition at line 277 of file IterativeSolverBase.h.
|
inline |
Definition at line 280 of file IterativeSolverBase.h.
|
inline |
Definition at line 255 of file IterativeSolverBase.h.
|
inline |
Sets the max number of iterations. Default is twice the number of columns of the matrix.
Definition at line 294 of file IterativeSolverBase.h.
|
inline |
Sets the tolerance threshold used by the stopping criteria.
This value is used as an upper bound to the relative residual error: |Ax-b|/|b|. The default value is the machine precision given by NumTraits<Scalar>::epsilon()
Definition at line 270 of file IterativeSolverBase.h.
|
inline |
Definition at line 323 of file IterativeSolverBase.h.
|
inline |
Definition at line 263 of file IterativeSolverBase.h.
|
mutableprotected |
Definition at line 444 of file IterativeSolverBase.h.
|
mutableprotected |
Definition at line 441 of file IterativeSolverBase.h.
|
protected |
Definition at line 444 of file IterativeSolverBase.h.
|
mutableprotected |
Definition at line 443 of file IterativeSolverBase.h.
|
mutableprotected |
Definition at line 123 of file SparseSolverBase.h.
|
mutableprotected |
Definition at line 442 of file IterativeSolverBase.h.
|
protected |
Definition at line 435 of file IterativeSolverBase.h.
|
protected |
Definition at line 438 of file IterativeSolverBase.h.
|
protected |
Definition at line 436 of file IterativeSolverBase.h.
|
protected |
Definition at line 439 of file IterativeSolverBase.h.