Does multiple pass refinement to refine cells in multiple directions. More...
Public Member Functions | |
ClassName ("multiDirRefinement") | |
multiDirRefinement (polyMesh &mesh, const labelList &cellLabels, const dictionary &dict) | |
multiDirRefinement (polyMesh &mesh, const labelList &cellLabels, const List< vectorField > &, const dictionary &dict) | |
multiDirRefinement (polyMesh &mesh, undoableMeshCutter &cutter, const cellLooper &cellCutter, const labelList &cellLabels, const List< vectorField > &directions, const bool writeMesh=false) | |
const labelListList & | addedCells () const |
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 72 of file multiDirRefinement.H.
multiDirRefinement | ( | polyMesh & | mesh, |
const labelList & | cellLabels, | ||
const dictionary & | dict | ||
) |
Definition at line 477 of file multiDirRefinement.C.
References dict, dictionary::get(), mesh, and Foam::reduce().
multiDirRefinement | ( | polyMesh & | mesh, |
const labelList & | cellLabels, | ||
const List< vectorField > & | cellDirs, | ||
const dictionary & | dict | ||
) |
Definition at line 519 of file multiDirRefinement.C.
References dict, dictionary::get(), mesh, and Foam::reduce().
multiDirRefinement | ( | polyMesh & | mesh, |
undoableMeshCutter & | cutter, | ||
const cellLooper & | cellCutter, | ||
const labelList & | cellLabels, | ||
const List< vectorField > & | directions, | ||
const bool | writeMesh = false |
||
) |
Definition at line 561 of file multiDirRefinement.C.
References mesh.
ClassName | ( | "multiDirRefinement" | ) |
|
inline |
Definition at line 188 of file multiDirRefinement.H.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.