![]() |
|
The base class for the direct and incomplete LU factorization of SuperLU. More...
#include <SuperLUSupport.h>
Public Types | |
enum | { ColsAtCompileTime = MatrixType::ColsAtCompileTime , MaxColsAtCompileTime = MatrixType::MaxColsAtCompileTime } |
typedef MatrixType_ | MatrixType |
typedef MatrixType::Scalar | Scalar |
typedef MatrixType::RealScalar | RealScalar |
typedef MatrixType::StorageIndex | StorageIndex |
typedef Matrix< Scalar, Dynamic, 1 > | Vector |
typedef Matrix< int, 1, MatrixType::ColsAtCompileTime > | IntRowVectorType |
typedef Matrix< int, MatrixType::RowsAtCompileTime, 1 > | IntColVectorType |
typedef Map< PermutationMatrix< Dynamic, Dynamic, int > > | PermutationMap |
typedef SparseMatrix< Scalar > | LUMatrixType |
Public Member Functions | |
SuperLUBase () | |
~SuperLUBase () | |
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) |
void | analyzePattern (const MatrixType &) |
template<typename Stream > | |
void | dumpMemory (Stream &) |
![]() | |
SparseSolverBase () | |
SparseSolverBase (SparseSolverBase &&other) | |
~SparseSolverBase () | |
Derived & | derived () |
const Derived & | derived () const |
template<typename Rhs > | |
const Solve< Derived, Rhs > | solve (const MatrixBase< Rhs > &b) const |
template<typename Rhs > | |
const Solve< Derived, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
template<typename Rhs , typename Dest > | |
void | _solve_impl (const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const |
Protected Types | |
typedef SparseSolverBase< Derived > | Base |
Protected Member Functions | |
void | initFactorization (const MatrixType &a) |
void | init () |
void | extractData () const |
void | clearFactors () |
Derived & | derived () |
const Derived & | derived () const |
Protected Attributes | |
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 |
int | m_factorizationIsOk |
int | m_analysisIsOk |
bool | m_extractedDataAreDirty |
bool | m_isInitialized |
![]() | |
bool | m_isInitialized |
Private Member Functions | |
SuperLUBase (SuperLUBase &) | |
The base class for the direct and incomplete LU factorization of SuperLU.
|
protected |
typedef Matrix<int, MatrixType::RowsAtCompileTime, 1> Eigen::SuperLUBase< MatrixType_, Derived >::IntColVectorType |
typedef Matrix<int, 1, MatrixType::ColsAtCompileTime> Eigen::SuperLUBase< MatrixType_, Derived >::IntRowVectorType |
typedef SparseMatrix<Scalar> Eigen::SuperLUBase< MatrixType_, Derived >::LUMatrixType |
typedef MatrixType_ Eigen::SuperLUBase< MatrixType_, Derived >::MatrixType |
typedef Map<PermutationMatrix<Dynamic, Dynamic, int> > Eigen::SuperLUBase< MatrixType_, Derived >::PermutationMap |
typedef MatrixType::RealScalar Eigen::SuperLUBase< MatrixType_, Derived >::RealScalar |
typedef MatrixType::Scalar Eigen::SuperLUBase< MatrixType_, Derived >::Scalar |
typedef MatrixType::StorageIndex Eigen::SuperLUBase< MatrixType_, Derived >::StorageIndex |
typedef Matrix<Scalar, Dynamic, 1> Eigen::SuperLUBase< MatrixType_, Derived >::Vector |
anonymous enum |
Enumerator | |
---|---|
ColsAtCompileTime | |
MaxColsAtCompileTime |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
Performs a symbolic decomposition on the sparcity of matrix.
This function is particularly useful when solving for several problems having the same structure.
References Eigen::SuperLUBase< MatrixType_, Derived >::m_analysisIsOk, Eigen::SuperLUBase< MatrixType_, Derived >::m_factorizationIsOk, Eigen::SuperLUBase< MatrixType_, Derived >::m_info, Eigen::SuperLUBase< MatrixType_, Derived >::m_isInitialized, and Eigen::Success.
Referenced by Eigen::SuperLU< MatrixType_ >::analyzePattern().
|
inlineprotected |
References Destroy_CompCol_Matrix(), Destroy_SuperNode_Matrix(), Eigen::SuperLUBase< MatrixType_, Derived >::m_sluL, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluU, and SuperMatrix::Store.
Referenced by Eigen::SuperLUBase< MatrixType_, Derived >::initFactorization(), and Eigen::SuperLUBase< MatrixType_, Derived >::~SuperLUBase().
|
inline |
References Eigen::SparseMatrix< Scalar_, Options_, StorageIndex_ >::cols(), and Eigen::SuperLUBase< MatrixType_, Derived >::m_matrix.
Referenced by gdb.printers._MatrixEntryIterator::__next__(), gdb.printers.EigenMatrixPrinter::children(), gdb.printers.EigenSparseMatrixPrinter::children(), gdb.printers.EigenMatrixPrinter::to_string(), and gdb.printers.EigenSparseMatrixPrinter::to_string().
|
inline |
Computes the sparse Cholesky decomposition of matrix
References Eigen::SuperLUBase< MatrixType_, Derived >::derived(), and matrix().
Referenced by Eigen::SuperLU< MatrixType_ >::SuperLU().
|
inlineprotected |
Referenced by Eigen::SuperLUBase< MatrixType_, Derived >::compute().
|
inlineprotected |
|
inline |
|
protected |
References eigen_assert, i, j, k, L_FST_SUPC, L_NZ_START, L_SUB, L_SUB_START, NCformat::nnz, SCformat::nnz, SCformat::nsuper, NCformat::nzval, SCformat::nzval, size, U_NZ_START, and U_SUB.
|
inline |
Reports whether previous computation was successful.
Success
if computation was successful, NumericalIssue
if the matrix.appears to be negative. References eigen_assert, Eigen::SuperLUBase< MatrixType_, Derived >::m_info, and Eigen::SuperLUBase< MatrixType_, Derived >::m_isInitialized.
|
inlineprotected |
References Eigen::InvalidInput, Eigen::SuperLUBase< MatrixType_, Derived >::m_info, Eigen::SuperLUBase< MatrixType_, Derived >::m_isInitialized, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluL, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluU, and SuperMatrix::Store.
Referenced by Eigen::SuperLU< MatrixType_ >::init().
|
inlineprotected |
References a, Eigen::internal::asSluMatrix(), Eigen::SuperLUBase< MatrixType_, Derived >::clearFactors(), Eigen::SluMatrix::lda, Eigen::SuperLUBase< MatrixType_, Derived >::m_extractedDataAreDirty, Eigen::SuperLUBase< MatrixType_, Derived >::m_matrix, Eigen::SuperLUBase< MatrixType_, Derived >::m_p, Eigen::SuperLUBase< MatrixType_, Derived >::m_q, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluA, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluB, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluCscale, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluEtree, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluOptions, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluRscale, Eigen::SuperLUBase< MatrixType_, Derived >::m_sluX, SuperMatrix::Mtype, SuperMatrix::ncol, SuperMatrix::nrow, Eigen::PlainObjectBase< Derived >::resize(), set_default_options(), Eigen::SluMatrix::setScalarType(), Eigen::SluMatrix::setStorageType(), size, SLU_DN, SLU_GE, Eigen::SluMatrix::storage, and Eigen::SluMatrix::values.
|
inline |
References Eigen::SuperLUBase< MatrixType_, Derived >::m_sluOptions.
|
inline |
References Eigen::SuperLUBase< MatrixType_, Derived >::m_matrix, and Eigen::SparseMatrix< Scalar_, Options_, StorageIndex_ >::rows().
Referenced by gdb.printers._MatrixEntryIterator::__next__(), gdb.printers.EigenMatrixPrinter::children(), gdb.printers.EigenSparseMatrixPrinter::children(), gdb.printers.EigenMatrixPrinter::to_string(), and gdb.printers.EigenSparseMatrixPrinter::to_string().
|
protected |
Referenced by Eigen::SuperLUBase< MatrixType_, Derived >::analyzePattern().
|
mutableprotected |
|
protected |
Referenced by Eigen::SuperLUBase< MatrixType_, Derived >::analyzePattern().
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
protected |
|
protected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
protected |
|
protected |
|
mutableprotected |