Public Member Functions | List of all members
globalPoints Class Reference

Calculates points shared by more than two processor patches or cyclic patches. More...

Public Member Functions

 ClassName ("globalPoints")
 Declare name of the class and its debug switch. More...
 
 globalPoints (const polyMesh &mesh, const bool keepAllPoints, const bool mergeSeparated)
 Construct from mesh. More...
 
 globalPoints (const polyMesh &mesh, const indirectPrimitivePatch &coupledPatch, const bool keepAllPoints, const bool mergeSeparated)
 Construct from mesh and patch of coupled faces. Difference with. More...
 
const globalIndexglobalIndices () const
 Global numbering of untransformed (mesh or patch) points. More...
 
const globalIndexAndTransformglobalTransforms () const
 Global numbering of transformed (mesh or patch) points. More...
 
const labelListListpointPoints () const
 Non-transformed connected points per point (in mapDistribute. More...
 
labelListListpointPoints ()
 Non-transformed connected points per point (in mapDistribute. More...
 
const labelListListtransformedPointPoints () const
 Transformed points per point (in mapDistribute indices) More...
 
labelListListtransformedPointPoints ()
 Transformed points per point (in mapDistribute indices) More...
 
const mapDistributemap () const
 Corresponding map. More...
 
mapDistributemap ()
 Corresponding map. More...
 
const Map< label > & meshToProcPoint () const
 From (mesh or patch) point to index in procPoints. More...
 
const DynamicList< labelPairList > & procPoints () const
 procPoints is per point the connected points (in More...
 

Detailed Description

Calculates points shared by more than two processor patches or cyclic patches.

Is used in globalMeshData. (this info is needed for point/edge communication where processor swaps are not enough to exchange data)

Works purely topological and using local communication only. Needs:

Works by constructing equivalence lists for all the points on processor patches. These list are in globalIndexAndTransform numbering E.g.

      ((7 93)(4 731)(3 114))

means point 93 on proc7 is connected to point 731 on proc4 and 114 on proc3. It then assigns the lowest numbered processor to be the local 'master' and constructs a mapDistribute to send all data to this master.

Algorithm:

At this point one will have complete point-point connectivity for all points on processor patches. Now (optionally) remove point equivalences of size 2. These are just normal points shared between two neighbouring procPatches.

Note: the data held is either mesh point labels (construct from mesh only) or patch point labels (construct from mesh and patch).

Source files

Definition at line 100 of file globalPoints.H.

Constructor & Destructor Documentation

◆ globalPoints() [1/2]

globalPoints ( const polyMesh mesh,
const bool  keepAllPoints,
const bool  mergeSeparated 
)

Construct from mesh.

keepAllPoints = false : filter out points that are on two neighbouring coupled patches only (so can be swapped) mergeSeparated: true : merge coupled points across separated patches. false : do not merge across coupled separated patches.

Definition at line 1093 of file globalPoints.C.

◆ globalPoints() [2/2]

globalPoints ( const polyMesh mesh,
const indirectPrimitivePatch coupledPatch,
const bool  keepAllPoints,
const bool  mergeSeparated 
)

Construct from mesh and patch of coupled faces. Difference with.

construct from mesh only is that this stores the meshToProcPoint, procPoints as patch local point labels instead of mesh point labels.

Definition at line 1121 of file globalPoints.C.

References PrimitivePatch< Face, FaceList, PointField, PointType >::meshPointMap(), and PrimitivePatch< Face, FaceList, PointField, PointType >::meshPoints().

Here is the call graph for this function:

Member Function Documentation

◆ ClassName()

ClassName ( "globalPoints"  )

Declare name of the class and its debug switch.

◆ globalIndices()

const globalIndex& globalIndices ( ) const
inline

Global numbering of untransformed (mesh or patch) points.

Definition at line 309 of file globalPoints.H.

◆ globalTransforms()

const globalIndexAndTransform& globalTransforms ( ) const
inline

Global numbering of transformed (mesh or patch) points.

Definition at line 315 of file globalPoints.H.

References globalPoints::pointPoints().

Here is the call graph for this function:

◆ pointPoints() [1/2]

const labelListList& pointPoints ( ) const
inline

Non-transformed connected points per point (in mapDistribute.

indices)

Definition at line 322 of file globalPoints.H.

Referenced by globalPoints::globalTransforms(), and minEqOp< labelPair >::operator()().

Here is the caller graph for this function:

◆ pointPoints() [2/2]

labelListList& pointPoints ( )
inline

Non-transformed connected points per point (in mapDistribute.

indices)

Definition at line 329 of file globalPoints.H.

◆ transformedPointPoints() [1/2]

const labelListList& transformedPointPoints ( ) const
inline

Transformed points per point (in mapDistribute indices)

Definition at line 335 of file globalPoints.H.

Referenced by minEqOp< labelPair >::operator()().

Here is the caller graph for this function:

◆ transformedPointPoints() [2/2]

labelListList& transformedPointPoints ( )
inline

Transformed points per point (in mapDistribute indices)

Definition at line 341 of file globalPoints.H.

◆ map() [1/2]

const mapDistribute& map ( ) const
inline

Corresponding map.

Definition at line 347 of file globalPoints.H.

Referenced by minEqOp< labelPair >::operator()().

Here is the caller graph for this function:

◆ map() [2/2]

mapDistribute& map ( )
inline

Corresponding map.

Definition at line 353 of file globalPoints.H.

◆ meshToProcPoint()

const Map<label>& meshToProcPoint ( ) const
inline

From (mesh or patch) point to index in procPoints.

Definition at line 359 of file globalPoints.H.

References globalPoints::procPoints().

Here is the call graph for this function:

◆ procPoints()

const DynamicList<labelPairList>& procPoints ( ) const
inline

procPoints is per point the connected points (in

globalTransformAndIndex point numbers)

Definition at line 366 of file globalPoints.H.

Referenced by globalPoints::meshToProcPoint().

Here is the caller graph for this function:

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