ARPACK-Armadillo
|
#include <SymmetricLDL.h>
Public Member Functions | |
SymmetricLDL () | |
SymmetricLDL (const Matrix &mat, const char uplo= 'L') | |
void | compute (const Matrix &mat, const char uplo= 'L') |
void | solve (Vector &vec_in, Vector &vec_out) |
Perform the LDL decomposition of a symmetric (possibly indefinite) matrix.
Scalar | The element type of the matrix. Currently supported types are float and double . |
This class is a wrapper of the Lapack functions _sytrf
and _sytrs
.
Definition at line 25 of file SymmetricLDL.h.
|
inline |
Default constructor to create an object that stores the LDL decomposition of a symmetric matrix. Factorization can be performed later by calling the compute() method.
Definition at line 44 of file SymmetricLDL.h.
|
inline |
Constructor to create an object that performs and stores the LDL decomposition of a symmetric matrix mat
.
mat | Matrix type can be arma::mat or arma::fmat , depending on the template parameter Scalar defined. |
uplo | 'L' to indicate using the lower triangular part of the matrix, and 'U' for upper triangular part. |
Definition at line 57 of file SymmetricLDL.h.
|
inline |
Conduct the LDL factorization of a symmetric matrix.
mat | Matrix type can be arma::mat or arma::fmat , depending on the template parameter Scalar defined. |
uplo | 'L' to indicate using the lower triangular part of the matrix, and 'U' for upper triangular part. |
Definition at line 73 of file SymmetricLDL.h.
|
inline |
Use the computed LDL factorization to solve linear equation \(Ax=b\), where \(A\) is the matrix factorized.
vec_in | The vector \(b\). |
vec_out | The vector \(x\) to be solved, which will be overwritten by the calculated solution. |
Vector type can be arma::vec
or arma::fvec
, depending on the template parameter Scalar
defined.
Definition at line 113 of file SymmetricLDL.h.