Does polyTopoChanges to remove edges. Can remove faces due to edge collapse but can not remove cells due to face removal! Also removes unused points. More...
Public Types | |
enum | collapseType { noCollapse = 0, toPoint = 1, toEdge = 2 } |
Public Member Functions | |
ClassName ("edgeCollapser") | |
edgeCollapser (const polyMesh &mesh) | |
edgeCollapser (const polyMesh &mesh, const dictionary &dict) | |
void | consistentCollapse (const globalIndex &globalPoints, const labelList &pointPriority, const Map< point > &collapsePointToLocation, bitSet &collapseEdge, List< pointEdgeCollapse > &allPointInfo, const bool allowCellCollapse=false) const |
bool | setRefinement (const List< pointEdgeCollapse > &allPointInfo, polyTopoChange &meshMod) const |
label | markSmallEdges (const scalarField &minEdgeLen, const labelList &pointPriority, bitSet &collapseEdge, Map< point > &collapsePointToLocation) const |
label | markMergeEdges (const scalar maxCos, const labelList &pointPriority, bitSet &collapseEdge, Map< point > &collapsePointToLocation) const |
labelPair | markSmallSliverFaces (const scalarField &faceFilterFactor, const labelList &pointPriority, bitSet &collapseEdge, Map< point > &collapsePointToLocation) const |
labelPair | markFaceZoneEdges (const faceZone &fZone, const scalarField &faceFilterFactor, const labelList &pointPriority, bitSet &collapseEdge, Map< point > &collapsePointToLocation) const |
Static Public Member Functions | |
static labelHashSet | checkBadFaces (const polyMesh &mesh, const dictionary &meshQualityDict) |
static label | checkMeshQuality (const polyMesh &mesh, const dictionary &meshQualityDict, bitSet &isErrorPoint) |
Does polyTopoChanges to remove edges. Can remove faces due to edge collapse but can not remove cells due to face removal! Also removes unused points.
Definition at line 64 of file edgeCollapser.H.
enum collapseType |
Enumerator | |
---|---|
noCollapse | |
toPoint | |
toEdge |
Definition at line 69 of file edgeCollapser.H.
|
explicit |
Definition at line 1191 of file edgeCollapser.C.
edgeCollapser | ( | const polyMesh & | mesh, |
const dictionary & | dict | ||
) |
Definition at line 1202 of file edgeCollapser.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::Info, and Foam::nl.
ClassName | ( | "edgeCollapser" | ) |
|
static |
Definition at line 44 of file edgeCollapser.C.
References DynamicList::append(), Foam::endl(), forAll, Foam::Info, Foam::mag(), and mesh.
|
static |
Definition at line 80 of file edgeCollapser.C.
References f(), mesh, Foam::returnReduce(), and bitSet::set().
Referenced by polyMeshFilter::filterEdges().
void consistentCollapse | ( | const globalIndex & | globalPoints, |
const labelList & | pointPriority, | ||
const Map< point > & | collapsePointToLocation, | ||
bitSet & | collapseEdge, | ||
List< pointEdgeCollapse > & | allPointInfo, | ||
const bool | allowCellCollapse = false |
||
) | const |
Definition at line 1603 of file edgeCollapser.C.
References Foam::abort(), cells, collapseEdge(), Foam::endl(), f(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Info, Foam::nl, Foam::reduce(), Foam::returnReduce(), bitSet::set(), syncTools::syncEdgeList(), syncTools::syncPointList(), bitSet::test(), and bitSet::unset().
bool setRefinement | ( | const List< pointEdgeCollapse > & | allPointInfo, |
polyTopoChange & | meshMod | ||
) | const |
Definition at line 1242 of file edgeCollapser.C.
References cells, pointEdgeCollapse::collapseIndex(), Foam::decrIndent(), Foam::endl(), f(), faceZone::flipMap(), forAll, forAllConstIters(), Foam::incrIndent(), Foam::indent(), Foam::Info, polyTopoChange::modifyFace(), polyTopoChange::modifyPoint(), Foam::nl, nPoints, patchID, Foam::Pout, Foam::reduce(), polyTopoChange::removeCell(), polyTopoChange::removeFace(), polyTopoChange::removePoint(), bitSet::set(), bitSet::test(), faceZone::whichFace(), ZoneMesh::whichZone(), and zoneID.
Foam::label markSmallEdges | ( | const scalarField & | minEdgeLen, |
const labelList & | pointPriority, | ||
bitSet & | collapseEdge, | ||
Map< point > & | collapsePointToLocation | ||
) | const |
Definition at line 1793 of file edgeCollapser.C.
References Foam::average(), collapseEdge(), Foam::constant::electromagnetic::e, forAll, and points.
Foam::label markMergeEdges | ( | const scalar | maxCos, |
const labelList & | pointPriority, | ||
bitSet & | collapseEdge, | ||
Map< point > & | collapsePointToLocation | ||
) | const |
Definition at line 1844 of file edgeCollapser.C.
References collapseEdge(), removePoints::countPointUsage(), forAll, Foam::mag(), and points.
Foam::labelPair markSmallSliverFaces | ( | const scalarField & | faceFilterFactor, |
const labelList & | pointPriority, | ||
bitSet & | collapseEdge, | ||
Map< point > & | collapsePointToLocation | ||
) | const |
Definition at line 1931 of file edgeCollapser.C.
References Foam::abort(), collapseEdge(), f(), Foam::FatalError, FatalErrorInFunction, forAll, and Foam::toPoint().
Foam::labelPair markFaceZoneEdges | ( | const faceZone & | fZone, |
const scalarField & | faceFilterFactor, | ||
const labelList & | pointPriority, | ||
bitSet & | collapseEdge, | ||
Map< point > & | collapsePointToLocation | ||
) | const |
Definition at line 1992 of file edgeCollapser.C.
References Foam::abort(), collapseEdge(), f(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::toPoint(), and faceZone::whichFace().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.