WPILibC++ 2023.4.3
|
A preconditioner based on the digonal entries. More...
Public Types | |
enum | { ColsAtCompileTime = Dynamic , MaxColsAtCompileTime = Dynamic } |
typedef Vector::StorageIndex | StorageIndex |
Public Member Functions | |
DiagonalPreconditioner () | |
template<typename MatType > | |
DiagonalPreconditioner (const MatType &mat) | |
EIGEN_CONSTEXPR Index | rows () const EIGEN_NOEXCEPT |
EIGEN_CONSTEXPR Index | cols () const EIGEN_NOEXCEPT |
template<typename MatType > | |
DiagonalPreconditioner & | analyzePattern (const MatType &) |
template<typename MatType > | |
DiagonalPreconditioner & | factorize (const MatType &mat) |
template<typename MatType > | |
DiagonalPreconditioner & | compute (const MatType &mat) |
template<typename Rhs , typename Dest > | |
void | _solve_impl (const Rhs &b, Dest &x) const |
template<typename Rhs > | |
const Solve< DiagonalPreconditioner, Rhs > | solve (const MatrixBase< Rhs > &b) const |
ComputationInfo | info () |
Protected Attributes | |
Vector | m_invdiag |
bool | m_isInitialized |
A preconditioner based on the digonal entries.
This class allows to approximately solve for A.x = b problems assuming A is a diagonal matrix. In other words, this preconditioner neglects all off diagonal entries and, in Eigen's language, solves for:
_Scalar | the type of the scalar. |
\implsparsesolverconcept
This preconditioner is suitable for both selfadjoint and general problems. The diagonal entries are pre-inverted and stored into a dense vector.
typedef Vector::StorageIndex Eigen::DiagonalPreconditioner< _Scalar >::StorageIndex |
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |