LDLT Cholesky decomposition of a sparse matrix and associated features.
More...
Protected Types |
enum | {
SupernodalFactorIsDirty,
MatrixLIsDirty
} |
typedef SparseMatrix< Scalar,
LowerTriangular|UnitDiagBit > | CholMatrixType |
typedef NumTraits< typename
MatrixType::Scalar >::Real | RealScalar |
typedef MatrixType::Scalar | Scalar |
typedef Matrix< Scalar,
MatrixType::ColsAtCompileTime, 1 > | VectorType |
Detailed Description
template<typename MatrixType, int Backend = DefaultBackend>
class Eigen::SparseLDLT< MatrixType, Backend >
LDLT Cholesky decomposition of a sparse matrix and associated features.
- Parameters
-
MatrixType | the type of the matrix of which we are computing the LDLT Cholesky decomposition |
- See Also
- class LDLT, class LDLT
Constructor & Destructor Documentation
Creates a dummy LDLT factorization object with flags flags.
SparseLDLT |
( |
const MatrixType & |
matrix, |
|
|
int |
flags = 0 |
|
) |
| |
|
inline |
Creates a LDLT object and compute the respective factorization of matrix using flags flags.
Member Function Documentation
bool _numeric |
( |
const MatrixType & |
matrix | ) |
|
Perform the actual factorization using the previously computed symbolic factorization
void _symbolic |
( |
const MatrixType & |
matrix | ) |
|
Perform a symbolic factorization
void compute |
( |
const MatrixType & |
a | ) |
|
Computes/re-computes the LDLT factorization
Computes / recomputes the LDLT decomposition of matrix a using the default algorithm.
- Returns
- the lower triangular matrix L
RealScalar precision |
( |
| ) |
const |
|
inline |
void setPrecision |
( |
RealScalar |
v | ) |
|
|
inline |
Sets the relative threshold value used to prune zero coefficients during the decomposition.
Setting a value greater than zero speeds up computation, and yields to an imcomplete factorization with fewer non zero coefficients. Such approximate factors are especially useful to initialize an iterative solver.
- Warning
- if precision is greater that zero, the LDLT factorization is not guaranteed to succeed even if the matrix is positive definite.
Note that the exact meaning of this parameter might depends on the actual backend. Moreover, not all backends support this feature.
- See Also
- precision()
Sets the flags. Possible values are:
- CompleteFactorization
- IncompleteFactorization
- MemoryEfficient (hint to use the memory most efficient method offered by the backend)
- SupernodalMultifrontal (implies a complete factorization if supported by the backend, overloads the MemoryEfficient flags)
- SupernodalLeftLooking (implies a complete factorization if supported by the backend, overloads the MemoryEfficient flags)
- See Also
- flags()
bool solveInPlace |
( |
MatrixBase< Derived > & |
b | ) |
const |
bool succeeded |
( |
void |
| ) |
const |
|
inline |
- Returns
- true if the factorization succeeded
- Returns
- the coefficients of the diagonal matrix D
The documentation for this class was generated from the following file: