Utility class to do iterating meshCutter until all requests satisfied. More...
Public Member Functions | |
ClassName ("refinementIterator") | |
refinementIterator (polyMesh &mesh, undoableMeshCutter &meshRefiner, const cellLooper &cellWalker, const bool writeMesh=false) | |
~refinementIterator () | |
Map< label > | setRefinement (const List< refineCell > &) |
![]() | |
edgeVertex (const polyMesh &mesh) | |
const polyMesh & | mesh () const |
bool | isEdge (const label eVert) const |
label | getEdge (const label eVert) const |
label | getVertex (const label eVert) const |
label | vertToEVert (const label vertI) const |
label | edgeToEVert (const label edgeI) const |
point | coord (const label cut, const scalar weight) const |
label | cutPairToEdge (const label cut0, const label cut1) const |
Ostream & | writeCut (Ostream &os, const label cut, const scalar) const |
Ostream & | writeCuts (Ostream &os, const labelList &, const scalarField &) const |
Additional Inherited Members | |
![]() | |
static void | updateLabels (const labelList &map, List< refineCell > &) |
static void | updateLabels (const labelList &map, Map< label > &) |
static void | updateLabels (const labelList &map, labelHashSet &) |
static bool | isEdge (const primitiveMesh &mesh, const label eVert) |
static label | getEdge (const primitiveMesh &mesh, const label eVert) |
static label | getVertex (const primitiveMesh &mesh, const label eVert) |
static label | vertToEVert (const primitiveMesh &mesh, const label vertI) |
static label | edgeToEVert (const primitiveMesh &mesh, const label edgeI) |
static point | coord (const primitiveMesh &, const label cut, const scalar weight) |
static label | cutPairToEdge (const primitiveMesh &, const label cut0, const label cut1) |
Utility class to do iterating meshCutter until all requests satisfied.
Needed since cell cutting can only cut cell once in one go so if refinement pattern is not compatible on a cell by cell basis it will refuse to cut.
Parallel: communicates. All decisions done on 'reduce'd variable.
Definition at line 63 of file refinementIterator.H.
refinementIterator | ( | polyMesh & | mesh, |
undoableMeshCutter & | meshRefiner, | ||
const cellLooper & | cellWalker, | ||
const bool | writeMesh = false |
||
) |
Definition at line 44 of file refinementIterator.C.
~refinementIterator | ( | ) |
Definition at line 61 of file refinementIterator.C.
ClassName | ( | "refinementIterator" | ) |
Foam::Map< Foam::label > setRefinement | ( | const List< refineCell > & | refCells | ) |
Definition at line 68 of file refinementIterator.C.
References Foam::abort(), refineCell::cellNo(), cells, polyTopoChange::changeMesh(), Foam::expressions::patchExpr::debug, refineCell::direction(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, forAllConstIters(), mesh, cellCuts::nLoops(), points, Foam::Pout, Foam::reduce(), Foam::returnReduce(), runTime, List::setSize(), Time::timeName(), WarningInFunction, Ostream::write(), and Foam::meshTools::writeOBJ().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.