Class xlifepp::UmfPackLU#

template<typename MatrixType>
class UmfPackLU#

Wrapper class of Umfpack.

Public Types

typedef MatrixType::ScalarType ScalarType#

scalar type of matrix (real_t or Complex)

Public Functions

inline UmfPackLU()#

void constructor

inline UmfPackLU(const MatrixType &matrix)#

constructor from matrix, perform factorisation

inline ~UmfPackLU()#

destructor (deallocate umfpack structure)

inline void analyzePattern(const MatrixType &matrix)#

Performs a symbolic decomposition on the sparcity of matrix.

This function is particularly useful when solving several problems having the same structure.

inline number_t cols() const#

accessor to number of matrix columns

inline void compute(const MatrixType &matrix)#

Computes the sparse Cholesky decomposition of a matrix

inline void factorize(const MatrixType &matrix)#

Performs a numeric decomposition of matrix The given matrix must has the same matrix on which the pattern analysis has been performed.

inline ComputationInfo info() const#

Reports whether previous computation was successful.

Returns:

Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.

inline const LUMatrixType &matrixL() const#

access to L factor

inline const LUMatrixType &matrixU() const#

access to U factor

inline const std::vector<int> &permutationP() const#

access to row permutation vector

inline const std::vector<int> &permutationQ() const#

access to col permutation vector

inline number_t rows() const#

accessor to number of matrix rows

inline const std::vector<real_t> &scaleFactorR() const#

access to scale factors vector

struct LUMatrixType#

structure to store matrix factors L and U