Eigen  3.3.4
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
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 >:

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. More...
 
const UmfpackControlumfpackControl () const
 
UmfpackControlumfpackControl ()
 
int umfpackFactorizeReturncode () const
 
void umfpackReportControl ()
 
void umfpackReportInfo ()
 
void umfpackReportStatus ()
 
- Public Member Functions inherited from Eigen::SparseSolverBase< UmfPackLU< _MatrixType > >
const Solve< UmfPackLU
< _MatrixType >, Rhs > 
solve (const MatrixBase< Rhs > &b) const
 
const Solve< UmfPackLU
< _MatrixType >, Rhs > 
solve (const SparseMatrixBase< Rhs > &b) const
 
 SparseSolverBase ()
 

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()
template<typename _MatrixType >
void Eigen::UmfPackLU< _MatrixType >::umfpackReportControl ( )
inline

Prints the current UmfPack control settings.

See Also
umfpackControl()
template<typename _MatrixType >
void Eigen::UmfPackLU< _MatrixType >::umfpackReportInfo ( )
inline

Prints statistics collected by UmfPack.

See Also
analyzePattern(), compute()
template<typename _MatrixType >
void Eigen::UmfPackLU< _MatrixType >::umfpackReportStatus ( )
inline

Prints the status of the previous factorization operation performed by UmfPack (symbolic or numerical factorization).

See Also
analyzePattern(), compute()

The documentation for this class was generated from the following file: