masterCoarsestGAMGProcAgglomeration Class Reference

Processor agglomeration of GAMGAgglomerations. More...

Inheritance diagram for masterCoarsestGAMGProcAgglomeration:
Collaboration diagram for masterCoarsestGAMGProcAgglomeration:

Public Member Functions

 TypeName ("masterCoarsest")
 Runtime type information. More...
 
 masterCoarsestGAMGProcAgglomeration (GAMGAgglomeration &agglom, const dictionary &controlDict)
 Construct given agglomerator and controls. More...
 
virtual ~masterCoarsestGAMGProcAgglomeration ()
 Destructor. More...
 
virtual bool agglomerate ()
 Modify agglomeration. Return true if modified. More...
 
- Public Member Functions inherited from GAMGProcAgglomeration
 TypeName ("GAMGProcAgglomeration")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, GAMGProcAgglomeration, GAMGAgglomeration,(GAMGAgglomeration &agglom, const dictionary &controlDict),(agglom, controlDict))
 Runtime selection table for pure geometric agglomerators. More...
 
 GAMGProcAgglomeration (const GAMGProcAgglomeration &)=delete
 No copy construct. More...
 
void operator= (const GAMGProcAgglomeration &)=delete
 No copy assignment. More...
 
 GAMGProcAgglomeration (GAMGAgglomeration &agglom, const dictionary &controlDict)
 Construct given agglomerator and controls. More...
 
virtual ~GAMGProcAgglomeration ()
 Destructor. Clears allocated communicators. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from GAMGProcAgglomeration
static autoPtr< GAMGProcAgglomerationNew (const word &type, GAMGAgglomeration &agglom, const dictionary &controlDict)
 Return the selected agglomerator. More...
 
- Protected Member Functions inherited from GAMGProcAgglomeration
void printStats (Ostream &os, GAMGAgglomeration &agglom) const
 Debug: write agglomeration info. More...
 
bool agglomerate (const label fineLevelIndex, const labelList &procAgglomMap, const labelList &masterProcs, const List< label > &agglomProcIDs, const label procAgglomComm)
 Agglomerate a level. Return true if anything has changed. More...
 
void clearCommunicators ()
 Clear/free allocated communicators. More...
 
- Static Protected Member Functions inherited from GAMGProcAgglomeration
static labelListList globalCellCells (const lduMesh &)
 Debug: calculate global cell-cells. More...
 
- Protected Attributes inherited from GAMGProcAgglomeration
GAMGAgglomerationagglom_
 Reference to agglomeration. More...
 
DynamicList< label > comms_
 Allocated communicators. More...
 

Detailed Description

Processor agglomeration of GAMGAgglomerations.

  • by default agglomerates onto the master processor
  • optionally have multiple masters through the nProcessorsPerMaster parameter. e.g.

    p { solver GAMG; tolerance 1e-06; relTol 0.1; smoother GaussSeidel;

    nCellsInCoarsestLevel 10;

    processorAgglomerator masterCoarsest; Groups of 32 cores get combined so each 'master' gets (roughly) 32*nCellsInCoarsestLevel cells. nProcessorsPerMaster 32;

Alternative : specify number of (equi-distributed) masters nMasters 2;

Restart local agglomeration after processor agglomeration. Used as nCellsInCoarsestLevel. Only applicable for pair-wise local agglomeration methods. nCellsInMasterLevel 1; }

Source files

Definition at line 77 of file masterCoarsestGAMGProcAgglomeration.H.

Constructor & Destructor Documentation

◆ masterCoarsestGAMGProcAgglomeration()

masterCoarsestGAMGProcAgglomeration ( GAMGAgglomeration agglom,
const dictionary controlDict 
)

Construct given agglomerator and controls.

Definition at line 44 of file masterCoarsestGAMGProcAgglomeration.C.

References lduMesh::comm(), controlDict(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, MeshObject< Mesh, MeshObjectType, Type >::mesh(), and Foam::readLabel().

Here is the call graph for this function:

◆ ~masterCoarsestGAMGProcAgglomeration()

Destructor.

Definition at line 100 of file masterCoarsestGAMGProcAgglomeration.C.

Member Function Documentation

◆ TypeName()

TypeName ( "masterCoarsest"  )

Runtime type information.

◆ agglomerate()


The documentation for this class was generated from the following files: