Iterative solver for solving linear systems using the truncated conjugate gradient method. More...
#include <ikarus/linearalgebra/truncatedconjugategradient.hh>
Public Types | |
enum | { UpLo = upLo } |
typedef IterativeSolverBase< TruncatedConjugateGradient > | Base |
using | MatrixType = M |
using | Scalar = typename MatrixType::Scalar |
using | RealScalar = typename MatrixType::RealScalar |
using | Preconditioner = PC |
Public Member Functions | |
TruncatedConjugateGradient (TruncatedConjugateGradient &&other) noexcept | |
TCGInfo< typename MatrixType::RealScalar > | getInfo () |
Get information about the truncated conjugate gradient algorithm. More... | |
void | setInfo (TCGInfo< typename MatrixType::RealScalar > alginfo) |
Set information about the truncated conjugate gradient algorithm. More... | |
TruncatedConjugateGradient () | |
template<typename MatrixDerived > | |
TruncatedConjugateGradient (const EigenBase< MatrixDerived > &A) | |
~TruncatedConjugateGradient () | |
template<typename Rhs , typename Dest > | |
void | _solve_vector_with_guess_impl (const Rhs &b, Dest &x) const |
M | Type of the matrix A. |
upLo | Type of the triangular part of the matrix (Lower or Upper or both). |
PC | Type of the preconditioner. |
typedef IterativeSolverBase<TruncatedConjugateGradient> Eigen::TruncatedConjugateGradient< M, upLo, PC >::Base |
using Eigen::TruncatedConjugateGradient< M, upLo, PC >::MatrixType = M |
using Eigen::TruncatedConjugateGradient< M, upLo, PC >::Preconditioner = PC |
using Eigen::TruncatedConjugateGradient< M, upLo, PC >::RealScalar = typename MatrixType::RealScalar |
using Eigen::TruncatedConjugateGradient< M, upLo, PC >::Scalar = typename MatrixType::Scalar |
|
inlinenoexcept |
|
inline |
Default constructor.
|
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().
|
inline |
|
inline |
|
inline |
|
inline |
_alginfo | Information about the algorithm. |