Public Member Functions | |
TypeName ("marchingCells") | |
Runtime type information. More... | |
marchingCells (const fvMesh &mesh, const dictionary &dict) | |
Construct from components. More... | |
virtual | ~marchingCells ()=default |
Destructor. More... | |
const labelList & | getActiveCells () const |
Get the active cells. More... | |
label | numberOfAddedCells () const |
Number of newly added cells in the last iteration. More... | |
void | update (const label iters=1) |
Update active cells. More... | |
void | setMarchingStep (const label step) |
Set marching step. More... | |
void | addFixedCells (const cellZoneMesh &cellZoneMesh, const labelList &fixedCellZoneIDs) |
Add fixed cells through cellZone IDs. More... | |
void | addFixedCells (const labelList &fixedCellIDs) |
Add fixed cells. More... | |
Protected Member Functions | |
void | initialise () |
Initialise the active cells from the seeding patches. More... | |
void | appendSeedCell (const label cellID) |
Append cell to seed cells. More... | |
void | march (label nVisited, const label cI, labelList &newlyAddedCells) |
Protected Attributes | |
const fvMesh & | mesh_ |
labelHashSet | seedPatches_ |
Patches used as seeds in the marching algorithm. More... | |
labelList | seedCellZoneIDs_ |
Cell zones, the boundary faces of which are used as seeds in the marching algorithm. More... | |
labelList | seedFaceZoneIDs_ |
Face zones used as seeds in the marching algorithm. More... | |
label | marchingStep_ |
Marching step. More... | |
boolList | isActiveCell_ |
Whether each cell is curently active or not. More... | |
boolList | isFixedCell_ |
Should this cell remain incative. More... | |
DynamicList< label > | activeCells_ |
Which are the active cells. More... | |
labelList | addedCells_ |
Which are the added cells. More... | |
bool | initialised_ |
Has the initial seeding been conducted. More... | |
label | nIters_ |
Iterations conducted thus far. More... | |
List< wallPointData< bool > > | allFaceInfo_ |
Information for all faces. More... | |
List< wallPointData< bool > > | allCellInfo_ |
Information for all cells. More... | |
FaceCellWave< wallPointData< bool > > | meshWave_ |
Engine propagating the active cells. More... | |
Definition at line 54 of file marchingCells.H.
marchingCells | ( | const fvMesh & | mesh, |
const dictionary & | dict | ||
) |
Construct from components.
Definition at line 139 of file marchingCells.C.
|
virtualdefault |
Destructor.
|
protected |
Initialise the active cells from the seeding patches.
Definition at line 36 of file marchingCells.C.
References fvMesh::boundary(), polyMesh::boundaryMesh(), polyMesh::cellZones(), fvMeshSubset::exposedPatchName, primitiveMesh::faceCentres(), Foam::faceMap(), fvMeshSubset::faceMap(), polyMesh::faceZones(), polyBoundaryMesh::findPatchID(), forAll, marchingCells::initialised_, marchingCells::mesh_, marchingCells::meshWave_, primitiveMesh::nFaces(), Foam::foamVersion::patch, patchID, marchingCells::seedCellZoneIDs_, marchingCells::seedFaceZoneIDs_, marchingCells::seedPatches_, PtrList< T >::setSize(), and fvMeshSubset::subMesh().
|
protected |
Append cell to seed cells.
Definition at line 99 of file marchingCells.C.
|
protected |
Definition at line 110 of file marchingCells.C.
References List< T >::append().
TypeName | ( | "marchingCells" | ) |
Runtime type information.
|
inline |
Get the active cells.
Definition at line 202 of file marchingCells.H.
References marchingCells::activeCells_.
Referenced by dynamicTopODesignVariables::evolveNumber().
|
inline |
Number of newly added cells in the last iteration.
Definition at line 210 of file marchingCells.H.
References marchingCells::addedCells_, and UList< T >::size().
void update | ( | const label | iters = 1 | ) |
Update active cells.
Definition at line 181 of file marchingCells.C.
References Foam::ensightOutput::debug, forAll, initialised_(), HashSet< Key, Hash >::insert(), iters(), and Foam::name().
Referenced by dynamicTopODesignVariables::evolveNumber().
|
inline |
Set marching step.
Definition at line 226 of file marchingCells.H.
References marchingCells::marchingStep_.
void addFixedCells | ( | const cellZoneMesh & | cellZoneMesh, |
const labelList & | fixedCellZoneIDs | ||
) |
Add fixed cells through cellZone IDs.
Definition at line 229 of file marchingCells.C.
void addFixedCells | ( | const labelList & | fixedCellIDs | ) |
Add fixed cells.
Definition at line 245 of file marchingCells.C.
|
protected |
Definition at line 61 of file marchingCells.H.
Referenced by marchingCells::initialise().
|
protected |
Patches used as seeds in the marching algorithm.
Definition at line 66 of file marchingCells.H.
Referenced by marchingCells::initialise().
|
protected |
Cell zones, the boundary faces of which are used as seeds in the marching algorithm.
Definition at line 72 of file marchingCells.H.
Referenced by marchingCells::initialise().
|
protected |
Face zones used as seeds in the marching algorithm.
Definition at line 77 of file marchingCells.H.
Referenced by marchingCells::initialise().
|
protected |
Marching step.
Definition at line 82 of file marchingCells.H.
Referenced by marchingCells::setMarchingStep().
|
protected |
Whether each cell is curently active or not.
Definition at line 87 of file marchingCells.H.
|
protected |
Should this cell remain incative.
Definition at line 92 of file marchingCells.H.
|
protected |
Which are the active cells.
Definition at line 97 of file marchingCells.H.
Referenced by marchingCells::getActiveCells().
|
protected |
Which are the added cells.
Definition at line 102 of file marchingCells.H.
Referenced by marchingCells::numberOfAddedCells().
|
protected |
Has the initial seeding been conducted.
Definition at line 107 of file marchingCells.H.
Referenced by marchingCells::initialise().
|
protected |
Iterations conducted thus far.
Definition at line 112 of file marchingCells.H.
|
protected |
Information for all faces.
Definition at line 117 of file marchingCells.H.
|
protected |
Information for all cells.
Definition at line 122 of file marchingCells.H.
|
protected |
Engine propagating the active cells.
Uses infrastructure from FaceCellWave, to easily handle parallel interfaces
Definition at line 130 of file marchingCells.H.
Referenced by marchingCells::initialise().