Loading...
Searching...
No Matches
extendedCellToFaceStencil Class Reference

Calculates/constains the extended cell-to-face stencil. More...

#include <extendedCellToFaceStencil.H>

Inheritance diagram for extendedCellToFaceStencil:
Collaboration diagram for extendedCellToFaceStencil:

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 polyMeshmesh_

Detailed Description

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

  • cells first
  • then all (non-empty patch) boundary faces

When used in evaluation is a two stage process:

  • collect the data (cell data and non-empty boundaries) into a single field
  • (parallel) distribute the field
  • sum the weights*field.
Source files

Definition at line 63 of file extendedCellToFaceStencil.H.

Constructor & Destructor Documentation

◆ extendedCellToFaceStencil()

Member Function Documentation

◆ writeStencilStats()

◆ ClassName()

ClassName ( "extendedCellToFaceStencil" )

◆ collectData() [1/2]

template<class T>
void collectData ( const mapDistribute & map,
const labelListList & stencil,
const GeometricField< T, fvPatchField, volMesh > & fld,
List< List< T > > & stencilFld )
static

◆ weightedSum() [1/2]

template<class Type>
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > weightedSum ( const mapDistribute & map,
const labelListList & stencil,
const GeometricField< Type, fvPatchField, volMesh > & fld,
const List< List< scalar > > & stencilWeights )
static

Sum vol field contributions to create face values.

References fld().

Referenced by extendedCentredCellToFaceStencil::weightedSum().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ collectData() [2/2]

template<class Type>
void collectData ( const mapDistribute & map,
const labelListList & stencil,
const GeometricField< Type, fvPatchField, volMesh > & fld,
List< List< Type > > & stencilFld )

◆ weightedSum() [2/2]

Member Data Documentation

◆ mesh_

const polyMesh& mesh_
protected

Definition at line 69 of file extendedCellToFaceStencil.H.

Referenced by extendedCellToFaceStencil().


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