Go to the documentation of this file.
44 #ifndef zoneDistribute_H
45 #define zoneDistribute_H
67 public MeshObject<fvMesh, TopologicalMeshObject, zoneDistribute>
88 template<
typename Type>
98 template<
typename Type>
150 template<
typename Type>
159 template<
typename Type>
167 template<
typename Type>
Type getValue(const GeometricField< Type, fvPatchField, volMesh > &phi, const Map< Type > &valuesFromOtherProc, const label gblIdx) const
virtual ~zoneDistribute()=default
Destructor.
Map< Type > getDatafromOtherProc(const boolList &zone, const GeometricField< Type, fvPatchField, volMesh > &phi)
Returns stencil and provides a Map with globalNumbering.
TypeName("zoneDistribute")
Runtime information.
Base class for mesh zones.
A HashTable to objects of type <T> with a label key.
const globalIndex & globalNumbering() const noexcept
Addressing reference.
zoneDistribute(const fvMesh &)
Construct from fvMesh.
Mesh data needed to do the Finite Volume discretisation.
Calculates a unique integer (label so might not have enough room - 2G max) for processor + local inde...
static zoneDistribute & New(const fvMesh &)
void setUpCommforZone(const boolList &zone, bool updateStencil=true)
Update stencil with boolList the size has to match mesh nCells.
void updateStencil(const boolList &zone)
Updates stencil with boolList the size has to match mesh nCells.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Class for parallel communication in a narrow band. It either provides a Map with the neighbouring val...
const labelListList & getStencil() noexcept
Stencil reference.
Map< Field< Type > > getFields(const boolList &zone, const GeometricField< Type, fvPatchField, volMesh > &phi)
Returns stencil and provides a Map with globalNumbering.
Templated abstract base-class for optional mesh objects used to automate their allocation to the mesh...
computes a cell point cell stencil in a narrow band. resizes in case of topological change