A sparse direct LU factorization and solver based on the SuperLU library. More...
#include <SuperLUSupport.h>
Inheritance diagram for SuperLU< _MatrixType >:Public Types | |
| typedef SuperLUBase < _MatrixType, SuperLU > | Base |
| typedef Base::Index | Index |
| typedef Base::IntColVectorType | IntColVectorType |
| typedef Base::IntRowVectorType | IntRowVectorType |
| typedef TriangularView < LUMatrixType, Lower|UnitDiag > | LMatrixType |
| typedef Base::LUMatrixType | LUMatrixType |
| typedef _MatrixType | MatrixType |
| typedef Base::RealScalar | RealScalar |
| typedef Base::Scalar | Scalar |
| typedef TriangularView < LUMatrixType, Upper > | UMatrixType |
| typedef Matrix< Scalar, Dynamic, 1 > | Vector |
Public Member Functions | |
| void | analyzePattern (const MatrixType &matrix) |
| Index | cols () const |
| void | compute (const MatrixType &matrix) |
| SuperLU< _MatrixType > & | derived () |
| const SuperLU< _MatrixType > & | derived () const |
| Scalar | determinant () const |
| void | dumpMemory (Stream &s) |
| void | factorize (const MatrixType &matrix) |
| ComputationInfo | info () const |
| Reports whether previous computation was successful. | |
| const LMatrixType & | matrixL () const |
| const UMatrixType & | matrixU () const |
| superlu_options_t & | options () |
| const IntColVectorType & | permutationP () const |
| const IntRowVectorType & | permutationQ () const |
| Index | rows () const |
| const internal::solve_retval < SuperLUBase, Rhs > | solve (const MatrixBase< Rhs > &b) const |
| SuperLU () | |
| SuperLU (const MatrixType &matrix) | |
| ~SuperLU () | |
Protected Member Functions | |
| void | clearFactors () |
| void | extractData () const |
| void | init () |
| void | initFactorization (const MatrixType &a) |
A sparse direct LU factorization and solver based on the SuperLU library.
This class allows to solve for A.X = B sparse linear problems via a direct LU factorization using the SuperLU library. The sparse matrix A must be squared and invertible. The vectors or matrices X and B can be either dense or sparse.
| _MatrixType | the type of the sparse matrix A, it must be a SparseMatrix<> |
| typedef SuperLUBase<_MatrixType,SuperLU> Base |
| typedef Base::Index Index |
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
| typedef TriangularView<LUMatrixType, Lower|UnitDiag> LMatrixType |
| typedef Base::LUMatrixType LUMatrixType |
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
| typedef _MatrixType MatrixType |
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
| typedef Base::RealScalar RealScalar |
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
| typedef Base::Scalar Scalar |
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
| typedef TriangularView<LUMatrixType, Upper> UMatrixType |
|
inline |
References SuperLU< _MatrixType >::init().
|
inline |
|
inline |
|
inline |
Performs a symbolic decomposition on the sparcity of matrix.
This function is particularly useful when solving for several problems having the same structure.
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
References SuperLUBase< _MatrixType, Derived >::analyzePattern(), Eigen::InvalidInput, SuperLUBase< _MatrixType, SuperLU< _MatrixType > >::m_info, and SuperLUBase< _MatrixType, SuperLU< _MatrixType > >::m_isInitialized.
|
inlineprotectedinherited |
|
inlineinherited |
|
inlineinherited |
Computes the sparse Cholesky decomposition of matrix
Referenced by SuperLU< _MatrixType >::SuperLU().
|
inlineinherited |
|
inlineinherited |
| SuperLU< MatrixType >::Scalar determinant | ( | ) | const |
References eigen_assert.
|
inlineinherited |
|
protectedinherited |
| void factorize | ( | const MatrixType & | matrix | ) |
Performs a numeric decomposition of matrix
The given matrix must has the same sparcity than the matrix on which the symbolic decomposition has been performed.
References eigen_assert, Eigen::InvalidInput, Eigen::NumericalIssue, and Eigen::Success.
|
inlineinherited |
Reports whether previous computation was successful.
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.
|
inlineprotected |
Reimplemented from SuperLUBase< _MatrixType, SuperLU< _MatrixType > >.
References SuperLUBase< _MatrixType, Derived >::init(), and SuperLUBase< _MatrixType, SuperLU< _MatrixType > >::m_sluOptions.
Referenced by SuperLU< _MatrixType >::SuperLU().
|
inlineprotectedinherited |
|
inline |
|
inline |
|
inlineinherited |
|
inline |
|
inline |
|
inlineinherited |
|
inlineinherited |
using the current decomposition of A.
|
protectedinherited |
|
mutableprotectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
Referenced by SuperLU< _MatrixType >::analyzePattern().
|
protectedinherited |
Referenced by SuperLU< _MatrixType >::analyzePattern().
|
mutableprotectedinherited |
Referenced by SuperLU< _MatrixType >::matrixL().
|
mutableprotectedinherited |
|
mutableprotectedinherited |
Referenced by SuperLU< _MatrixType >::permutationP().
|
mutableprotectedinherited |
Referenced by SuperLU< _MatrixType >::permutationQ().
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
Referenced by SuperLU< _MatrixType >::init().
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
Referenced by SuperLU< _MatrixType >::matrixU().
1.8.1.1