102 #ifndef addPatchCellLayer_H
103 #define addPatchCellLayer_H
117 class polyTopoChange;
118 class polyTopoChangeMap;
201 bool sameEdgeNeighbour
206 const label thisGlobalFacei,
207 const label nbrGlobalFacei,
219 const label patchFacei,
220 const label globalFacei
232 const label newPatchID,
234 const label ownFacei,
235 const label nbrFacei,
237 const label numEdgeFaces,
377 overallDisplacement / nLayers,
#define forAll(list, i)
Loop across all elements in list.
label nPoints() const
Return number of points supporting patch faces.
label size() const
Return the number of elements in the list.
Adds layers of cells to outside of polyPatch. Can optionally create stand-alone extruded mesh (addToM...
static void calcSidePatch(const polyMesh &, const globalIndex &globalFaces, const labelListList &globalEdgeFaces, const indirectPrimitivePatch &pp, labelList &sidePatchID, label &nPatches, Map< label > &nbrProcToPatch, Map< label > &patchToNbrProc)
Boundary edges get extruded into boundary faces. Determine patch.
static labelListList addedCells(const polyMesh &, const labelListList &layerFaces)
Helper: get added cells per patch face.
const labelListList & layerFaces() const
Layer faces per patch face. See above.
void updateZones(polyMesh &mesh)
Update the mesh zones.
ClassName("addPatchCellLayer")
Runtime type information.
void topoChange(const polyTopoChangeMap &, const labelList &faceMap, const labelList &pointMap)
Update any locally stored mesh information. Gets additional.
void setRefinement(const polyMesh &mesh, const globalIndex &globalFaces, const labelListList &globalEdgeFaces, const scalarField &expansionRatio, const indirectPrimitivePatch &pp, const labelList &sidePatchID, const labelList &exposedPatchID, const labelList &nFaceLayers, const labelList &nPointLayers, const vectorField &firstLayerDisp, const labelList &faceCellZones, polyTopoChange &meshMod)
Play commands into polyTopoChange to create layers on top.
addPatchCellLayer(const polyMesh &, const bool addToMesh=true)
Construct from mesh.
const labelListList & addedPoints() const
Added points per patch point.
static labelListList globalEdgeFaces(const polyMesh &, const globalIndex &globalFaces, const indirectPrimitivePatch &pp)
Per patch edge the pp faces (in global indices) using it. Uses.
A face is a list of labels corresponding to mesh vertices.
Calculates a unique integer (label so might not have enough room - 2G max) for processor + local inde...
Mesh consisting of general polyhedral cells.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
Direct mesh changes based on v1.3 polyTopoChange syntax.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
List< label > labelList
A List of labels.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
label findIndex(const ListType &, typename ListType::const_reference, const label start=0)
Find first occurrence of given element and return index,.
Basic run-time type information using word as the type's name. Used to enhance the standard RTTI to c...