A sparse direct LU factorization and solver based on the SuperLU library. More...
Public Member Functions | |
template<typename Rhs , typename Dest > | |
void | _solve_impl (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const |
void | analyzePattern (const MatrixType &matrix) |
Scalar | determinant () const |
void | factorize (const MatrixType &matrix) |
const LMatrixType & | matrixL () const |
const UMatrixType & | matrixU () const |
const IntColVectorType & | permutationP () const |
const IntRowVectorType & | permutationQ () const |
SuperLU () | |
SuperLU (const MatrixType &matrix) | |
~SuperLU () | |
Public Member Functions inherited from Eigen::SuperLUBase< MatrixType_, SuperLU< MatrixType_ > > | |
void | analyzePattern (const MatrixType &) |
Index | cols () const |
void | compute (const MatrixType &matrix) |
void | dumpMemory (Stream &) |
ComputationInfo | info () const |
Reports whether previous computation was successful. More... | |
superlu_options_t & | options () |
Index | rows () const |
SuperLUBase () | |
~SuperLUBase () | |
Public Member Functions inherited from Eigen::SparseSolverBase< Derived > | |
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 |
SparseSolverBase () | |
SparseSolverBase (SparseSolverBase &&other) | |
~SparseSolverBase () | |
Protected Member Functions | |
void | init () |
Protected Member Functions inherited from Eigen::SuperLUBase< MatrixType_, SuperLU< MatrixType_ > > | |
void | clearFactors () |
SuperLU< MatrixType_ > & | derived () |
const SuperLU< MatrixType_ > & | derived () const |
void | extractData () const |
void | init () |
void | initFactorization (const MatrixType &a) |
Private Member Functions | |
SuperLU (SuperLU &) | |
Additional Inherited Members | |
Protected Types inherited from Eigen::SuperLUBase< MatrixType_, SuperLU< MatrixType_ > > | |
typedef SparseSolverBase< SuperLU< MatrixType_ > > | Base |
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<> |
This class follows the sparse solver concept .
Definition at line 490 of file SuperLUSupport.h.
typedef SuperLUBase<MatrixType_,SuperLU> Eigen::SuperLU< MatrixType_ >::Base |
Definition at line 493 of file SuperLUSupport.h.
typedef Base::IntColVectorType Eigen::SuperLU< MatrixType_ >::IntColVectorType |
Definition at line 499 of file SuperLUSupport.h.
typedef Base::IntRowVectorType Eigen::SuperLU< MatrixType_ >::IntRowVectorType |
Definition at line 498 of file SuperLUSupport.h.
typedef TriangularView<LUMatrixType, Lower|UnitDiag> Eigen::SuperLU< MatrixType_ >::LMatrixType |
Definition at line 502 of file SuperLUSupport.h.
typedef Base::LUMatrixType Eigen::SuperLU< MatrixType_ >::LUMatrixType |
Definition at line 501 of file SuperLUSupport.h.
typedef MatrixType_ Eigen::SuperLU< MatrixType_ >::MatrixType |
Definition at line 494 of file SuperLUSupport.h.
typedef Base::PermutationMap Eigen::SuperLU< MatrixType_ >::PermutationMap |
Definition at line 500 of file SuperLUSupport.h.
typedef Base::RealScalar Eigen::SuperLU< MatrixType_ >::RealScalar |
Definition at line 496 of file SuperLUSupport.h.
typedef Base::Scalar Eigen::SuperLU< MatrixType_ >::Scalar |
Definition at line 495 of file SuperLUSupport.h.
typedef Base::StorageIndex Eigen::SuperLU< MatrixType_ >::StorageIndex |
Definition at line 497 of file SuperLUSupport.h.
typedef TriangularView<LUMatrixType, Upper> Eigen::SuperLU< MatrixType_ >::UMatrixType |
Definition at line 503 of file SuperLUSupport.h.
|
inline |
Definition at line 508 of file SuperLUSupport.h.
|
inlineexplicit |
Definition at line 510 of file SuperLUSupport.h.
|
inline |
Definition at line 516 of file SuperLUSupport.h.
|
inlineprivate |
Definition at line 611 of file SuperLUSupport.h.
void Eigen::SuperLU< MatrixType >::_solve_impl | ( | const MatrixBase< Rhs > & | b, |
MatrixBase< Dest > & | dest | ||
) | const |
Definition at line 651 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 526 of file SuperLUSupport.h.
SuperLU< MatrixType >::Scalar Eigen::SuperLU< MatrixType >::determinant |
Definition at line 794 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 615 of file SuperLUSupport.h.
|
inlineprotected |
Definition at line 598 of file SuperLUSupport.h.
|
inline |
Definition at line 545 of file SuperLUSupport.h.
|
inline |
Definition at line 551 of file SuperLUSupport.h.
|
inline |
Definition at line 557 of file SuperLUSupport.h.
|
inline |
Definition at line 563 of file SuperLUSupport.h.
|
protected |
Definition at line 465 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 466 of file SuperLUSupport.h.
|
protected |
Definition at line 464 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 463 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 324 of file SparseSolverBase.h.
|
mutableprotected |
Definition at line 447 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 452 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 449 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 450 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 453 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 455 of file SuperLUSupport.h.
|
protected |
Definition at line 460 of file SuperLUSupport.h.
|
protected |
Definition at line 459 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 461 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 458 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 460 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 454 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 457 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 459 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 456 of file SuperLUSupport.h.
|
protected |
Definition at line 454 of file SuperLUSupport.h.
|
protected |
Definition at line 455 of file SuperLUSupport.h.
|
mutableprotected |
Definition at line 448 of file SuperLUSupport.h.