Iterative Solvers supporting block recursive matrix and vector classes at compile time.
More...
|
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::Matrix |
| | The matrix type. More...
|
| |
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::matrix_type |
| |
| typedef Dune::ColCompMatrix< Matrix > | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::LDLMatrix |
| | The corresponding SuperLU Matrix type. More...
|
| |
| typedef ColCompMatrixInitializer< BCRSMatrix< FieldMatrix< T, n, m >, A > > | Dune::LDL< 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 > | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::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 > | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::range_type |
| | The type of the range of the solver. More...
|
| |
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::Matrix |
| | The matrix type. More...
|
| |
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::matrix_type |
| |
| typedef Dune::ColCompMatrix< Matrix > | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::SPQRMatrix |
| | The corresponding SuperLU Matrix type. More...
|
| |
| typedef ColCompMatrixInitializer< BCRSMatrix< FieldMatrix< T, n, m >, A > > | Dune::SPQR< 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 > | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::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 > | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::range_type |
| | The type of the range of the solver. More...
|
| |
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::Matrix |
| | The matrix type. More...
|
| |
| typedef Dune::BCRSMatrix< FieldMatrix< T, n, m >, A > | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::matrix_type |
| |
| typedef Dune::ColCompMatrix< Matrix > | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::UMFPackMatrix |
| | The corresponding SuperLU Matrix type. More...
|
| |
| typedef ColCompMatrixInitializer< BCRSMatrix< FieldMatrix< T, n, m >, A > > | Dune::UMFPack< 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 > | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::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 > | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::range_type |
| | The type of the range of the solver. More...
|
| |
|
| virtual SolverCategory::Category | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::category () const |
| | Category of the solver (see SolverCategory::Category) More...
|
| |
| | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::LDL (const Matrix &matrix, int verbose=0) |
| | Construct a solver object from a BCRSMatrix. More...
|
| |
| | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::LDL (const Matrix &matrix, int verbose, bool) |
| | Constructor for compatibility with SuperLU standard constructor. More...
|
| |
| | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::LDL () |
| | Default constructor. More...
|
| |
| virtual | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::~LDL () |
| | Default constructor. More...
|
| |
| virtual void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (domain_type &x, range_type &b, InverseOperatorResult &res) |
| | Apply inverse operator,. More...
|
| |
| virtual void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (domain_type &x, range_type &b, double reduction, InverseOperatorResult &res) |
| | apply inverse operator, with given convergence criteria. More...
|
| |
| void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (T *x, T *b) |
| | Additional apply method with c-arrays in analogy to superlu. More...
|
| |
| void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setOption (unsigned int option, double value) |
| |
| void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setMatrix (const Matrix &matrix) |
| | Initialize data from given matrix. More...
|
| |
| template<class S > |
| void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setSubMatrix (const Matrix &matrix, const S &rowIndexSet) |
| |
| void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setVerbosity (int v) |
| | Sets the verbosity level for the solver. More...
|
| |
| LDLMatrix & | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getInternalMatrix () |
| | Return the column compress matrix. More...
|
| |
| void | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::free () |
| | Free allocated space. More...
|
| |
| const char * | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::name () |
| | Get method name. More...
|
| |
| double * | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getD () |
| | Get factorization diagonal matrix D. More...
|
| |
| int * | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getLp () |
| | Get factorization Lp. More...
|
| |
| int * | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getLi () |
| | Get factorization Li. More...
|
| |
| double * | Dune::LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getLx () |
| | Get factorization Lx. More...
|
| |
| virtual SolverCategory::Category | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::category () const |
| | Category of the solver (see SolverCategory::Category) More...
|
| |
| | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::SPQR (const Matrix &matrix, int verbose=0) |
| | Construct a solver object from a BCRSMatrix. More...
|
| |
| | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::SPQR (const Matrix &matrix, int verbose, bool) |
| | Constructor for compatibility with SuperLU standard constructor. More...
|
| |
| | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::SPQR () |
| | Default constructor. More...
|
| |
| virtual | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::~SPQR () |
| | Destructor. More...
|
| |
| virtual void | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (domain_type &x, range_type &b, InverseOperatorResult &res) |
| | Apply inverse operator,. More...
|
| |
| virtual void | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (domain_type &x, range_type &b, double reduction, InverseOperatorResult &res) |
| | apply inverse operator, with given convergence criteria. More...
|
| |
| void | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setOption (unsigned int option, double value) |
| |
| void | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setMatrix (const Matrix &matrix) |
| | Initialize data from given matrix. More...
|
| |
| template<class S > |
| void | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setSubMatrix (const Matrix &matrix, const S &rowIndexSet) |
| |
| void | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setVerbosity (int v) |
| | Sets the verbosity level for the solver. More...
|
| |
| SuiteSparseQR_factorization< T > * | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getFactorization () |
| | Return the matrix factorization. More...
|
| |
| SPQRMatrix & | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getInternalMatrix () |
| | Return the column coppressed matrix. More...
|
| |
| void | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::free () |
| | Free allocated space. More...
|
| |
| const char * | Dune::SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > >::name () |
| | Get method name. More...
|
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::defaults (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::free_numeric (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::free_symbolic (A... args) |
| |
| template<typename... A> |
| static int | Dune::UMFPackMethodChooser< double >::load_numeric (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::numeric (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::report_info (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::report_status (A... args) |
| |
| template<typename... A> |
| static int | Dune::UMFPackMethodChooser< double >::save_numeric (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::solve (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< double >::symbolic (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::defaults (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::free_numeric (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::free_symbolic (A... args) |
| |
| template<typename... A> |
| static int | Dune::UMFPackMethodChooser< std::complex< double > >::load_numeric (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::numeric (const int *cs, const int *ri, const double *val, A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::report_info (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::report_status (A... args) |
| |
| template<typename... A> |
| static int | Dune::UMFPackMethodChooser< std::complex< double > >::save_numeric (A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::solve (int m, const int *cs, const int *ri, std::complex< double > *val, double *x, const double *b, A... args) |
| |
| template<typename... A> |
| static void | Dune::UMFPackMethodChooser< std::complex< double > >::symbolic (int m, int n, const int *cs, const int *ri, const double *val, A... args) |
| |
| virtual SolverCategory::Category | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::category () const |
| | Category of the solver (see SolverCategory::Category) More...
|
| |
| | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::UMFPack (const Matrix &matrix, int verbose=0) |
| | Construct a solver object from a BCRSMatrix. More...
|
| |
| | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::UMFPack (const Matrix &matrix, int verbose, bool) |
| | Constructor for compatibility with SuperLU standard constructor. More...
|
| |
| | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::UMFPack () |
| | default constructor More...
|
| |
| | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::UMFPack (const Matrix &mat_, const char *file, int verbose=0) |
| | Try loading a decomposition from file and do a decomposition if unsuccessful. More...
|
| |
| | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::UMFPack (const char *file, int verbose=0) |
| | try loading a decomposition from file More...
|
| |
| virtual | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::~UMFPack () |
| |
| virtual void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (domain_type &x, range_type &b, InverseOperatorResult &res) |
| | Apply inverse operator,. More...
|
| |
| virtual void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (domain_type &x, range_type &b, double reduction, InverseOperatorResult &res) |
| | apply inverse operator, with given convergence criteria. More...
|
| |
| void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (T *x, T *b) |
| | additional apply method with c-arrays in analogy to superlu More...
|
| |
| void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setOption (unsigned int option, double value) |
| | Set UMFPack-specific options. More...
|
| |
| void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::saveDecomposition (const char *file) |
| | saves a decomposition to a file More...
|
| |
| void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setMatrix (const Matrix &matrix) |
| | Initialize data from given matrix. More...
|
| |
| template<class S > |
| void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setSubMatrix (const Matrix &_mat, const S &rowIndexSet) |
| |
| void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setVerbosity (int v) |
| | sets the verbosity level for the UMFPack solver More...
|
| |
| void * | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getFactorization () |
| | Return the matrix factorization. More...
|
| |
| UMFPackMatrix & | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::getInternalMatrix () |
| | Return the column compress matrix from UMFPack. More...
|
| |
| void | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::free () |
| | free allocated space. More...
|
| |
| const char * | Dune::UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > >::name () |
| |
| template<class S > |
| std::size_t | Dune::ILUSubdomainSolver< M, X, Y >::copyToLocalMatrix (const M &A, S &rowset) |
| | Copy the local part of the global matrix to ILU. More...
|
| |
| template<class S > |
| void | Dune::ILU0SubdomainSolver< M, X, Y >::setSubMatrix (const M &A, S &rowset) |
| | Set the data of the local problem. More...
|
| |
| template<class S > |
| void | Dune::ILUNSubdomainSolver< M, X, Y >::setSubMatrix (const M &A, S &rowset) |
| | Set the data of the local problem. More...
|
| |
| | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::~SuperLU () |
| |
| void | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::free () |
| | free allocated space. More...
|
| |
| | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::SuperLU (const Matrix &mat, bool verbose=false, bool reusevector=true) |
| | Constructs the SuperLU solver. More...
|
| |
| | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::SuperLU () |
| | Empty default constructor. More...
|
| |
| void | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setVerbosity (bool v) |
| |
| void | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setMatrix (const Matrix &mat) |
| | Initialize data from given matrix. More...
|
| |
| template<class S > |
| void | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::setSubMatrix (const Matrix &mat, const S &rowIndexSet) |
| |
| void | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (domain_type &x, range_type &b, InverseOperatorResult &res) |
| | Apply inverse operator,. More...
|
| |
| void | Dune::SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > >::apply (T *x, T *b) |
| | Apply SuperLu to C arrays. More...
|
| |
Iterative Solvers supporting block recursive matrix and vector classes at compile time.
The Iterative Solver Template Library applies generic programming in C++ to the domain of iterative solvers of linear systems stemming from finite element discretizations. Those discretizations exhibit a lot of structure, e.g:
Our matrix and vector interface supports a block recursive structure. Each sparse matrix entry can itself be either a sparse or a small dense matrix.
The solvers use this recursive block structure via template meta programming at compile time.