OpenFOAM logo
Open Source CFD Toolkit

parallelInfo Class Reference

Inheritance diagram for parallelInfo:

Inheritance graph
[legend]
Collaboration diagram for parallelInfo:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ClassName ("parallelInfo")
 Runtime type information.
 parallelInfo (const polyMesh &mesh)
 Construct from mesh, derive rest (does parallel communication!).
 parallelInfo (const IOobject &io, const polyMesh &mesh)
 Old behaviour: read constructor given IOobject and a polyMesh.
 parallelInfo (const polyMesh &mesh, const bool parallel, const bool cyclicParallel, const label nTotalPoints, const label nTotalFaces, const label nTotalCells, const label nGlobalPoints, const labelList &sharedPointLabels, const labelList &sharedPointAddr, const labelList &sharedPointGlobalLabels)
 Construct from components. !To be removed when we trust above.
 ~parallelInfo ()
void clearOut ()
 Remove all demand driven data.
const polyMeshmesh () const
 Return the mesh reference.
bool parallel () const
 Does the mesh contain processor patches? (also valid when.
const boundBoxbb () const
bool cyclicParallel () const
 Does the mesh contain cyclic parallel faces (only valid when.
label nTotalPoints () const
 Return total number of points in decomposed mesh.
label nTotalFaces () const
 Return total number of faces in decomposed mesh.
label nTotalCells () const
 Return total number of cells in decomposed mesh.
const labelListprocessorPatches () const
 Return list of processor patch labels.
const labelListprocessorPatchIndices () const
 Return list of indices into processorPatches_ for each patch.
const labelListprocessorPatchNeighbours () const
 Return processorPatchIndices of the neighbours.
label nGlobalPoints () const
 Return number of globally shared points.
const labelListsharedPointLabels () const
 Return indices of local points that are globally shared.
const labelListsharedPointAddr () const
 Return addressing into the complete globally shared points.
const labelListsharedPointGlobalLabels () const
 Return shared point global labels. Tries to read.
pointField sharedPoints () const
 Collect coordinates of shared points on all processors.
pointField geometricSharedPoints () const
 Like sharedPoints but keeps cyclic points separate.
label nGlobalEdges () const
 Return number of globally shared edges. Demand-driven.
const labelListsharedEdgeLabels () const
 Return indices of local edges that are globally shared.
const labelListsharedEdgeAddr () const
 Return addressing into the complete globally shared edge.
void movePoints (const pointField &newPoints)
 Update for moving points.
void updateMesh ()
 Change global mesh data given a topological change. Does a.
bool write () const

Static Public Attributes

const Foam::scalar matchTol_
 Geomtric tolerance (fraction of bounding box).

Friends

Ostreamoperator<< (Ostream &, const parallelInfo &)

Constructor & Destructor Documentation

parallelInfo const polyMesh mesh  ) 
 

Construct from mesh, derive rest (does parallel communication!).

parallelInfo const IOobject io,
const polyMesh mesh
 

Old behaviour: read constructor given IOobject and a polyMesh.

reference. Only use this for testing!

parallelInfo const polyMesh mesh,
const bool  parallel,
const bool  cyclicParallel,
const label  nTotalPoints,
const label  nTotalFaces,
const label  nTotalCells,
const label  nGlobalPoints,
const labelList sharedPointLabels,
const labelList sharedPointAddr,
const labelList sharedPointGlobalLabels
 

Construct from components. !To be removed when we trust above.

construct from mesh!

~parallelInfo  ) 
 


Member Function Documentation

const boundBox& bb  )  const [inline]
 

Definition at line 307 of file parallelInfo.H.

References Foam::label.

ClassName "parallelInfo"   ) 
 

Runtime type information.

void clearOut  ) 
 

Remove all demand driven data.

bool cyclicParallel  )  const [inline]
 

Does the mesh contain cyclic parallel faces (only valid when.

running parallel)

Definition at line 316 of file parallelInfo.H.

References Foam::labelList.

pointField geometricSharedPoints  )  const
 

Like sharedPoints but keeps cyclic points separate.

(does geometric merging; uses matchTol_*bb as merging tolerance) Use sharedPoints() instead.

const polyMesh& mesh  )  const [inline]
 

Return the mesh reference.

Definition at line 293 of file parallelInfo.H.

References Foam::label.

void movePoints const pointField newPoints  ) 
 

Update for moving points.

label nGlobalEdges  )  const
 

Return number of globally shared edges. Demand-driven.

calculation so call needs to be synchronous among processors!

label nGlobalPoints  )  const [inline]
 

Return number of globally shared points.

Definition at line 374 of file parallelInfo.H.

References Foam::pointField.

label nTotalCells  )  const [inline]
 

Return total number of cells in decomposed mesh.

Definition at line 334 of file parallelInfo.H.

label nTotalFaces  )  const [inline]
 

Return total number of faces in decomposed mesh.

Definition at line 328 of file parallelInfo.H.

label nTotalPoints  )  const [inline]
 

Return total number of points in decomposed mesh.

Definition at line 322 of file parallelInfo.H.

References Foam::labelList.

bool parallel  )  const [inline]
 

Does the mesh contain processor patches? (also valid when.

not running parallel)

Definition at line 302 of file parallelInfo.H.

const labelList& processorPatches  )  const [inline]
 

Return list of processor patch labels.

(size of list = number of processor patches)

Definition at line 346 of file parallelInfo.H.

References Foam::labelList.

const labelList& processorPatchIndices  )  const [inline]
 

Return list of indices into processorPatches_ for each patch.

Index = -1 for non-processor parches. (size of list = number of patches)

Definition at line 356 of file parallelInfo.H.

References Foam::labelList.

const labelList& processorPatchNeighbours  )  const [inline]
 

Return processorPatchIndices of the neighbours.

processor patches. -1 if not running parallel.

Definition at line 365 of file parallelInfo.H.

References Foam::labelList.

const labelList& sharedEdgeAddr  )  const
 

Return addressing into the complete globally shared edge.

list. The set of shared edges on the current processor is a subset of all shared edges. Shared edge addressing gives the index in the list of all globally shared edges for each of the locally shared edges. Demand-driven calculation so call needs to be synchronous among processors!

const labelList& sharedEdgeLabels  )  const
 

Return indices of local edges that are globally shared.

Demand-driven calculation so call needs to be synchronous among processors!

const labelList& sharedPointAddr  )  const [inline]
 

Return addressing into the complete globally shared points.

list Note: It is assumed that a (never constructed) complete list of globally shared points exists. The set of shared points on the current processor is a subset of all shared points. Shared point addressing gives the index in the list of all globally shared points for each of the locally shared points.

Definition at line 395 of file parallelInfo.H.

References Foam::labelList, and Foam::pointField.

const labelList& sharedPointGlobalLabels  )  const
 

Return shared point global labels. Tries to read.

'pointProcAddressing' and returns list or -1 if none available.

const labelList& sharedPointLabels  )  const [inline]
 

Return indices of local points that are globally shared.

Definition at line 380 of file parallelInfo.H.

References Foam::label, Foam::labelList, and Foam::pointField.

pointField sharedPoints  )  const
 

Collect coordinates of shared points on all processors.

(does parallel communication!) Note: not valid for cyclicParallel since shared cyclic points are merged into single global point. (use geometricSharedPoints instead)

void updateMesh  ) 
 

Change global mesh data given a topological change. Does a.

full parallel analysis to determine shared points and boundaries.

bool write  )  const
 


Friends And Related Function Documentation

Ostream& operator<< Ostream ,
const parallelInfo
[friend]
 


Member Data Documentation

const Foam::scalar matchTol_ [static]
 

Geomtric tolerance (fraction of bounding box).

Definition at line 247 of file parallelInfo.H.


The documentation for this class was generated from the following file:
For further information go to www.openfoam.org