FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

baseclass for extended cell centred addressing. Contains per cell a list of neighbouring cells and/or boundaryfaces in global addressing. More...

#include <finiteVolume/cellToCellStencil.H>


Detailed Description

baseclass for extended cell centred addressing. Contains per cell a list of neighbouring cells and/or boundaryfaces in global addressing.

Source files

Definition at line 55 of file cellToCellStencil.H.

Inheritance diagram for cellToCellStencil:
Collaboration diagram for cellToCellStencil:

List of all members.

Classes

class  unionEqOp
 Combine operator for labelLists. More...

Public Member Functions

 cellToCellStencil (const polyMesh &)
 Construct from mesh.
const polyMesh &  mesh () const
const globalIndex &  globalNumbering () const
 Global numbering for cells and boundary faces.

Protected Member Functions

void  validBoundaryFaces (boolList &isValidBFace) const
 Valid boundary faces (not empty and not coupled)
autoPtr< indirectPrimitivePatch >  allCoupledFacesPatch () const
 Return patch of all coupled faces.
void  insertFaceCells (const label exclude0, const label exclude1, const boolList &nonEmptyFace, const labelList &faceLabels, labelHashSet &globals) const
 Collect cell neighbours of faces in global numbering.
labelList  calcFaceCells (const boolList &nonEmptyFace, const labelList &faceLabels, labelHashSet &globals) const
 Collect cell neighbours of faces in global numbering.

Static Protected Member Functions

static void  merge (const label, const label, const labelList &, labelList &)
 Merge two lists.
static void  merge (const label, const labelList &, labelList &)
 Merge two lists.

Constructor & Destructor Documentation

cellToCellStencil ( const polyMesh &   mesh  ) [explicit]

Construct from mesh.

Definition at line 342 of file cellToCellStencil.C.


Member Function Documentation

void merge ( const label   global0,
const label   global1,
const labelList &   listA,
labelList &   listB  
) [static, protected]
void merge ( const label   globalI,
const labelList &   pGlobals,
labelList &   cCells  
) [static, protected]

Merge two lists.

Definition at line 136 of file cellToCellStencil.C.

References forAll, forAllConstIter, and List< T >::setSize().

void validBoundaryFaces ( boolList &   isValidBFace  ) const [protected]
Foam::autoPtr< Foam::indirectPrimitivePatch > allCoupledFacesPatch (  ) const [protected]

Return patch of all coupled faces.

Definition at line 193 of file cellToCellStencil.C.

References polyMesh::boundaryMesh(), polyPatch::coupled(), forAll, mesh, patches, points, and polyPatch::start().

void insertFaceCells ( const label   exclude0,
const label   exclude1,
const boolList &   nonEmptyFace,
const labelList &   faceLabels,
labelHashSet &   globals  
) const [protected]

Collect cell neighbours of faces in global numbering.

Definition at line 267 of file cellToCellStencil.C.

References polyMesh::faceNeighbour(), polyMesh::faceOwner(), forAll, HashSet< Key, Hash >::insert(), mesh, and primitiveMesh::nInternalFaces().

Foam::labelList calcFaceCells ( const boolList &   nonEmptyFace,
const labelList &   faceLabels,
labelHashSet &   globals  
) const [protected]

Collect cell neighbours of faces in global numbering.

Definition at line 319 of file cellToCellStencil.C.

References HashTable< T, Key, Hash >::clear(), and HashTable< T, Key, Hash >::toc().

const polyMesh& mesh (  ) const [inline]

Definition at line 129 of file cellToCellStencil.H.

Referenced by cellToCellStencil::validBoundaryFaces().

const globalIndex& globalNumbering (  ) const [inline]

Global numbering for cells and boundary faces.

Definition at line 135 of file cellToCellStencil.H.


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