Go to the documentation of this file.
66 #ifndef polyTopoChange_H
67 #define polyTopoChange_H
88 class polyBoundaryMesh;
218 static void renumberKey
232 static void renumberReverseMap
239 static void renumberCompact
261 static void getMergeSets
269 bool hasValidPoints(
const face&
f)
const;
288 const label nActiveFaces,
296 const label nActiveFaces,
310 const label nActiveFaces,
320 void reorderCompactFaces
333 const bool orderCells,
334 const bool orderPoints,
335 label& nInternalPoints,
345 const bool internalFacesOnly
349 void calcPatchPointMap
357 void calcFaceInflationMaps
365 void calcCellInflationMaps
383 void calcFaceZonePointMap
394 void reorderCoupledFaces
396 const bool syncParallel,
404 void compactAndReorder
408 const bool syncParallel,
409 const bool orderCells,
410 const bool orderPoints,
411 label& nInternalPoints,
473 return faceNeighbour_;
527 const label masterPointID,
545 void removePoint(
const label pointi,
const label mergePointi);
554 const label masterPointID,
555 const label masterEdgeID,
556 const label masterFaceID,
557 const bool flipFaceFlux,
570 const bool flipFaceFlux,
577 void removeFace(
const label facei,
const label mergeFacei);
582 const label masterPointID,
583 const label masterEdgeID,
584 const label masterFaceID,
585 const label masterCellID,
593 void removeCell(
const label celli,
const label mergeCelli);
619 const bool syncParallel =
true,
620 const bool orderCells =
false,
621 const bool orderPoints =
false
629 const bool syncParallel =
true,
630 const bool orderCells =
false,
631 const bool orderPoints =
false
643 const bool syncParallel =
true,
644 const bool orderCells =
false,
645 const bool orderPoints =
false
656 const bool syncParallel =
true,
657 const bool orderCells =
false,
658 const bool orderPoints =
false
label addCell(const label masterPointID, const label masterEdgeID, const label masterFaceID, const label masterCellID, const label zoneID)
Add cell. Return new cell label.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
void clear()
Clear all storage.
void addMesh(const polyMesh &mesh, const labelUList &patchMap, const labelUList &pointZoneMap, const labelUList &faceZoneMap, const labelUList &cellZoneMap)
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO.
void removePoint(const label pointi, const label mergePointi)
Remove/merge point.
void removeCell(const label celli, const label mergeCelli)
Remove/merge cell.
const DynamicList< point > & points() const
Points. Shrunk after constructing mesh (or calling of compact())
A packed storage unstructured matrix of objects of type <T> using an offset table for access.
label addFace(const face &f, const label own, const label nei, const label masterPointID, const label masterEdgeID, const label masterFaceID, const bool flipFaceFlux, const label patchID, const label zoneID, const bool zoneFlip)
Add face to cells. Return new face label.
bool pointRemoved(const label pointi) const
label addPoint(const point &pt, const label masterPointID, const label zoneID, const bool inCell)
Add point. Return new point label.
Direct mesh changes based on v1.3 polyTopoChange syntax.
bool faceRemoved(const label facei) const
void modifyCell(const label celli, const label zoneID)
Modify zone of cell.
const DynamicList< label > & faceOwner() const
Mesh consisting of general polyhedral cells.
const DynamicList< label > & faceNeighbour() const
void setCapacity(const label nPoints, const label nFaces, const label nCells)
polyTopoChange(const label nPatches, const bool strict=true)
const DynamicList< face > & faces() const
void modifyFace(const face &f, const label facei, const label own, const label nei, const bool flipFaceFlux, const label patchID, const label zoneID, const bool zoneFlip)
Modify vertices or cell of face.
ListType reorder(const labelUList &oldToNew, const ListType &input, const bool prune=false)
Reorder the elements of a list.
autoPtr< mapPolyMesh > changeMesh(polyMesh &mesh, const labelUList &patchMap, const bool inflate, const bool syncParallel=true, const bool orderCells=false, const bool orderPoints=false)
Inplace changes mesh without change of patches.
OBJstream os(runTime.globalPath()/outputName)
const labelIOList & zoneID
bool cellRemoved(const label celli) const
void removeFace(const label facei, const label mergeFacei)
Remove/merge face.
ClassName("polyTopoChange")
Runtime type information.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
label setAction(const topoAction &action)
For compatibility with polyTopoChange: set topological action.
void modifyPoint(const label pointi, const point &pt, const label zoneID, const bool inCell)
Modify coordinate.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
autoPtr< mapPolyMesh > makeMesh(autoPtr< Type > &newMesh, const IOobject &io, const polyMesh &mesh, const labelUList &patchMap, const bool syncParallel=true, const bool orderCells=false, const bool orderPoints=false)
Create new mesh with old mesh patches. Additional dictionaries.
void setNumPatches(const label nPatches)
A virtual base class for topological actions.
A face is a list of labels corresponding to mesh vertices.
const DynamicList< label > & region() const
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
void movePoints(const pointField &newPoints)
Move all points. Incompatible with other topology changes.
Cell-face mesh analysis engine.