35#ifndef Foam_cellCellStencilObject_H
36#define Foam_cellCellStencilObject_H
58 public cellCellStencil
80 cellCellStencil(
mesh),
86 mesh.schemesDict().subDict
88 "oversetInterpolation"
108 return stencilPtr_().update();
114 return stencilPtr_().cellTypes();
120 return stencilPtr_().interpolationCells();
126 return stencilPtr_().cellInterpolationMap();
133 return stencilPtr_().cellStencil();
139 return stencilPtr_().cellInterpolationWeights();
146 return stencilPtr_().cellInterpolationWeight();
157 stencilPtr_().stencilWeights(
sample, donorCcs, weights);
164 return stencilPtr_().nonInterpolatedFields();
Minimal example by using system/controlDict.functions:
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
Templated abstract base-class for optional mesh objects used to automate their allocation to the mesh...
static FOAM_NO_DANGLING_REFERENCE const cellCellStencilObject & New(const fvMesh &mesh, Args &&... args)
const fvMesh & mesh() const noexcept
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
virtual bool movePoints()
Callback for geometry motion.
virtual bool update()
Update stencils. Return false if nothing changed.
virtual const wordHashSet & nonInterpolatedFields() const
Return the names of any (stencil or mesh specific) fields that.
virtual const labelUList & interpolationCells() const
Indices of interpolated cells.
virtual ~cellCellStencilObject()=default
Destructor.
virtual const mapDistribute & cellInterpolationMap() const
Return a communication schedule.
virtual const scalarList & cellInterpolationWeight() const
Per interpolated cell the interpolation factor. (0 = use.
virtual const labelUList & cellTypes() const
Return the cell type list.
virtual const List< scalarList > & cellInterpolationWeights() const
Weights for cellStencil.
cellCellStencilObject(const fvMesh &mesh, const bool update=true)
Construct with mesh.
virtual const labelListList & cellStencil() const
Per interpolated cell the neighbour cells (in terms of slots as.
TypeName("cellCellStencilObject")
virtual void stencilWeights(const point &sample, const pointList &donorCcs, scalarList &weights) const
Calculate weights for a single acceptor.
Mesh data needed to do the Finite Volume discretisation.
Class containing processor-to-processor mapping information.
HashSet< word, Hash< word > > wordHashSet
A HashSet of words, uses string hasher.
List< labelList > labelListList
List of labelList.
List< point > pointList
List of point.
vector point
Point is a vector.
UList< label > labelUList
A UList of labels.
List< scalar > scalarList
List of scalar.
MeshObject< fvMesh, MoveableMeshObject, cellCellStencilObject > Stencil
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.