Public Member Functions | Static Private Member Functions | Private Attributes
removeCells Class Reference

Given list of cells to remove insert all the topology changes. More...

Collaboration diagram for removeCells:
Collaboration graph
[legend]

Public Member Functions

 ClassName ("removeCells")
 Runtime type information. More...
 
 removeCells (const polyMesh &mesh, const bool syncPar=true)
 Construct from mesh. syncPar: do parallel synchronization. More...
 
labelList getExposedFaces (const labelList &cellsToRemove) const
 Get labels of exposed faces. More...
 
void setRefinement (const labelList &cellsToRemove, const labelList &facesToExpose, const labelList &patchIDs, polyTopoChange &) const
 Play commands into polyTopoChange to remove cells. More...
 
void updateMesh (const mapPolyMesh &)
 Force recalculation of locally stored data on topological change. More...
 

Static Private Member Functions

static void uncount (const labelList &f, labelList &nUsage)
 Decrease count of elements of f. More...
 

Private Attributes

const polyMeshmesh_
 Reference to mesh. More...
 
const bool syncPar_
 Whether or not to synchronize parallel case. More...
 

Detailed Description

Given list of cells to remove insert all the topology changes.

Works in two passes:

Source files

Definition at line 59 of file removeCells.H.

Constructor & Destructor Documentation

◆ removeCells()

removeCells ( const polyMesh mesh,
const bool  syncPar = true 
)

Construct from mesh. syncPar: do parallel synchronization.

Definition at line 60 of file removeCells.C.

Member Function Documentation

◆ uncount()

void uncount ( const labelList f,
labelList nUsage 
)
staticprivate

Decrease count of elements of f.

Definition at line 45 of file removeCells.C.

References f(), and forAll.

Here is the call graph for this function:

◆ ClassName()

ClassName ( "removeCells"  )

Runtime type information.

◆ getExposedFaces()

Foam::labelList getExposedFaces ( const labelList cellsToRemove) const

Get labels of exposed faces.

These are

  • internal faces that become boundary faces
  • coupled faces that become uncoupled (since one of the sides gets deleted)

Definition at line 73 of file removeCells.C.

References DynamicList::append(), polyPatch::coupled(), forAll, patches, DynamicList::shrink(), and polyPatch::start().

Referenced by fvMeshDistribute::doRemoveCells(), fvMeshSubset::getExposedFaces(), meshRefinement::splitMesh(), and meshRefinement::splitMeshRegions().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setRefinement()

void setRefinement ( const labelList cellsToRemove,
const labelList facesToExpose,
const labelList patchIDs,
polyTopoChange meshMod 
) const

Play commands into polyTopoChange to remove cells.

patchIDs is for every element in facesToExpose (see above) the patch it has to go into. This cannot be a coupled patch!

Definition at line 189 of file removeCells.C.

References Foam::abort(), polyPatch::coupled(), Foam::endl(), f(), Foam::FatalError, FatalErrorInFunction, faceZone::flipMap(), forAll, Foam::nl, patches, polyTopoChange::setAction(), List::size(), polyPatch::start(), WarningInFunction, faceZone::whichFace(), and ZoneMesh::whichZone().

Referenced by fvMeshDistribute::doRemoveCells(), meshRefinement::doRemoveCells(), and fvMeshSubset::setLargeCellSubset().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateMesh()

void updateMesh ( const mapPolyMesh )
inline

Force recalculation of locally stored data on topological change.

Definition at line 115 of file removeCells.H.

Referenced by meshRefinement::doRemoveCells().

Here is the caller graph for this function:

Field Documentation

◆ mesh_

const polyMesh& mesh_
private

Reference to mesh.

Definition at line 64 of file removeCells.H.

◆ syncPar_

const bool syncPar_
private

Whether or not to synchronize parallel case.

Definition at line 67 of file removeCells.H.


The documentation for this class was generated from the following files: