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-to-facel stencils (face values from neighbouring cells) More...

#include <finiteVolume/cellToFaceStencil.H>


Detailed Description

baseclass for extended cell-to-facel stencils (face values from neighbouring cells)

Source files

Definition at line 55 of file cellToFaceStencil.H.

Inheritance diagram for cellToFaceStencil:
Collaboration diagram for cellToFaceStencil:

List of all members.

Classes

class  unionEqOp
 Combine operator for labelLists. More...

Public Member Functions

 cellToFaceStencil (const polyMesh &)
 Construct from mesh.
const polyMesh &  mesh () const
const globalIndex &  globalNumbering () const
 Global numbering for cells and boundary faces.
const cellToFaceStencil &  by_ref () const
 Work-around for C++ Standard Core Language Defect 391.

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.
void  calcFaceStencil (const labelListList &globalCellCells, labelListList &faceStencil) const
 Collect cell neighbours into extended stencil.

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

cellToFaceStencil ( const polyMesh &   mesh  ) [explicit]

Construct from mesh.

Definition at line 504 of file cellToFaceStencil.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 cellToFaceStencil.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 cellToFaceStencil.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 cellToFaceStencil.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 cellToFaceStencil.C.

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

const globalIndex& globalNumbering (  ) const [inline]
const cellToFaceStencil& by_ref (  ) const [inline]

Work-around for C++ Standard Core Language Defect 391.

Definition at line 152 of file cellToFaceStencil.H.


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