parPointFieldDistributor Class Reference

Distributor/redistributor for point fields, uses a two (or three) stage construction. More...

Public Member Functions

 parPointFieldDistributor (const pointMesh &srcMesh, const bool savePoints=false, const bool isWriteProc=false)
 Basic construction. More...
 
 parPointFieldDistributor (const pointMesh &srcMesh, const pointMesh &tgtMesh, const mapDistributePolyMesh &distMap, const bool savePoints=false, const bool isWriteProc=false)
 Full construction of source/target. More...
 
bool hasMeshPoints () const
 
bool hasPatchPointMaps () const
 True if patch maps (per boundary) exist. More...
 
bool hasTarget () const
 True if a target mesh/distribution map has been attached. More...
 
void clearMeshPoints ()
 Clear out meshPoints (per boundary) for the source mesh. More...
 
void clearPatchPointMaps ()
 Clear out patch maps (per boundary) More...
 
void saveMeshPoints ()
 Create/recreate meshPoints (per boundary) for the source mesh. More...
 
void createPatchPointMaps ()
 Construct per-patch addressing. More...
 
void resetTarget ()
 Clear target mesh / distribution map. More...
 
void resetTarget (const pointMesh &tgtMesh, const mapDistributePolyMesh &distMap)
 Reset target mesh / distribution map. More...
 
bool isWriteProc () const noexcept
 Get status of write enabled (on this proc) More...
 
bool isWriteProc (const bool on) noexcept
 Change status of write enabled (on this proc) More...
 
label distributeAllFields (const IOobjectList &objects, const wordRes &selectedFields=wordRes()) const
 
template<class Type >
tmp< GeometricField< Type, pointPatchField, pointMesh > > distributeField (const GeometricField< Type, pointPatchField, pointMesh > &fld) const
 Distribute point field. More...
 
template<class Type >
tmp< GeometricField< Type, pointPatchField, pointMesh > > distributePointField (const IOobject &fieldObject) const
 Read and distribute point field. More...
 
template<class Type >
label distributePointFields (const IOobjectList &objects, const wordRes &selectedFields=wordRes()) const
 Read, distribute and write all/selected point fields. More...
 
template<class Type >
void distributeAndStore (const PtrList< GeometricField< Type, pointPatchField, pointMesh > > &) const
 

Static Public Attributes

static int verbose_
 Output verbosity when writing. More...
 

Detailed Description

Distributor/redistributor for point fields, uses a two (or three) stage construction.

The inconvenient multi-stage construction is needed since the pointMesh is directly associated with a polyMesh, which will probably have changed while creating the target mesh. This means that it is necessary to save the size of the source mesh and all of its patch meshPoints prior to making any changes (eg, creating the target mesh).

  1. Create with specified source mesh
  2. Save the meshPoints (per boundary) for the source mesh
  3. Attach a target mesh and mesh distribution
  4. Map the point fields

Runs in parallel. Redistributes from srcMesh to tgtMesh.

Source files

Definition at line 74 of file parPointFieldDistributor.H.

Constructor & Destructor Documentation

◆ parPointFieldDistributor() [1/2]

parPointFieldDistributor ( const pointMesh srcMesh,
const bool  savePoints = false,
const bool  isWriteProc = false 
)
explicit

Basic construction.

Parameters
srcMeshThe source pointMesh
savePointsCall saveMeshPoints() immediately
isWriteProcTagged for output writing (on this proc)

◆ parPointFieldDistributor() [2/2]

parPointFieldDistributor ( const pointMesh srcMesh,
const pointMesh tgtMesh,
const mapDistributePolyMesh distMap,
const bool  savePoints = false,
const bool  isWriteProc = false 
)
explicit

Full construction of source/target.

Parameters
srcMeshThe source pointMesh
tgtMeshThe target pointMesh
distMapThe distribution map
savePointsCall saveMeshPoints() immediately
isWriteProcTagged for output writing (on this proc)

Member Function Documentation

◆ hasMeshPoints()

bool hasMeshPoints ( ) const

True if meshPoints (per boundary) for the source mesh have been saved

◆ hasPatchPointMaps()

bool hasPatchPointMaps ( ) const

True if patch maps (per boundary) exist.

◆ hasTarget()

bool hasTarget ( ) const

True if a target mesh/distribution map has been attached.

◆ clearMeshPoints()

void clearMeshPoints ( )

Clear out meshPoints (per boundary) for the source mesh.

◆ clearPatchPointMaps()

void clearPatchPointMaps ( )

Clear out patch maps (per boundary)

◆ saveMeshPoints()

void saveMeshPoints ( )

Create/recreate meshPoints (per boundary) for the source mesh.

◆ createPatchPointMaps()

void createPatchPointMaps ( )

Construct per-patch addressing.

◆ resetTarget() [1/2]

void resetTarget ( )

Clear target mesh / distribution map.

◆ resetTarget() [2/2]

void resetTarget ( const pointMesh tgtMesh,
const mapDistributePolyMesh distMap 
)

Reset target mesh / distribution map.

◆ isWriteProc() [1/2]

bool isWriteProc ( ) const
inlinenoexcept

Get status of write enabled (on this proc)

Definition at line 181 of file parPointFieldDistributor.H.

◆ isWriteProc() [2/2]

bool isWriteProc ( const bool  on)
inlinenoexcept

Change status of write enabled (on this proc)

Definition at line 187 of file parPointFieldDistributor.H.

◆ distributeAllFields()

label distributeAllFields ( const IOobjectList objects,
const wordRes selectedFields = wordRes() 
) const

Read, distribute and write all/selected point field types (scalar, vector, ... types)

◆ distributeField()

tmp< GeometricField< Type, pointPatchField, pointMesh > > distributeField ( const GeometricField< Type, pointPatchField, pointMesh > &  fld) const

Distribute point field.

◆ distributePointField()

tmp< GeometricField< Type, pointPatchField, pointMesh > > distributePointField ( const IOobject fieldObject) const

Read and distribute point field.

◆ distributePointFields()

label distributePointFields ( const IOobjectList objects,
const wordRes selectedFields = wordRes() 
) const

Read, distribute and write all/selected point fields.

◆ distributeAndStore()

void distributeAndStore ( const PtrList< GeometricField< Type, pointPatchField, pointMesh > > &  ) const

Distributed each (unregistered!) point field and store the result on its objectRegistry

Member Data Documentation

◆ verbose_

int verbose_
static

Output verbosity when writing.

Definition at line 112 of file parPointFieldDistributor.H.


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