Creates mesh by extruding a patch. More...
Public Member Functions | |
ClassName ("createShellMesh") | |
Runtime type information. More... | |
createShellMesh (const primitiveFacePatch &patch, const faceList &pointRegions, const labelList ®ionPoints) | |
Construct from mesh. More... | |
const labelList & | cellToFaceMap () const |
From region cell to patch face. Consecutively added so. More... | |
const labelList & | faceToFaceMap () const |
From region face to patch face. Contains turning index: More... | |
const labelList & | faceToEdgeMap () const |
From region side-face to patch edge. -1 for non-edge faces. More... | |
const labelList & | pointToPointMap () const |
From region point to patch point. More... | |
void | setRefinement (const pointField &firstLayerThickness, const scalar expansionRatio, const label nLayers, const labelList &topPatchID, const labelList &bottomPatchID, const labelListList &extrudeEdgePatches, polyTopoChange &meshMod) |
Play commands into polyTopoChange to create layer mesh. More... | |
void | updateMesh (const mapPolyMesh &) |
Update any locally stored mesh information. More... | |
Static Public Member Functions | |
static void | calcPointRegions (const globalMeshData &globalData, const primitiveFacePatch &patch, const PackedBoolList &nonManifoldEdge, const bool syncNonCollocated, faceList &pointGlobalRegions, faceList &pointLocalRegions, labelList &localToGlobalRegion) |
Helper: calculate point regions. The point region is the. More... | |
Private Member Functions | |
createShellMesh (const createShellMesh &) | |
Disallow default bitwise copy construct. More... | |
void | operator= (const createShellMesh &) |
Disallow default bitwise assignment. More... | |
Static Private Member Functions | |
static void | syncEdges (const globalMeshData &, const labelList &, const labelList &, const PackedBoolList &sameEdgeOrientation, const bool syncNonCollocated, PackedBoolList &isChangedEdge, DynamicList< label > &changedEdges, labelPairList &allEdgeData) |
Private Attributes | |
const primitiveFacePatch & | patch_ |
Reference to patch to extrude. More... | |
const faceList & | pointRegions_ |
Per point on face the region. More... | |
const labelList & | regionPoints_ |
From region to original patch point. More... | |
labelList | cellToFaceMap_ |
labelList | faceToFaceMap_ |
labelList | faceToEdgeMap_ |
labelList | pointToPointMap_ |
Creates mesh by extruding a patch.
Definition at line 59 of file createShellMesh.H.
|
private |
Disallow default bitwise copy construct.
createShellMesh | ( | const primitiveFacePatch & | patch, |
const faceList & | pointRegions, | ||
const labelList & | regionPoints | ||
) |
Construct from mesh.
Definition at line 423 of file createShellMesh.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, and List::size().
|
staticprivate |
Definition at line 64 of file createShellMesh.C.
References DynamicList::append(), mapDistributeBase::constructSize(), forAll, globalMeshData::globalEdgeOrientation(), globalMeshData::globalEdgeSlaves(), globalMeshData::globalEdgeSlavesMap(), globalMeshData::globalEdgeTransformedSlaves(), Foam::labelMax, List::size(), and globalMeshData::syncData().
|
private |
Disallow default bitwise assignment.
ClassName | ( | "createShellMesh" | ) |
Runtime type information.
|
inline |
From region cell to patch face. Consecutively added so.
cell at layerI is at patchFaceI*nLayers+layerI
Definition at line 129 of file createShellMesh.H.
|
inline |
From region face to patch face. Contains turning index:
> 0 : face in same orientation as patch face. face will be in top patch < 0 : face in opposite orientation as patch face. face will be in bottom patch = 0 : for all side faces
Definition at line 140 of file createShellMesh.H.
|
inline |
From region side-face to patch edge. -1 for non-edge faces.
Definition at line 146 of file createShellMesh.H.
References createShellMesh::faceToEdgeMap_.
|
inline |
From region point to patch point.
Definition at line 152 of file createShellMesh.H.
References createShellMesh::pointToPointMap_.
|
static |
Helper: calculate point regions. The point region is the.
same on all faces connected to a point if they can be reached through a face-edge-face walk without crossing the nonManifoldEdge. syncNonCollocated = true: edges connected through cyclic become single region. false: kept separate. pointGlobalRegions : non-compact. Guaranteed to be the same across processors. pointLocalRegions : compact. localToGlobalRegion : local to global region.
Definition at line 154 of file createShellMesh.C.
References DynamicList::append(), DynamicList::clear(), globalMeshData::coupledPatch(), Foam::constant::electromagnetic::e, PrimitivePatch< Face, FaceList, PointField, PointType >::edgeFaces(), PrimitivePatch< Face, FaceList, PointField, PointType >::edges(), f(), PrimitivePatch< Face, FaceList, PointField, PointType >::faceEdges(), Foam::findIndex(), forAll, Foam::labelMax, PrimitivePatch< Face, FaceList, PointField, PointType >::localFaces(), globalIndex::localSize(), PrimitivePatch< Face, FaceList, PointField, PointType >::nEdges(), Foam::returnReduce(), List::setSize(), globalIndex::toGlobal(), and List::transfer().
Referenced by extrudePatchMesh::extrudeMesh().
void setRefinement | ( | const pointField & | firstLayerThickness, |
const scalar | expansionRatio, | ||
const label | nLayers, | ||
const labelList & | topPatchID, | ||
const labelList & | bottomPatchID, | ||
const labelListList & | extrudeEdgePatches, | ||
polyTopoChange & | meshMod | ||
) |
Play commands into polyTopoChange to create layer mesh.
Definition at line 446 of file createShellMesh.C.
References polyTopoChange::addCell(), polyTopoChange::addFace(), polyTopoChange::addPoint(), DynamicList::append(), Foam::constant::electromagnetic::e, Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, Foam::findIndex(), forAll, face::reverseFace(), List::size(), and Foam::Swap().
Referenced by extrudePatchMesh::extrudeMesh().
void updateMesh | ( | const mapPolyMesh & | map | ) |
Update any locally stored mesh information.
Definition at line 906 of file createShellMesh.C.
References createShellMesh::cellToFaceMap_, createShellMesh::faceToEdgeMap_, createShellMesh::faceToFaceMap_, Foam::inplaceReorder(), createShellMesh::pointToPointMap_, mapPolyMesh::reverseCellMap(), mapPolyMesh::reverseFaceMap(), and mapPolyMesh::reversePointMap().
Referenced by extrudePatchMesh::extrudeMesh().
|
private |
Reference to patch to extrude.
Definition at line 64 of file createShellMesh.H.
|
private |
Per point on face the region.
Definition at line 67 of file createShellMesh.H.
|
private |
From region to original patch point.
Definition at line 70 of file createShellMesh.H.
|
private |
Definition at line 73 of file createShellMesh.H.
Referenced by createShellMesh::updateMesh().
|
private |
Definition at line 75 of file createShellMesh.H.
Referenced by createShellMesh::updateMesh().
|
private |
Definition at line 77 of file createShellMesh.H.
Referenced by createShellMesh::faceToEdgeMap(), and createShellMesh::updateMesh().
|
private |
Definition at line 79 of file createShellMesh.H.
Referenced by createShellMesh::pointToPointMap(), and createShellMesh::updateMesh().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.