|
| AMGCPR (const OperatorHierarchy &matrices, CoarseSolver &coarseSolver, const SmootherArgs &smootherArgs, const Parameters &parms) |
| Construct a new amg with a specific coarse solver. More...
|
|
template<class C > |
| AMGCPR (const Operator &fineOperator, const C &criterion, const SmootherArgs &smootherArgs=SmootherArgs(), const ParallelInformation &pinfo=ParallelInformation()) |
| Construct an AMG with an inexact coarse solver based on the smoother. More...
|
|
| AMGCPR (const AMGCPR &amg) |
| Copy constructor. More...
|
|
| ~AMGCPR () |
|
void | pre (Domain &x, Range &b) |
|
void | apply (Domain &v, const Range &d) |
|
virtual SolverCategory::Category | category () const |
| Category of the preconditioner (see SolverCategory::Category) More...
|
|
void | post (Domain &x) |
|
template<class A1 > |
void | getCoarsestAggregateNumbers (std::vector< std::size_t, A1 > &cont) |
| Get the aggregate number of each unknown on the coarsest level. More...
|
|
std::size_t | levels () |
|
std::size_t | maxlevels () |
|
void | recalculateHierarchy () |
| Recalculate the matrix hierarchy. More...
|
|
template<class C > |
void | updateSolver (C &criterion, const Operator &, const PI &pinfo) |
| Update the coarse solver and the hierarchies. More...
|
|
virtual void | update () |
| Update the coarse solver and the hierarchies. More...
|
|
bool | usesDirectCoarseLevelSolver () const |
| Check whether the coarse solver used is a direct solver. More...
|
|
template<class M, class X, class S, class PI = SequentialInformation, class A = std::allocator<X>>
class Dune::Amg::AMGCPR< M, X, S, PI, A >
Parallel algebraic multigrid based on agglomeration.
- Template Parameters
-
M | The matrix type |
X | The vector type |
S | The smoother type |
A | An allocator for X |