Does multiple pass refinement to refine cells in multiple directions. More...
Public Member Functions | |
ClassName ("multiDirRefinement") | |
Runtime type information. More... | |
multiDirRefinement (polyMesh &mesh, const labelList &cellLabels, const dictionary &dict) | |
Construct from dictionary. After construction all refinement will. More... | |
multiDirRefinement (polyMesh &mesh, const labelList &cellLabels, const List< vectorField > &, const dictionary &dict) | |
Explicitly provided directions to split in. More... | |
multiDirRefinement (polyMesh &mesh, undoableMeshCutter &cutter, const cellLooper &cellCutter, const labelList &cellLabels, const List< vectorField > &directions, const bool writeMesh=false) | |
Construct from components. Only this one would allow undo actions. More... | |
multiDirRefinement (const multiDirRefinement &)=delete | |
Disallow default bitwise copy construction. More... | |
const labelListList & | addedCells () const |
Access to addedCells (on the original mesh; see above) More... | |
void | operator= (const multiDirRefinement &)=delete |
Disallow default bitwise assignment. More... | |
Does multiple pass refinement to refine cells in multiple directions.
Gets a list of cells to refine and vectorFields for the whole mesh. It then tries to refine in one direction after the other the wanted cells. After construction the mesh will have been refined in multiple directions.
Holds the list of cells to refine and the map from original to added for every refinement level.
Gets constructed from a dictionary or from components. Uses an undoableMeshCutter which does the actual cutting. Undo facility is switched of unless constructed from external one which allows this.
The cut cells get stored in addedCells which is for every vectorField to cut with the map from uncut to added cell (i.e. from master to slave). Note: map is only valid for a given direction.
Parallel: should be ok. Uses 'reduce' whenever it needs to make a local decision.
Definition at line 74 of file multiDirRefinement.H.
multiDirRefinement | ( | polyMesh & | mesh, |
const labelList & | cellLabels, | ||
const dictionary & | dict | ||
) |
Construct from dictionary. After construction all refinement will.
have been done (and runTime will have increased a few time steps if writeMesh = true)
Definition at line 483 of file multiDirRefinement.C.
References dictionary::lookup(), and Foam::reduce().
Referenced by multiDirRefinement::multiDirRefinement().
multiDirRefinement | ( | polyMesh & | mesh, |
const labelList & | cellLabels, | ||
const List< vectorField > & | cellDirs, | ||
const dictionary & | dict | ||
) |
Explicitly provided directions to split in.
Definition at line 525 of file multiDirRefinement.C.
References dictionary::lookup(), multiDirRefinement::multiDirRefinement(), and Foam::reduce().
multiDirRefinement | ( | polyMesh & | mesh, |
undoableMeshCutter & | cutter, | ||
const cellLooper & | cellCutter, | ||
const labelList & | cellLabels, | ||
const List< vectorField > & | directions, | ||
const bool | writeMesh = false |
||
) |
Construct from components. Only this one would allow undo actions.
Definition at line 567 of file multiDirRefinement.C.
|
delete |
Disallow default bitwise copy construction.
ClassName | ( | "multiDirRefinement" | ) |
Runtime type information.
|
inline |
Access to addedCells (on the original mesh; see above)
Definition at line 186 of file multiDirRefinement.H.
References multiDirRefinement::operator=().
|
delete |
Disallow default bitwise assignment.
Referenced by multiDirRefinement::addedCells().