Calculates/constains the extended cell-to-face stencil. More...
#include <extendedCellToFaceStencil.H>


Public Member Functions | |
| ClassName ("extendedCellToFaceStencil") | |
| extendedCellToFaceStencil (const polyMesh &) | |
| Construct from mesh. | |
| template<class Type> | |
| void | collectData (const mapDistribute &map, const labelListList &stencil, const GeometricField< Type, fvPatchField, volMesh > &fld, List< List< Type > > &stencilFld) |
| template<class Type> | |
| Foam::tmp< Foam::GeometricField< Type, Foam::fvsPatchField, Foam::surfaceMesh > > | weightedSum (const mapDistribute &map, const labelListList &stencil, const GeometricField< Type, fvPatchField, volMesh > &fld, const List< List< scalar > > &stencilWeights) |
Static Public Member Functions | |
| template<class T> | |
| static void | collectData (const mapDistribute &map, const labelListList &stencil, const GeometricField< T, fvPatchField, volMesh > &fld, List< List< T > > &stencilFld) |
| Use map to get the data into stencil order. | |
| template<class Type> | |
| static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | weightedSum (const mapDistribute &map, const labelListList &stencil, const GeometricField< Type, fvPatchField, volMesh > &fld, const List< List< scalar > > &stencilWeights) |
| Sum vol field contributions to create face values. | |
Static Protected Member Functions | |
| static void | writeStencilStats (Ostream &os, const labelListList &stencil, const mapDistribute &map) |
| Write some statistics about stencil. | |
Protected Attributes | |
| const polyMesh & | mesh_ |
Calculates/constains the extended cell-to-face stencil.
The stencil is a list of indices into either cells or boundary faces in a compact way. (element 0 is owner, 1 is neighbour). The index numbering is
When used in evaluation is a two stage process:
Definition at line 63 of file extendedCellToFaceStencil.H.
|
explicit |
Construct from mesh.
Definition at line 94 of file extendedCellToFaceStencil.C.
References coupled, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, mesh, mesh_, patchIdentifier::name(), coupledPolyPatch::parallel(), patches, Foam::refCast(), and coupledPolyPatch::separated().
Referenced by extendedCentredCellToFaceStencil::extendedCentredCellToFaceStencil(), extendedUpwindCellToFaceStencil::extendedUpwindCellToFaceStencil(), and extendedUpwindCellToFaceStencil::extendedUpwindCellToFaceStencil().


|
staticprotected |
Write some statistics about stencil.
Definition at line 35 of file extendedCellToFaceStencil.C.
References Foam::endl(), forAll, Foam::labelMax, Foam::labelMin, Foam::max(), Foam::min(), UPstream::myProcNo(), Foam::nl, os(), Foam::reduce(), Foam::returnReduce(), UList< T >::size(), and mapDistributeBase::subMap().
Referenced by centredCECCellToFaceStencilObject::centredCECCellToFaceStencilObject(), centredCFCCellToFaceStencilObject::centredCFCCellToFaceStencilObject(), centredCPCCellToFaceStencilObject::centredCPCCellToFaceStencilObject(), centredFECCellToFaceStencilObject::centredFECCellToFaceStencilObject(), pureUpwindCFCCellToFaceStencilObject::pureUpwindCFCCellToFaceStencilObject(), upwindCECCellToFaceStencilObject::upwindCECCellToFaceStencilObject(), upwindCFCCellToFaceStencilObject::upwindCFCCellToFaceStencilObject(), upwindCPCCellToFaceStencilObject::upwindCPCCellToFaceStencilObject(), and upwindFECCellToFaceStencilObject::upwindFECCellToFaceStencilObject().


| ClassName | ( | "extendedCellToFaceStencil" | ) |
|
static |
Use map to get the data into stencil order.
References fld().
Referenced by extendedCentredCellToCellStencil::collectData(), extendedCentredCellToFaceStencil::collectData(), extendedUpwindCellToFaceStencil::extendedUpwindCellToFaceStencil(), extendedUpwindCellToFaceStencil::extendedUpwindCellToFaceStencil(), extendedCellToCellStencil::weightedSum(), weightedSum(), and extendedUpwindCellToFaceStencil::weightedSum().


|
static |
Sum vol field contributions to create face values.
References fld().
Referenced by extendedCentredCellToFaceStencil::weightedSum().


| void collectData | ( | const mapDistribute & | map, |
| const labelListList & | stencil, | ||
| const GeometricField< Type, fvPatchField, volMesh > & | fld, | ||
| List< List< Type > > & | stencilFld ) |
Definition at line 26 of file extendedCellToFaceStencilTemplates.C.
References mapDistributeBase::constructSize(), mapDistribute::distribute(), fld(), forAll, fvPatchFieldBase::patch(), List< T >::setSize(), UList< T >::size(), fvPatch::start(), and Foam::Zero.

| Foam::tmp< Foam::GeometricField< Type, Foam::fvsPatchField, Foam::surfaceMesh > > weightedSum | ( | const mapDistribute & | map, |
| const labelListList & | stencil, | ||
| const GeometricField< Type, fvPatchField, volMesh > & | fld, | ||
| const List< List< scalar > > & | stencilWeights ) |
Definition at line 80 of file extendedCellToFaceStencilTemplates.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), collectData(), fvsPatchFieldBase::coupled(), fld(), forAll, mesh, IOobjectOption::NO_READ, IOobjectOption::NO_REGISTER, IOobjectOption::NO_WRITE, fvsPatchFieldBase::patch(), tmp< T >::ref(), fvPatch::start(), and Foam::Zero.

|
protected |
Definition at line 69 of file extendedCellToFaceStencil.H.
Referenced by extendedCellToFaceStencil().