63 #ifndef polyTopoChange_H
64 #define polyTopoChange_H
86 class polyBoundaryMesh;
92 template<
class T>
class CompactListList;
213 static void getMergeSets
221 bool hasValidPoints(
const face&)
const;
239 const label nActiveFaces,
247 const label nActiveFaces,
261 const label nActiveFaces,
271 void reorderCompactFaces
289 const bool orderCells,
290 const bool orderPoints,
291 label& nInternalPoints,
308 const bool internalFacesOnly
312 void calcPatchPointMap
320 void reorderCoupledFaces
322 const bool syncParallel,
329 void compactAndReorder
332 const bool syncParallel,
333 const bool orderCells,
334 const bool orderPoints,
335 label& nInternalPoints,
392 return faceNeighbour_;
426 const label masterPointID,
450 const label masterFaceID,
451 const bool flipFaceFlux,
462 const bool flipFaceFlux,
493 const bool syncParallel =
true,
494 const bool orderCells =
false,
495 const bool orderPoints =
false
504 const bool syncParallel =
true,
505 const bool orderCells =
false,
506 const bool orderPoints =
false
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
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,...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
A face is a list of labels corresponding to mesh vertices.
Mesh consisting of general polyhedral cells.
Direct mesh changes based on v1.3 polyTopoChange syntax.
void modifyPoint(const label, const point &, const bool inCell)
Modify coordinate.
void removePoint(const label, const label)
Remove point / merge points.
autoPtr< polyTopoChangeMap > makeMesh(autoPtr< fvMesh > &newMesh, const IOobject &io, const polyMesh &mesh, const bool syncParallel=true, const bool orderCells=false, const bool orderPoints=false)
Create new mesh with old mesh patches.
bool cellRemoved(const label celli) const
Is cell removed?
polyTopoChange(const label nPatches, const bool strict=true)
Construct without mesh. Either specify nPatches or use.
bool pointRemoved(const label pointi) const
Is point removed?
const DynamicList< face > & faces() const
const DynamicList< point > & points() const
Points. Shrunk after constructing mesh (or calling of compact())
void removeFace(const label, const label)
Remove face / merge faces.
void setNumPatches(const label nPatches)
Explicitly set the number of patches if construct-without-mesh.
void setCapacity(const label nPoints, const label nFaces, const label nCells)
Explicitly pre-size the dynamic storage for expected mesh.
label addCell(const label masterCellID)
Add cell and return new cell index.
bool faceRemoved(const label facei) const
Is face removed?
const DynamicList< label > & faceOwner() const
autoPtr< polyTopoChangeMap > changeMesh(polyMesh &mesh, const bool syncParallel=true, const bool orderCells=false, const bool orderPoints=false)
Inplace changes mesh without change of patches.
ClassName("polyTopoChange")
Runtime type information.
const DynamicList< label > & faceNeighbour() const
label addPoint(const point &, const label masterPointID, const bool inCell)
Add point and return new point index.
void clear()
Clear all storage.
void removeCell(const label, const label)
Remove cell / merge cells.
const DynamicList< label > & region() const
void modifyFace(const face &f, const label facei, const label own, const label nei, const bool flipFaceFlux, const label patchID)
Modify vertices or cell of face.
label addFace(const face &f, const label own, const label nei, const label masterFaceID, const bool flipFaceFlux, const label patchID)
Add face to cells and return new face index.
Cell-face mesh analysis engine.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
ListType reorder(const label size, const typename ListType::value_type &defaultValue, const labelUList &oldToNew, const ListType &lst)