#include <dune/pdelab/backend/istl/parallelhelper.hh>
|
| ParallelHelper (const GFS &gfs, int verbose=1) |
|
const std::vector< RankIndex > & | getNeighborRanks () const |
| Returns a sorted list of the ranks of all neighboring processes. More...
|
|
template<typename X > |
void | maskForeignDOFs (X &x) const |
| Mask out all DOFs not owned by the current process with 0. More...
|
|
bool | owned (const ContainerIndex &i) const |
| Tests whether the given index is owned by this process. More...
|
|
bool | isGhost (const ContainerIndex &i) const |
| Tests whether the given index belongs to a ghost DOF. More...
|
|
template<typename X , typename Y > |
PromotionTraits< typenameX::field_type, typenameY::field_type >::PromotedType | disjointDot (const X &x, const Y &y) const |
| Calculates the (rank-local) dot product of x and y on the disjoint partition defined by the helper. More...
|
|
RankIndex | rank () const |
| Returns the MPI rank of this process. More...
|
|
template<typename MatrixType , typename Comm > |
void | createIndexSetAndProjectForAMG (MatrixType &m, Comm &c) |
| Makes the matrix consistent and creates the parallel information for AMG. More...
|
|
template<typename M , typename C > |
void | createIndexSetAndProjectForAMG (M &m, C &c) |
|
◆ ParallelHelper()
◆ createIndexSetAndProjectForAMG()
template<typename GFS >
template<typename MatrixType , typename Comm >
Makes the matrix consistent and creates the parallel information for AMG.
This function accomplishes two things:
- Makes the matrix consistent w.r.t. to the disjoint partitioning of the DOF space, i.e. aggregates matrix entries for border entries from neighboring ranks.
- Sets up the parallel communication information for AMG.
- Warning
- This function silenty assumes that the matrix only has a single level of blocking and will not work correctly otherwise. Also note that AMG will only work correctly for P1 discretisations.
- Parameters
-
m | The PDELab matrix container. |
c | The parallel information object providing index set, interfaces and communicators. |
◆ disjointDot()
template<typename GFS >
template<typename X , typename Y >
Calculates the (rank-local) dot product of x and y on the disjoint partition defined by the helper.
◆ getNeighborRanks()
Returns a sorted list of the ranks of all neighboring processes.
◆ isGhost()
Tests whether the given index belongs to a ghost DOF.
◆ maskForeignDOFs()
template<typename GFS >
template<typename X >
Mask out all DOFs not owned by the current process with 0.
◆ owned()
Tests whether the given index is owned by this process.
◆ rank()
Returns the MPI rank of this process.
The documentation for this class was generated from the following file: