![]() |
Shapeworks Studio
2.1
Shape analysis software suite
|
A sparse direct LU factorization and solver based on the SuperLU library. More...
#include <SuperLUSupport.h>
Inheritance diagram for Eigen::SuperLU< _MatrixType >:
Collaboration diagram for Eigen::SuperLU< _MatrixType >:Public Types | |
| typedef SuperLUBase< _MatrixType, SuperLU > | Base |
| typedef _MatrixType | MatrixType |
| typedef Base::Scalar | Scalar |
| typedef Base::RealScalar | RealScalar |
| typedef Base::Index | Index |
| typedef Base::IntRowVectorType | IntRowVectorType |
| typedef Base::IntColVectorType | IntColVectorType |
| typedef Base::LUMatrixType | LUMatrixType |
| typedef TriangularView< LUMatrixType, Lower|UnitDiag > | LMatrixType |
| typedef TriangularView< LUMatrixType, Upper > | UMatrixType |
Public Types inherited from Eigen::SuperLUBase< _MatrixType, SuperLU< _MatrixType > > | |
| typedef _MatrixType | MatrixType |
| typedef MatrixType::Scalar | Scalar |
| typedef MatrixType::RealScalar | RealScalar |
| typedef MatrixType::Index | Index |
| typedef Matrix< Scalar, Dynamic, 1 > | Vector |
| typedef Matrix< int, 1, MatrixType::ColsAtCompileTime > | IntRowVectorType |
| typedef Matrix< int, MatrixType::RowsAtCompileTime, 1 > | IntColVectorType |
| typedef SparseMatrix< Scalar > | LUMatrixType |
Public Member Functions | |
| SuperLU (const MatrixType &matrix) | |
| void | analyzePattern (const MatrixType &matrix) |
| void | factorize (const MatrixType &matrix) |
| template<typename Rhs , typename Dest > | |
| void | _solve (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const |
| const LMatrixType & | matrixL () const |
| const UMatrixType & | matrixU () const |
| const IntColVectorType & | permutationP () const |
| const IntRowVectorType & | permutationQ () const |
| Scalar | determinant () const |
Public Member Functions inherited from Eigen::SuperLUBase< _MatrixType, SuperLU< _MatrixType > > | |
| SuperLU< _MatrixType > & | derived () |
| const SuperLU< _MatrixType > & | derived () const |
| Index | rows () const |
| Index | cols () const |
| superlu_options_t & | options () |
| ComputationInfo | info () const |
| Reports whether previous computation was successful. More... | |
| void | compute (const MatrixType &matrix) |
| const internal::solve_retval< SuperLUBase, Rhs > | solve (const MatrixBase< Rhs > &b) const |
| const internal::sparse_solve_retval< SuperLUBase, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
| void | analyzePattern (const MatrixType &) |
| void | dumpMemory (Stream &) |
Protected Member Functions | |
| void | init () |
Protected Member Functions inherited from Eigen::SuperLUBase< _MatrixType, SuperLU< _MatrixType > > | |
| void | initFactorization (const MatrixType &a) |
| void | init () |
| void | extractData () const |
| void | clearFactors () |
Additional Inherited Members | |
Protected Attributes inherited from Eigen::SuperLUBase< _MatrixType, SuperLU< _MatrixType > > | |
| LUMatrixType | m_l |
| LUMatrixType | m_u |
| IntColVectorType | m_p |
| IntRowVectorType | m_q |
| LUMatrixType | m_matrix |
| SluMatrix | m_sluA |
| SuperMatrix | m_sluL |
| SuperMatrix | m_sluU |
| SluMatrix | m_sluB |
| SluMatrix | m_sluX |
| SuperLUStat_t | m_sluStat |
| superlu_options_t | m_sluOptions |
| std::vector< int > | m_sluEtree |
| Matrix< RealScalar, Dynamic, 1 > | m_sluRscale |
| Matrix< RealScalar, Dynamic, 1 > | m_sluCscale |
| Matrix< RealScalar, Dynamic, 1 > | m_sluFerr |
| Matrix< RealScalar, Dynamic, 1 > | m_sluBerr |
| char | m_sluEqued |
| ComputationInfo | m_info |
| bool | m_isInitialized |
| int | m_factorizationIsOk |
| int | m_analysisIsOk |
| bool | m_extractedDataAreDirty |
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<> |
Definition at line 479 of file SuperLUSupport.h.
|
inline |
Performs a symbolic decomposition on the sparcity of matrix.
This function is particularly useful when solving for several problems having the same structure.
Definition at line 513 of file SuperLUSupport.h.
| void Eigen::SuperLU< MatrixType >::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.
Definition at line 604 of file SuperLUSupport.h.
1.8.11