52#ifndef Foam_fvMeshDistribute_H
53#define Foam_fvMeshDistribute_H
81 static void inplaceRenumberWithFlip
84 const bool oldToNewHasFlip,
85 const bool lstHasFlip,
92 const bool selectEqual,
101 template<
class ZoneMesh>
108 label findNonEmptyPatch()
const;
111 template<
class T,
class Mesh>
112 void saveBoundaryFields
118 template<
class T,
class Mesh>
119 void mapBoundaryFields
138 template<
class GeoField,
class PatchFieldType>
141 const typename GeoField::value_type& initVal
186 static void subsetCouplingData
196 const label oldInternalFaces,
213 static void findCouples
232 static void findCouples
251 const label nInternalFaces1,
270 const label oldInternalPatchi
308 template<
class GeoField>
309 static void getFieldNames
314 const bool syncPar =
true
318 template<
class GeoField>
319 static void sendFields
344 template<
class GeoField>
345 static void receiveFields
355 fvMeshDistribute(
const fvMeshDistribute&) =
delete;
358 void operator=(
const fvMeshDistribute&) =
delete;
393 template<
class GeoField>
397 template<
class GeoField>
A field of fields is a PtrList of fields with reference counting.
Generic templated field type that is much like a Foam::List except that it is expected to hold numeri...
A HashTable similar to std::unordered_map.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
A HashTable to objects of type <T> with a label key.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Accumulating histogram of values. Specified bin resolution automatic generation of bins.
ClassName("fvMeshDistribute")
static void printCoupleInfo(const primitiveMesh &, const labelList &, const labelList &, const labelList &, const labelList &)
Print some info on coupling data.
static void printMeshInfo(const polyMesh &)
Print some info on mesh.
static void printIntFieldInfo(const fvMesh &)
Print some field info.
static labelList countCells(const labelList &)
Helper function: count cells per processor in wanted distribution.
static tmp< surfaceScalarField > generateTestField(const fvMesh &)
Generate a test field on faces.
static void printFieldInfo(const fvMesh &)
Print some field info.
autoPtr< mapDistributePolyMesh > distribute(const labelList &dist)
Send cells to neighbours according to distribution.
static void testField(const surfaceScalarField &)
Check whether field consistent with face orientation.
Holds a reference to the original mesh (the baseMesh) and optionally to a subset of that mesh (the su...
Mesh data needed to do the Finite Volume discretisation.
Class containing mesh-to-mesh mapping information after a mesh addition where we add a mesh ('added m...
Class containing mesh-to-mesh mapping information after a mesh distribution where we send parts of me...
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
Mesh consisting of general polyhedral cells.
Cell-face mesh analysis engine.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
static const word null
An empty word.
#define ClassName(TypeNameString)
Add typeName information from argument TypeNameString to a class.
Foam::PtrList< Foam::fvMesh > meshes(regionNames.size())
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
List< word > wordList
List of word.
List< labelList > labelListList
List of labelList.
List< label > labelList
A List of labels.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
UList< label > labelUList
A UList of labels.
multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields