|
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Matrix |
| | The matrix type. More...
|
| |
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | matrix_type |
| |
| typedef Dune::ColCompMatrix< Matrix > | UMFPackMatrix |
| | The corresponding SuperLU Matrix type. More...
|
| |
| typedef ColCompMatrixInitializer< BCRSMatrix< FieldMatrix< T, n, m >, A > > | MatrixInitializer |
| | Type of an associated initializer class. More...
|
| |
| typedef Dune::BlockVector< FieldVector< T, m >, typename A::template rebind< FieldVector< T, m > >::other > | domain_type |
| | The type of the domain of the solver. More...
|
| |
| typedef Dune::BlockVector< FieldVector< T, n >, typename A::template rebind< FieldVector< T, n > >::other > | range_type |
| | The type of the range of the solver. More...
|
| |
| typedef BlockVector< FieldVector< T, m >, A::template rebind< FieldVector< T, m > >::other > ::field_type | field_type |
| | The field type of the operator. More...
|
| |
| typedef FieldTraits< field_type >::real_type | real_type |
| | The real type of the field type (is the same if using real numbers, but differs for std::complex) More...
|
| |
| typedef SimdScalar< real_type > | scalar_real_type |
| | scalar type underlying the field_type More...
|
| |
|
| virtual SolverCategory::Category | category () const |
| | Category of the solver (see SolverCategory::Category) More...
|
| |
| | UMFPack (const Matrix &matrix, int verbose=0) |
| | Construct a solver object from a BCRSMatrix. More...
|
| |
| | UMFPack (const Matrix &matrix, int verbose, bool) |
| | Constructor for compatibility with SuperLU standard constructor. More...
|
| |
| | UMFPack () |
| | default constructor More...
|
| |
| | UMFPack (const Matrix &mat_, const char *file, int verbose=0) |
| | Try loading a decomposition from file and do a decomposition if unsuccessful. More...
|
| |
| | UMFPack (const char *file, int verbose=0) |
| | try loading a decomposition from file More...
|
| |
| virtual | ~UMFPack () |
| |
| virtual void | apply (domain_type &x, range_type &b, InverseOperatorResult &res) |
| | Apply inverse operator,. More...
|
| |
| virtual void | apply (domain_type &x, range_type &b, double reduction, InverseOperatorResult &res) |
| | apply inverse operator, with given convergence criteria. More...
|
| |
| void | apply (T *x, T *b) |
| | additional apply method with c-arrays in analogy to superlu More...
|
| |
| void | setOption (unsigned int option, double value) |
| | Set UMFPack-specific options. More...
|
| |
| void | saveDecomposition (const char *file) |
| | saves a decomposition to a file More...
|
| |
| void | setMatrix (const Matrix &matrix) |
| | Initialize data from given matrix. More...
|
| |
| template<class S > |
| void | setSubMatrix (const Matrix &_mat, const S &rowIndexSet) |
| |
| void | setVerbosity (int v) |
| | sets the verbosity level for the UMFPack solver More...
|
| |
| void * | getFactorization () |
| | Return the matrix factorization. More...
|
| |
| UMFPackMatrix & | getInternalMatrix () |
| | Return the column compress matrix from UMFPack. More...
|
| |
| void | free () |
| | free allocated space. More...
|
| |
| const char * | name () |
| |
| virtual void | apply (BlockVector< FieldVector< T, m >, A::template rebind< FieldVector< T, m > >::other > &x, BlockVector< FieldVector< T, n >, A::template rebind< FieldVector< T, n > >::other > &b, InverseOperatorResult &res)=0 |
| | Apply inverse operator,. More...
|
| |
| virtual void | apply (BlockVector< FieldVector< T, m >, A::template rebind< FieldVector< T, m > >::other > &x, BlockVector< FieldVector< T, n >, A::template rebind< FieldVector< T, n > >::other > &b, double reduction, InverseOperatorResult &res)=0 |
| | apply inverse operator, with given convergence criteria. More...
|
| |
template<typename T, typename A, int n, int m>
class Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >
The UMFPack direct sparse solver for matrices of type BCRSMatrix.
Specialization for the Dune::BCRSMatrix. UMFPack will always go double precision and supports complex numbers too (use std::complex<double> for that).
- Template Parameters
-
| T | Number type. Only double and std::complex<double> is supported |
| A | STL-compatible allocator type |
| n | Number of rows in a matrix block |
| m | Number of columns in a matrix block |
- Note
- This will only work if dune-istl has been configured to use UMFPack