Eigen  3.3.3
Eigen::UmfPackLU< _MatrixType > Class Template Reference

Detailed Description

template<typename _MatrixType>
class Eigen::UmfPackLU< _MatrixType >

A sparse LU factorization and solver based on UmfPack.

This class allows to solve for A.X = B sparse linear problems via a LU factorization using the UmfPack library. The sparse matrix A must be squared and full rank. The vectors or matrices X and B can be either dense or sparse.

Warning:
The input matrix A should be in a compressed and column-major form. Otherwise an expensive copy will be made. You can call the inexpensive makeCompressed() to get a compressed matrix.
Template Parameters:
_MatrixTypethe type of the sparse matrix A, it must be a SparseMatrix<>

This class follows the sparse solver concept .

See also:
Sparse solver concept, class SparseLU
+ Inheritance diagram for Eigen::UmfPackLU< _MatrixType >:

List of all members.

Public Member Functions

template<typename InputMatrixType >
void analyzePattern (const InputMatrixType &matrix)
template<typename InputMatrixType >
void compute (const InputMatrixType &matrix)
template<typename InputMatrixType >
void factorize (const InputMatrixType &matrix)
ComputationInfo info () const
 Reports whether previous computation was successful.
const UmfpackControlumfpackControl () const
UmfpackControlumfpackControl ()
int umfpackFactorizeReturncode () const

Member Function Documentation

template<typename _MatrixType >
template<typename InputMatrixType >
void Eigen::UmfPackLU< _MatrixType >::analyzePattern ( const InputMatrixType &  matrix) [inline]

Performs a symbolic decomposition on the sparcity of matrix.

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

See also:
factorize(), compute()
template<typename _MatrixType >
template<typename InputMatrixType >
void Eigen::UmfPackLU< _MatrixType >::compute ( const InputMatrixType &  matrix) [inline]

Computes the sparse Cholesky decomposition of matrix Note that the matrix should be column-major, and in compressed format for best performance.

See also:
SparseMatrix::makeCompressed().
template<typename _MatrixType >
template<typename InputMatrixType >
void Eigen::UmfPackLU< _MatrixType >::factorize ( const InputMatrixType &  matrix) [inline]

Performs a numeric decomposition of matrix

The given matrix must has the same sparcity than the matrix on which the pattern anylysis has been performed.

See also:
analyzePattern(), compute()
template<typename _MatrixType >
ComputationInfo Eigen::UmfPackLU< _MatrixType >::info ( ) const [inline]

Reports whether previous computation was successful.

Returns:
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.
template<typename _MatrixType >
const UmfpackControl& Eigen::UmfPackLU< _MatrixType >::umfpackControl ( ) const [inline]

Provides access to the control settings array used by UmfPack.

If this array contains NaN's, the default values are used.

See UMFPACK documentation for details.

template<typename _MatrixType >
UmfpackControl& Eigen::UmfPackLU< _MatrixType >::umfpackControl ( ) [inline]

Provides access to the control settings array used by UmfPack.

If this array contains NaN's, the default values are used.

See UMFPACK documentation for details.

template<typename _MatrixType >
int Eigen::UmfPackLU< _MatrixType >::umfpackFactorizeReturncode ( ) const [inline]

Provides the return status code returned by UmfPack during the numeric factorization.

See also:
factorize(), compute()

The documentation for this class was generated from the following file:
 All Classes Functions Variables Typedefs Enumerations Enumerator Friends