faMeshReconstructor Class Reference

A bare-bones reconstructor for finiteArea meshes when processor meshes are available (in parallel) but an equivalent serial faMesh is needed for reconstruction or decomposition. In these situations, a serial version of the faMesh is needed, but preferably without reconstructing the entire volume mesh. More...

Public Member Functions

 faMeshReconstructor (const faMesh &procMesh)
 Construct from components. More...
 
 faMeshReconstructor (const faMesh &procMesh, const labelUList &fvFaceProcAddressing)
 Construct from components. More...
 
 ~faMeshReconstructor ()
 Destructor. More...
 
void clearGeom ()
 
const labelListpointProcAddressing () const noexcept
 Processor point addressing. More...
 
const labelListedgeProcAddressing () const noexcept
 Processor edge addressing. More...
 
const labelListfaceProcAddressing () const noexcept
 Processor face addressing. More...
 
const labelListboundaryProcAddressing () const noexcept
 Processor boundary addressing. More...
 
const primitivePatchpatch () const
 Serial equivalent patch. More...
 
primitivePatchpatch ()
 Serial equivalent patch. More...
 
const faMeshmesh () const
 Serial equivalent faMesh. More...
 
void writeAddressing () const
 Write proc addressing at the polyMesh faceInstances time. More...
 
void writeAddressing (const word &timeName) const
 Write proc addressing at the given time. More...
 
void writeMesh () const
 Write equivalent mesh information at the polyMesh faceInstances time. More...
 
void writeMesh (const word &timeName) const
 Write equivalent mesh information at the given time. More...
 

Static Public Attributes

static int debug = 0
 Debug flag. More...
 

Detailed Description

A bare-bones reconstructor for finiteArea meshes when processor meshes are available (in parallel) but an equivalent serial faMesh is needed for reconstruction or decomposition. In these situations, a serial version of the faMesh is needed, but preferably without reconstructing the entire volume mesh.

It uses the finiteVolume faceProcAddressing in addition to the geometric information available from the underlying polyMesh.

The resulting equivalent faMesh can be used for basic operations, but caution should be exercised before attempting large operations.

Source files

Definition at line 64 of file faMeshReconstructor.H.

Constructor & Destructor Documentation

◆ faMeshReconstructor() [1/2]

faMeshReconstructor ( const faMesh procMesh)
explicit

Construct from components.

Definition at line 533 of file faMeshReconstructor.C.

References Foam::exit(), Foam::FatalError, FatalErrorInFunction, polyMesh::meshSubDir, IOobject::MUST_READ, Foam::nl, IOobject::NO_WRITE, and UPstream::parRun().

Here is the call graph for this function:

◆ faMeshReconstructor() [2/2]

faMeshReconstructor ( const faMesh procMesh,
const labelUList fvFaceProcAddressing 
)

Construct from components.

Definition at line 576 of file faMeshReconstructor.C.

References Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::nl, and UPstream::parRun().

Here is the call graph for this function:

◆ ~faMeshReconstructor()

Destructor.

Definition at line 596 of file faMeshReconstructor.C.

Member Function Documentation

◆ clearGeom()

void clearGeom ( )

Definition at line 602 of file faMeshReconstructor.C.

◆ pointProcAddressing()

const labelList& pointProcAddressing ( ) const
inlinenoexcept

Processor point addressing.

Definition at line 163 of file faMeshReconstructor.H.

◆ edgeProcAddressing()

const labelList& edgeProcAddressing ( ) const
inlinenoexcept

Processor edge addressing.

Definition at line 169 of file faMeshReconstructor.H.

◆ faceProcAddressing()

const labelList& faceProcAddressing ( ) const
inlinenoexcept

Processor face addressing.

Definition at line 175 of file faMeshReconstructor.H.

◆ boundaryProcAddressing()

const labelList& boundaryProcAddressing ( ) const
inlinenoexcept

Processor boundary addressing.

Definition at line 181 of file faMeshReconstructor.H.

◆ patch() [1/2]

const Foam::primitivePatch & patch ( ) const

Serial equivalent patch.

Definition at line 610 of file faMeshReconstructor.C.

◆ patch() [2/2]

Foam::primitivePatch & patch ( )

Serial equivalent patch.

Definition at line 621 of file faMeshReconstructor.C.

◆ mesh()

const Foam::faMesh & mesh ( ) const

Serial equivalent faMesh.

Definition at line 632 of file faMeshReconstructor.C.

◆ writeAddressing() [1/2]

void writeAddressing ( ) const

Write proc addressing at the polyMesh faceInstances time.

Definition at line 643 of file faMeshReconstructor.C.

◆ writeAddressing() [2/2]

void writeAddressing ( const word timeName) const

Write proc addressing at the given time.

Definition at line 649 of file faMeshReconstructor.C.

References faMesh::meshSubDir, IOobject::NO_READ, IOobject::NO_WRITE, IOobject::rename(), timeName, and regIOobject::write().

Here is the call graph for this function:

◆ writeMesh() [1/2]

void writeMesh ( ) const

Write equivalent mesh information at the polyMesh faceInstances time.

Definition at line 682 of file faMeshReconstructor.C.

◆ writeMesh() [2/2]

void writeMesh ( const word timeName) const

Write equivalent mesh information at the given time.

Definition at line 688 of file faMeshReconstructor.C.

References faMesh::boundary(), fileOperation::distributed(), Foam::fileHandler(), UPstream::master(), mesh, fileOperation::NewUncollated(), UPstream::parRun(), IOobject::rename(), and regIOobject::write().

Here is the call graph for this function:

Member Data Documentation

◆ debug

int debug = 0
static

Debug flag.

Definition at line 138 of file faMeshReconstructor.H.


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