|
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Matrix |
| | The matrix type.
|
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | matrix_type |
| typedef Dune::ISTL::Impl::BCCSMatrix< T, int > | LDLMatrix |
| | The corresponding SuperLU Matrix type.
|
| typedef ISTL::Impl::BCCSMatrixInitializer< BCRSMatrix< FieldMatrix< T, n, m >, A >, int > | MatrixInitializer |
| | Type of an associated initializer class.
|
| typedef Dune::BlockVector< FieldVector< T, m >, typename std::allocator_traits< A >::template rebind_alloc< FieldVector< T, m > > > | domain_type |
| | The type of the domain of the solver.
|
| typedef Dune::BlockVector< FieldVector< T, n >, typename std::allocator_traits< A >::template rebind_alloc< FieldVector< T, n > > > | range_type |
| | The type of the range of the solver.
|
| typedef BlockVector< FieldVector< T, m >, std::allocator_traits< A >::template rebind_alloc< FieldVector< T, m > > >::field_type | field_type |
| | The field type of the operator.
|
| 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).
|
| typedef Simd::Scalar< real_type > | scalar_real_type |
| | scalar type underlying the field_type
|
|
| virtual SolverCategory::Category | category () const |
| | Category of the solver (see SolverCategory::Category).
|
| | LDL (const Matrix &matrix, int verbose=0) |
| | Construct a solver object from a BCRSMatrix.
|
| | LDL (const Matrix &matrix, int verbose, bool) |
| | Constructor for compatibility with SuperLU standard constructor.
|
| | LDL (const Matrix &matrix, const ParameterTree &config) |
| | Constructs the LDL solver.
|
| | LDL () |
| | Default constructor.
|
| virtual | ~LDL () |
| | Default constructor.
|
| virtual void | apply (domain_type &x, range_type &b, InverseOperatorResult &res) |
| | Apply inverse operator,.
|
| virtual void | apply (domain_type &x, range_type &b, double reduction, InverseOperatorResult &res) |
| | apply inverse operator, with given convergence criteria.
|
| void | apply (T *x, T *b) |
| | Additional apply method with c-arrays in analogy to superlu.
|
| void | setOption (unsigned int option, double value) |
| void | setMatrix (const Matrix &matrix) |
| | Initialize data from given matrix.
|
| template<class S> |
| void | setSubMatrix (const Matrix &matrix, const S &rowIndexSet) |
| void | setVerbosity (int v) |
| | Sets the verbosity level for the solver.
|
| LDLMatrix & | getInternalMatrix () |
| | Return the column compress matrix.
|
| void | free () |
| | Free allocated space.
|
| const char * | name () |
| | Get method name.
|
| double * | getD () |
| | Get factorization diagonal matrix D.
|
| int * | getLp () |
| | Get factorization Lp.
|
| int * | getLi () |
| | Get factorization Li.
|
| double * | getLx () |
| | Get factorization Lx.
|
| virtual void | apply (BlockVector< FieldVector< T, m >, std::allocator_traits< A >::template rebind_alloc< FieldVector< T, m > > > &x, BlockVector< FieldVector< T, n >, std::allocator_traits< A >::template rebind_alloc< FieldVector< T, n > > > &b, InverseOperatorResult &res)=0 |
| | Apply inverse operator,.
|
template<typename T, typename A, int n, int m>
class Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >
The LDL direct sparse solver for matrices of type BCRSMatrix.
Specialization for the Dune::BCRSMatrix. LDL will always go double precision.
- Template Parameters
-
| T | Number type. Only 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 LDL