Public Member Functions | |
MGCoarseGridLACIteration () | |
template<class MATRIX , class PRECOND > | |
MGCoarseGridLACIteration (SOLVER &, const MATRIX &, const PRECOND &) | |
~MGCoarseGridLACIteration () | |
template<class MATRIX , class PRECOND > | |
void | initialize (SOLVER &, const MATRIX &, const PRECOND &) |
void | clear () |
void | operator() (const unsigned int level, VECTOR &dst, const VECTOR &src) const |
template<class MATRIX > | |
void | set_matrix (const MATRIX &) |
Private Attributes | |
SmartPointer< SOLVER > | solver |
PointerMatrixBase< VECTOR > * | matrix |
PointerMatrixBase< VECTOR > * | precondition |
The type of the matrix (i.e. the template parameter MATRIX
) should be derived from Subscriptor
to allow for the use of a smart pointer to it.
MGCoarseGridLACIteration< SOLVER, VECTOR >::MGCoarseGridLACIteration | ( | ) |
Default constructor.
MGCoarseGridLACIteration< SOLVER, VECTOR >::MGCoarseGridLACIteration | ( | SOLVER & | , | |
const MATRIX & | , | |||
const PRECOND & | ||||
) | [inline] |
Constructor. Store solver, matrix and preconditioning method for later use.
MGCoarseGridLACIteration< SOLVER, VECTOR >::~MGCoarseGridLACIteration | ( | ) |
Destructor freeing the pointers.
void MGCoarseGridLACIteration< SOLVER, VECTOR >::initialize | ( | SOLVER & | , | |
const MATRIX & | , | |||
const PRECOND & | ||||
) | [inline] |
Initialize new data.
void MGCoarseGridLACIteration< SOLVER, VECTOR >::clear | ( | ) |
Clear all pointers.
void MGCoarseGridLACIteration< SOLVER, VECTOR >::operator() | ( | const unsigned int | level, | |
VECTOR & | dst, | |||
const VECTOR & | src | |||
) | const [virtual] |
Implementation of the abstract function. Calls the solver method with matrix, vectors and preconditioner.
Implements MGCoarseGridBase< VECTOR >.
void MGCoarseGridLACIteration< SOLVER, VECTOR >::set_matrix | ( | const MATRIX & | ) | [inline] |
Sets the matrix. This gives the possibility to replace the matrix that was given to the constructor by a new matrix.
SmartPointer<SOLVER> MGCoarseGridLACIteration< SOLVER, VECTOR >::solver [private] |
Reference to the solver.
PointerMatrixBase<VECTOR>* MGCoarseGridLACIteration< SOLVER, VECTOR >::matrix [private] |
Reference to the matrix.
PointerMatrixBase<VECTOR>* MGCoarseGridLACIteration< SOLVER, VECTOR >::precondition [private] |
Reference to the preconditioner.