domainDecomposition Class Reference

Automatic domain decomposition class for finite-volume meshes. More...

Public Member Functions

 TypeName ("domainDecomposition")
 Runtime type information. More...
 
 domainDecomposition (const processorRunTimes &procRunTimes, const word &regionName)
 Construct from processor run times and region name. More...
 
virtual ~domainDecomposition ()
 Destructor. More...
 
const fvMeshcompleteMesh () const
 Access the global mesh. More...
 
const PtrList< fvMesh > & procMeshes () const
 Access the processor meshes. More...
 
label nProcs () const
 Return the number of processors in the decomposition. More...
 
void readComplete ()
 ... More...
 
void readProcs ()
 ... More...
 
void readAddressing ()
 ... More...
 
fvMesh::readUpdateState readUpdate ()
 ... More...
 
void decompose ()
 Decompose the complete mesh to create the processor meshes and. More...
 
void reconstruct ()
 Reconstruct the processor meshes to create the complete mesh and. More...
 
labelList cellToProc () const
 Return the distribution as an FV field for writing. More...
 
const labelListListprocPointAddressing () const
 Access the labels of points for each processor. More...
 
const labelListListprocFaceAddressing () const
 Access the labels of faces for each processor (see notes above) More...
 
const labelListListprocCellAddressing () const
 Access the labels of cells for each processor. More...
 
const PtrList< surfaceLabelField::Boundary > & procFaceAddressingBf () const
 Access the labels of faces for each processor (see notes above) More...
 
void writeAddressing () const
 Write the decomposition addressing. More...
 
void writeComplete (const bool doSets) const
 Write the decomposed meshes and associated data. More...
 
void writeProcs (const bool doSets) const
 Write the decomposed meshes and associated data. More...
 

Detailed Description

Automatic domain decomposition class for finite-volume meshes.

Source files

Definition at line 52 of file domainDecomposition.H.

Constructor & Destructor Documentation

◆ domainDecomposition()

domainDecomposition ( const processorRunTimes procRunTimes,
const word regionName 
)

Construct from processor run times and region name.

Definition at line 564 of file domainDecomposition.C.

◆ ~domainDecomposition()

~domainDecomposition ( )
virtual

Destructor.

Definition at line 582 of file domainDecomposition.C.

Member Function Documentation

◆ TypeName()

TypeName ( "domainDecomposition"  )

Runtime type information.

◆ completeMesh()

const fvMesh& completeMesh ( ) const
inline

Access the global mesh.

Definition at line 191 of file domainDecomposition.H.

Referenced by domainDecomposition::decompose().

Here is the caller graph for this function:

◆ procMeshes()

const PtrList<fvMesh>& procMeshes ( ) const
inline

Access the processor meshes.

Definition at line 198 of file domainDecomposition.H.

◆ nProcs()

label nProcs ( ) const
inline

Return the number of processors in the decomposition.

Definition at line 205 of file domainDecomposition.H.

References domainDecomposition::cellToProc(), domainDecomposition::decompose(), processorRunTimes::nProcs(), domainDecomposition::readAddressing(), domainDecomposition::readComplete(), domainDecomposition::readProcs(), domainDecomposition::readUpdate(), and domainDecomposition::reconstruct().

Referenced by domainDecomposition::decompose().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readComplete()

void readComplete ( )

...

Definition at line 588 of file domainDecomposition.C.

References IOobject::NO_READ, and IOobject::NO_WRITE.

Referenced by domainDecomposition::nProcs().

Here is the caller graph for this function:

◆ readProcs()

void readProcs ( )

...

Definition at line 609 of file domainDecomposition.C.

References IOobject::NO_READ, and IOobject::NO_WRITE.

Referenced by domainDecomposition::nProcs().

Here is the caller graph for this function:

◆ readAddressing()

void readAddressing ( )

...

Definition at line 634 of file domainDecomposition.C.

References polyMesh::facesInstance(), polyMesh::meshSubDir, IOobject::MUST_READ, and IOobject::NO_WRITE.

Referenced by domainDecomposition::nProcs().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readUpdate()

...

Definition at line 688 of file domainDecomposition.C.

References forAll, fvMesh::nonGeometric, Foam::fvc::reconstruct(), polyMesh::TOPO_CHANGE, and polyMesh::UNCHANGED.

Referenced by domainDecomposition::nProcs().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ decompose()

void decompose ( )

◆ reconstruct()

void reconstruct ( )

Reconstruct the processor meshes to create the complete mesh and.

populate the addressing

Definition at line 36 of file domainDecompositionReconstruct.C.

References NotImplemented.

Referenced by domainDecomposition::nProcs().

Here is the caller graph for this function:

◆ cellToProc()

Foam::labelList cellToProc ( ) const

Return the distribution as an FV field for writing.

Definition at line 786 of file domainDecomposition.C.

References forAll.

Referenced by domainDecomposition::nProcs().

Here is the caller graph for this function:

◆ procPointAddressing()

const labelListList& procPointAddressing ( ) const
inline

Access the labels of points for each processor.

Definition at line 234 of file domainDecomposition.H.

◆ procFaceAddressing()

const labelListList& procFaceAddressing ( ) const
inline

Access the labels of faces for each processor (see notes above)

Definition at line 241 of file domainDecomposition.H.

◆ procCellAddressing()

const labelListList& procCellAddressing ( ) const
inline

Access the labels of cells for each processor.

Definition at line 248 of file domainDecomposition.H.

References domainDecomposition::procFaceAddressingBf(), domainDecomposition::writeAddressing(), domainDecomposition::writeComplete(), and domainDecomposition::writeProcs().

Here is the call graph for this function:

◆ procFaceAddressingBf()

◆ writeAddressing()

void writeAddressing ( ) const

Write the decomposition addressing.

Definition at line 1140 of file domainDecomposition.C.

References polyMesh::facesInstance(), polyMesh::meshSubDir, IOobject::NO_READ, IOobject::NO_WRITE, and regIOobject::write().

Referenced by domainDecomposition::procCellAddressing().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeComplete()

◆ writeProcs()

void writeProcs ( const bool  doSets) const

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