35#ifndef cellCellStencilObject_H
36#define cellCellStencilObject_H
46class cellCellStencilObject;
93 mesh.schemesDict().subDict
95 "oversetInterpolation"
112 return stencilPtr_().update();
118 return stencilPtr_().update();
124 return stencilPtr_().cellTypes();
130 return stencilPtr_().interpolationCells();
136 return stencilPtr_().cellInterpolationMap();
143 return stencilPtr_().cellStencil();
149 return stencilPtr_().cellInterpolationWeights();
156 return stencilPtr_().cellInterpolationWeight();
167 stencilPtr_().stencilWeights(
sample, donorCcs, weights);
174 return stencilPtr_().nonInterpolatedFields();
Minimal example by using system/controlDict.functions:
Templated abstract base-class for optional mesh objects used to automate their allocation to the mesh...
static const Type & New(const Mesh &mesh, Args &&... args)
Get existing or create a new MeshObject.
const Mesh & mesh() const
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
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 bool movePoints()
Callback for geometry motion.
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.
Calculation of interpolation stencils.
Mesh data needed to do the Finite Volume discretisation.
Class containing processor-to-processor mapping information.
MeshObject< fvMesh, Foam::MoveableMeshObject, cellCellStencilObject > Stencil
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.