Utility class to do iterating meshCutter until all requests satisfied. More...


Public Member Functions | |
| ClassName ("refinementIterator") | |
| Runtime type information. More... | |
| refinementIterator (polyMesh &mesh, undoableMeshCutter &meshRefiner, const cellLooper &cellWalker, const bool writeMesh=false) | |
| Construct from mesh, refinementEngine and cell walking routine. More... | |
| ~refinementIterator () | |
| Destructor. More... | |
| Map< label > | setRefinement (const List< refineCell > &) |
| Try to refine cells in given direction. Constructs intermediate. More... | |
Public Member Functions inherited from edgeVertex | |
| edgeVertex (const polyMesh &mesh) | |
| Construct from mesh. More... | |
| edgeVertex (const edgeVertex &)=delete | |
| Disallow default bitwise copy construction. More... | |
| 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 |
| Write cut description to Ostream. More... | |
| Ostream & | writeCuts (Ostream &os, const labelList &, const scalarField &) const |
| Write cut descriptions to Ostream. More... | |
| void | operator= (const edgeVertex &)=delete |
| Disallow default bitwise assignment. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from edgeVertex | |
| static void | updateLabels (const labelList &map, List< refineCell > &) |
| Update refine list from map. Used to update cell/face labels. More... | |
| static void | updateLabels (const labelList &map, Map< label > &) |
| Update map from map. Used to update cell/face labels. More... | |
| static void | updateLabels (const labelList &map, labelHashSet &) |
| Update map from map. Used to update cell/face labels. More... | |
| static bool | isEdge (const primitiveMesh &mesh, const label eVert) |
| Is eVert an edge? More... | |
| static label | getEdge (const primitiveMesh &mesh, const label eVert) |
| Convert eVert to edge label. More... | |
| static label | getVertex (const primitiveMesh &mesh, const label eVert) |
| Convert eVert to vertex label. More... | |
| static label | vertToEVert (const primitiveMesh &mesh, const label vertI) |
| Convert pointi to eVert. More... | |
| static label | edgeToEVert (const primitiveMesh &mesh, const label edgeI) |
| Convert edgeI to eVert. More... | |
| static point | coord (const primitiveMesh &, const label cut, const scalar weight) |
| Return coordinate of cut (uses weight if edgeCut) More... | |
| static label | cutPairToEdge (const primitiveMesh &, const label cut0, const label cut1) |
| Find mesh edge (or -1) between two cuts. More... | |
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 64 of file refinementIterator.H.
| refinementIterator | ( | polyMesh & | mesh, |
| undoableMeshCutter & | meshRefiner, | ||
| const cellLooper & | cellWalker, | ||
| const bool | writeMesh = false |
||
| ) |
Construct from mesh, refinementEngine and cell walking routine.
If writeMesh = true increments runTime and writes intermediate meshes.
Definition at line 48 of file refinementIterator.C.
| ~refinementIterator | ( | ) |
Destructor.
Definition at line 66 of file refinementIterator.C.
| ClassName | ( | "refinementIterator" | ) |
Runtime type information.
| Foam::Map< Foam::label > setRefinement | ( | const List< refineCell > & | refCells | ) |
Try to refine cells in given direction. Constructs intermediate.
meshes. Returns map from old to added cells.
Definition at line 72 of file refinementIterator.C.
References Foam::abort(), refineCell::cellNo(), cells, polyTopoChange::changeMesh(), refineCell::direction(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, forAllConstIter, HashTable< T, Key, Hash >::found(), HashTable< T, Key, Hash >::insert(), mesh, dimensioned< Type >::name(), cellCuts::nLoops(), points, Foam::Pout, Foam::reduce(), Foam::returnReduce(), List< T >::setSize(), List< T >::size(), WarningInFunction, Ostream::write(), and Foam::meshTools::writeOBJ().
