Class containing mesh-to-mesh mapping information after a change in polyMesh topology. More...
Public Member Functions | |
polyTopoChangeMap (const polyMesh &mesh, const label nOldPoints, const label nOldFaces, const label nOldCells, const labelList &pointMap, const List< objectMap > &pointsFromPoints, const labelList &faceMap, const List< objectMap > &facesFromPoints, const List< objectMap > &facesFromEdges, const List< objectMap > &facesFromFaces, const labelList &cellMap, const List< objectMap > &cellsFromPoints, const List< objectMap > &cellsFromEdges, const List< objectMap > &cellsFromFaces, const List< objectMap > &cellsFromCells, const labelList &reversePointMap, const labelList &reverseFaceMap, const labelList &reverseCellMap, const labelHashSet &flipFaceFlux, const labelListList &patchPointMap, const labelListList &pointZoneMap, const labelListList &faceZonePointMap, const labelListList &faceZoneFaceMap, const labelListList &cellZoneMap, const pointField &preMotionPoints, const labelList &oldPatchStarts, const labelList &oldPatchNMeshPoints, const autoPtr< scalarField > &oldCellVolumesPtr) | |
Construct from components. Copy (except for oldCellVolumes). More... | |
polyTopoChangeMap (const polyMesh &mesh, const label nOldPoints, const label nOldFaces, const label nOldCells, labelList &pointMap, List< objectMap > &pointsFromPoints, labelList &faceMap, List< objectMap > &facesFromPoints, List< objectMap > &facesFromEdges, List< objectMap > &facesFromFaces, labelList &cellMap, List< objectMap > &cellsFromPoints, List< objectMap > &cellsFromEdges, List< objectMap > &cellsFromFaces, List< objectMap > &cellsFromCells, labelList &reversePointMap, labelList &reverseFaceMap, labelList &reverseCellMap, labelHashSet &flipFaceFlux, labelListList &patchPointMap, labelListList &pointZoneMap, labelListList &faceZonePointMap, labelListList &faceZoneFaceMap, labelListList &cellZoneMap, pointField &preMotionPoints, labelList &oldPatchStarts, labelList &oldPatchNMeshPoints, autoPtr< scalarField > &oldCellVolumesPtr, const bool reuse) | |
Construct from components and optionally reuse storage. More... | |
polyTopoChangeMap (const polyTopoChangeMap &)=delete | |
Disallow default bitwise copy construction. More... | |
const polyMesh & | mesh () const |
Return polyMesh. More... | |
label | nOldPoints () const |
Number of old points. More... | |
label | nOldInternalFaces () const |
Number of old internal faces. More... | |
label | nOldFaces () const |
Number of old faces. More... | |
label | nOldCells () const |
Number of old cells. More... | |
const labelList & | pointMap () const |
Old point map. More... | |
const List< objectMap > & | pointsFromPointsMap () const |
Points originating from points. More... | |
const labelList & | faceMap () const |
Old face map. More... | |
const List< objectMap > & | facesFromPointsMap () const |
Faces inflated from points. More... | |
const List< objectMap > & | facesFromEdgesMap () const |
Faces inflated from edges. More... | |
const List< objectMap > & | facesFromFacesMap () const |
Faces originating from faces. More... | |
const labelList & | cellMap () const |
Old cell map. More... | |
const List< objectMap > & | cellsFromPointsMap () const |
Cells inflated from points. More... | |
const List< objectMap > & | cellsFromEdgesMap () const |
Cells inflated from edges. More... | |
const List< objectMap > & | cellsFromFacesMap () const |
Cells inflated from faces. More... | |
const List< objectMap > & | cellsFromCellsMap () const |
Cells originating from cells. More... | |
const labelList & | reversePointMap () const |
Reverse point map. More... | |
label | mergedPoint (const label oldPointi) const |
If point is removed return point (on new mesh) it merged. More... | |
const labelList & | reverseFaceMap () const |
Reverse face map. More... | |
label | mergedFace (const label oldFacei) const |
If face is removed return face (on new mesh) it merged into. More... | |
const labelList & | reverseCellMap () const |
Reverse cell map. More... | |
label | mergedCell (const label oldCelli) const |
If cell is removed return cell (on new mesh) it merged into. More... | |
const labelHashSet & | flipFaceFlux () const |
Map of flipped face flux faces. More... | |
const labelListList & | patchPointMap () const |
Patch point renumbering. More... | |
const labelListList & | pointZoneMap () const |
Point zone renumbering. More... | |
const labelListList & | faceZonePointMap () const |
Face zone point renumbering. More... | |
const labelListList & | faceZoneFaceMap () const |
Face zone face renumbering. More... | |
const labelListList & | cellZoneMap () const |
Cell zone renumbering. More... | |
const pointField & | preMotionPoints () const |
Pre-motion point positions. More... | |
bool | hasMotionPoints () const |
Has valid preMotionPoints? More... | |
const labelList & | oldPatchSizes () const |
Return list of the old patch sizes. More... | |
const labelList & | oldPatchStarts () const |
Return list of the old patch start labels. More... | |
const labelList & | oldPatchNMeshPoints () const |
Return numbers of mesh points per old patch. More... | |
bool | hasOldCellVolumes () const |
const scalarField & | oldCellVolumes () const |
void | operator= (const polyTopoChangeMap &)=delete |
Disallow default bitwise assignment. More... | |
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
In the topology change points/faces/cells
All this information is necessary to correctly map fields.
Note (*)
if the newly inflated face is a boundary face the list of faces will only be boundary faces; if the new face is an internal face they will only be internal faces.
Definition at line 158 of file polyTopoChangeMap.H.
polyTopoChangeMap | ( | const polyMesh & | mesh, |
const label | nOldPoints, | ||
const label | nOldFaces, | ||
const label | nOldCells, | ||
const labelList & | pointMap, | ||
const List< objectMap > & | pointsFromPoints, | ||
const labelList & | faceMap, | ||
const List< objectMap > & | facesFromPoints, | ||
const List< objectMap > & | facesFromEdges, | ||
const List< objectMap > & | facesFromFaces, | ||
const labelList & | cellMap, | ||
const List< objectMap > & | cellsFromPoints, | ||
const List< objectMap > & | cellsFromEdges, | ||
const List< objectMap > & | cellsFromFaces, | ||
const List< objectMap > & | cellsFromCells, | ||
const labelList & | reversePointMap, | ||
const labelList & | reverseFaceMap, | ||
const labelList & | reverseCellMap, | ||
const labelHashSet & | flipFaceFlux, | ||
const labelListList & | patchPointMap, | ||
const labelListList & | pointZoneMap, | ||
const labelListList & | faceZonePointMap, | ||
const labelListList & | faceZoneFaceMap, | ||
const labelListList & | cellZoneMap, | ||
const pointField & | preMotionPoints, | ||
const labelList & | oldPatchStarts, | ||
const labelList & | oldPatchNMeshPoints, | ||
const autoPtr< scalarField > & | oldCellVolumesPtr | ||
) |
Construct from components. Copy (except for oldCellVolumes).
Definition at line 32 of file polyTopoChangeMap.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::min(), and patchi.
polyTopoChangeMap | ( | const polyMesh & | mesh, |
const label | nOldPoints, | ||
const label | nOldFaces, | ||
const label | nOldCells, | ||
labelList & | pointMap, | ||
List< objectMap > & | pointsFromPoints, | ||
labelList & | faceMap, | ||
List< objectMap > & | facesFromPoints, | ||
List< objectMap > & | facesFromEdges, | ||
List< objectMap > & | facesFromFaces, | ||
labelList & | cellMap, | ||
List< objectMap > & | cellsFromPoints, | ||
List< objectMap > & | cellsFromEdges, | ||
List< objectMap > & | cellsFromFaces, | ||
List< objectMap > & | cellsFromCells, | ||
labelList & | reversePointMap, | ||
labelList & | reverseFaceMap, | ||
labelList & | reverseCellMap, | ||
labelHashSet & | flipFaceFlux, | ||
labelListList & | patchPointMap, | ||
labelListList & | pointZoneMap, | ||
labelListList & | faceZonePointMap, | ||
labelListList & | faceZoneFaceMap, | ||
labelListList & | cellZoneMap, | ||
pointField & | preMotionPoints, | ||
labelList & | oldPatchStarts, | ||
labelList & | oldPatchNMeshPoints, | ||
autoPtr< scalarField > & | oldCellVolumesPtr, | ||
const bool | reuse | ||
) |
Construct from components and optionally reuse storage.
Definition at line 120 of file polyTopoChangeMap.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::min(), and patchi.
|
delete |
Disallow default bitwise copy construction.
|
inline |
Return polyMesh.
Definition at line 352 of file polyTopoChangeMap.H.
Referenced by hexRef8Data::topoChange(), sampledSets::topoChange(), layerAverage::topoChange(), probes::topoChange(), sampledSurfaces::topoChange(), streamlines::topoChange(), and surfaceFieldValue::topoChange().
|
inline |
Number of old points.
Definition at line 358 of file polyTopoChangeMap.H.
Referenced by pointMapper::sizeBeforeMapping(), and hexRef8::topoChange().
|
inline |
Number of old internal faces.
Definition at line 364 of file polyTopoChangeMap.H.
Referenced by faceMapper::internalSizeBeforeMapping(), and faceMapper::nOldInternalFaces().
|
inline |
Number of old faces.
Definition at line 370 of file polyTopoChangeMap.H.
Referenced by fvMesh::mapFields(), and faceMapper::sizeBeforeMapping().
|
inline |
Number of old cells.
Definition at line 376 of file polyTopoChangeMap.H.
References polyTopoChangeMap::pointMap().
Referenced by fvMesh::mapFields(), cellMapper::sizeBeforeMapping(), hexRef8::topoChange(), and fvMesh::topoChange().
|
inline |
Old point map.
Contains the old point label for all new points. For preserved points this is the old point label. For added points this is the master point ID
Definition at line 385 of file polyTopoChangeMap.H.
Referenced by polyMeshFilter::copyMesh(), pointMapper::directAddressing(), polyTopoChangeMap::nOldCells(), pointMapper::pointMapper(), solidBodyMotionSolver::topoChange(), hexRef8Data::topoChange(), componentDisplacementMotionSolver::topoChange(), displacementLayeredMotionMotionSolver::topoChange(), rigidBodyMeshMotion::topoChange(), hexRef8::topoChange(), and polyMesh::topoChange().
Points originating from points.
Definition at line 391 of file polyTopoChangeMap.H.
References polyTopoChangeMap::faceMap().
Referenced by pointMapper::pointMapper().
|
inline |
Old face map.
Contains a list of old face labels for every new face. Warning: this map contains invalid entries for new faces
Definition at line 399 of file polyTopoChangeMap.H.
Referenced by polyMeshFilter::copyMesh(), faceMapper::directAddressing(), faceMapper::faceMapper(), fvMesh::mapFields(), polyTopoChangeMap::pointsFromPointsMap(), fvMeshDistribute::printFieldInfo(), and meshRefinement::topoChange().
Faces inflated from points.
Definition at line 405 of file polyTopoChangeMap.H.
Referenced by faceMapper::faceMapper().
Faces inflated from edges.
Definition at line 411 of file polyTopoChangeMap.H.
Referenced by faceMapper::faceMapper().
Faces originating from faces.
Definition at line 417 of file polyTopoChangeMap.H.
References polyTopoChangeMap::cellMap().
Referenced by faceMapper::faceMapper().
|
inline |
Old cell map.
Contains old cell label for all preserved cells.
Definition at line 424 of file polyTopoChangeMap.H.
Referenced by cellMapper::cellMapper(), cellMapper::directAddressing(), polyTopoChangeMap::facesFromFacesMap(), fvMesh::mapFields(), hexRef8Data::topoChange(), refinementHistory::topoChange(), hexRef8::topoChange(), fvMesh::topoChange(), and polyMesh::topoChange().
Cells inflated from points.
Definition at line 430 of file polyTopoChangeMap.H.
Referenced by cellMapper::cellMapper().
Cells inflated from edges.
Definition at line 436 of file polyTopoChangeMap.H.
Referenced by cellMapper::cellMapper().
Cells inflated from faces.
Definition at line 442 of file polyTopoChangeMap.H.
Referenced by cellMapper::cellMapper().
Cells originating from cells.
Definition at line 448 of file polyTopoChangeMap.H.
References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, polyTopoChangeMap::mergedPoint(), polyTopoChangeMap::reverseFaceMap(), and polyTopoChangeMap::reversePointMap().
Referenced by cellMapper::cellMapper().
|
inline |
Reverse point map.
Contains new point label for all old and added points
Definition at line 458 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::cellsFromCellsMap(), polyMeshFilter::copyMesh(), solidBodyMotionSolver::topoChange(), duplicatePoints::topoChange(), pointSet::topoChange(), componentDisplacementMotionSolver::topoChange(), removePoints::topoChange(), displacementLayeredMotionMotionSolver::topoChange(), boundaryCutter::topoChange(), pointZoneSet::topoChange(), rigidBodyMeshMotion::topoChange(), tetDecomposer::topoChange(), localPointRegion::topoChange(), combineFaces::topoChange(), createShellMesh::topoChange(), meshCutAndRemove::topoChange(), meshCutter::topoChange(), addPatchCellLayer::topoChange(), and hexRef8::topoChange().
If point is removed return point (on new mesh) it merged.
into
Definition at line 465 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::cellsFromCellsMap().
|
inline |
Reverse face map.
Contains new face label for all old and added faces
Definition at line 490 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::cellsFromCellsMap(), faceSet::topoChange(), removePoints::topoChange(), boundaryCutter::topoChange(), faceZoneSet::topoChange(), externalDisplacementMeshMover::topoChange(), localPointRegion::topoChange(), combineFaces::topoChange(), createShellMesh::topoChange(), meshCutAndRemove::topoChange(), probes::topoChange(), meshCutter::topoChange(), faceZone::topoChange(), addPatchCellLayer::topoChange(), and meshRefinement::topoChange().
If face is removed return face (on new mesh) it merged into.
Definition at line 496 of file polyTopoChangeMap.H.
References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, and polyTopoChangeMap::reverseCellMap().
|
inline |
Reverse cell map.
Contains new cell label for all old and added cells
Definition at line 521 of file polyTopoChangeMap.H.
Referenced by particle::autoMap(), polyTopoChangeMap::mergedFace(), refinementIterator::setRefinement(), cellSet::topoChange(), cellZoneSet::topoChange(), undoableMeshCutter::topoChange(), tetDecomposer::topoChange(), createShellMesh::topoChange(), meshCutAndRemove::topoChange(), probes::topoChange(), meshCutter::topoChange(), refinementHistory::topoChange(), hexRef8::topoChange(), and fvMesh::topoChange().
If cell is removed return cell (on new mesh) it merged into.
Definition at line 527 of file polyTopoChangeMap.H.
References Foam::abort(), Foam::endl(), Foam::FatalError, and FatalErrorInFunction.
|
inline |
Map of flipped face flux faces.
Definition at line 551 of file polyTopoChangeMap.H.
References polyTopoChangeMap::cellZoneMap(), polyTopoChangeMap::faceZoneFaceMap(), polyTopoChangeMap::faceZonePointMap(), polyTopoChangeMap::patchPointMap(), polyTopoChangeMap::pointZoneMap(), and polyTopoChangeMap::preMotionPoints().
Referenced by faceMapper::flipFaceFlux(), and fvMeshDistribute::printFieldInfo().
|
inline |
Patch point renumbering.
For every preserved point on a patch give the old position. For added points, the index is set to -1
Definition at line 559 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::flipFaceFlux().
|
inline |
Point zone renumbering.
For every preserved point in zone give the old position. For added points, the index is set to -1
Definition at line 570 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::flipFaceFlux().
|
inline |
Face zone point renumbering.
For every preserved point in zone give the old position. For added points, the index is set to -1
Definition at line 578 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::flipFaceFlux().
|
inline |
Face zone face renumbering.
For every preserved face in zone give the old position. For added faces, the index is set to -1
Definition at line 586 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::flipFaceFlux().
|
inline |
Cell zone renumbering.
For every preserved cell in zone give the old position. For added cells, the index is set to -1
Definition at line 594 of file polyTopoChangeMap.H.
Referenced by polyTopoChangeMap::flipFaceFlux().
|
inline |
Pre-motion point positions.
This specifies the correct way of blowing up zero-volume objects
Definition at line 602 of file polyTopoChangeMap.H.
Referenced by polyMeshFilter::copyMesh(), polyTopoChangeMap::flipFaceFlux(), solidBodyMotionSolver::topoChange(), componentDisplacementMotionSolver::topoChange(), and rigidBodyMeshMotion::topoChange().
|
inline |
Has valid preMotionPoints?
Definition at line 608 of file polyTopoChangeMap.H.
References List< T >::size().
Referenced by polyMeshFilter::copyMesh(), solidBodyMotionSolver::topoChange(), componentDisplacementMotionSolver::topoChange(), and rigidBodyMeshMotion::topoChange().
|
inline |
Return list of the old patch sizes.
Definition at line 615 of file polyTopoChangeMap.H.
Referenced by faceMapper::oldPatchSizes().
|
inline |
Return list of the old patch start labels.
Definition at line 621 of file polyTopoChangeMap.H.
Referenced by faceMapper::oldPatchStarts(), and fvMeshDistribute::printFieldInfo().
|
inline |
Return numbers of mesh points per old patch.
Definition at line 627 of file polyTopoChangeMap.H.
|
inline |
Definition at line 635 of file polyTopoChangeMap.H.
References autoPtr< T >::valid().
|
inline |
Definition at line 640 of file polyTopoChangeMap.H.
References polyTopoChangeMap::operator=().
Referenced by fvMesh::topoChange().
|
delete |
Disallow default bitwise assignment.
Referenced by polyTopoChangeMap::oldCellVolumes().