Reference documentation for deal.II version 9.2.0
|
#include <deal.II/multigrid/mg_coarse.h>
Public Member Functions | |
MGCoarseGridLACIteration () | |
template<typename MatrixType , typename PreconditionerType > | |
MGCoarseGridLACIteration (SolverType &, const MatrixType &, const PreconditionerType &) | |
~MGCoarseGridLACIteration () | |
template<typename MatrixType , typename PreconditionerType > | |
void | initialize (SolverType &, const MatrixType &, const PreconditionerType &) |
void | clear () |
void | operator() (const unsigned int level, VectorType &dst, const VectorType &src) const |
template<typename MatrixType > | |
void | set_matrix (const MatrixType &) |
Public Member Functions inherited from MGCoarseGridBase< Vector< double > > | |
virtual | ~MGCoarseGridBase () override=default |
virtual void | operator() (const unsigned int level, Vector< double > &dst, const Vector< double > &src) const=0 |
Public Member Functions inherited from Subscriptor | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) noexcept | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
unsigned int | n_subscriptions () const |
template<typename StreamType > | |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
SmartPointer< SolverType, MGCoarseGridLACIteration< SolverType, VectorType > > | solver |
LinearOperator< VectorType > | matrix |
LinearOperator< VectorType > | precondition |
Additional Inherited Members | |
Static Public Member Functions inherited from Subscriptor | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
Coarse grid solver using LAC iterative methods. This is a little wrapper, transforming a triplet of iterative solver, matrix and preconditioner into a coarse grid solver.
The type of the matrix (i.e. the template parameter MatrixType
) should be derived from Subscriptor
to allow for the use of a smart pointer to it.
Definition at line 97 of file mg_coarse.h.
MGCoarseGridLACIteration< SolverType, VectorType >::MGCoarseGridLACIteration | ( | ) |
Default constructor.
MGCoarseGridLACIteration< SolverType, VectorType >::MGCoarseGridLACIteration | ( | SolverType & | , |
const MatrixType & | , | ||
const PreconditionerType & | |||
) |
Constructor. Store solver, matrix and preconditioning method for later use.
MGCoarseGridLACIteration< SolverType, VectorType >::~MGCoarseGridLACIteration | ( | ) |
Destructor freeing the pointers.
void MGCoarseGridLACIteration< SolverType, VectorType >::initialize | ( | SolverType & | , |
const MatrixType & | , | ||
const PreconditionerType & | |||
) |
Initialize new data.
void MGCoarseGridLACIteration< SolverType, VectorType >::clear | ( | ) |
Clear all pointers.
void MGCoarseGridLACIteration< SolverType, VectorType >::operator() | ( | const unsigned int | level, |
VectorType & | dst, | ||
const VectorType & | src | ||
) | const |
Implementation of the abstract function. Calls the solver method with matrix, vectors and preconditioner.
void MGCoarseGridLACIteration< SolverType, VectorType >::set_matrix | ( | const MatrixType & | ) |
Set the matrix. This gives the possibility to replace the matrix that was given to the constructor by a new matrix.
|
private |
Reference to the solver.
Definition at line 155 of file mg_coarse.h.
|
private |
LinearOperator wrapping a reference to the matrix.
Definition at line 160 of file mg_coarse.h.
|
private |
LinearOperator wrapping a reference to the preconditioner.
Definition at line 165 of file mg_coarse.h.