removeCells Class Reference

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

Public Member Functions

 ClassName ("removeCells")
 Runtime type information. More...
 
 removeCells (const polyMesh &mesh, const bool syncPar=true)
 Construct from mesh. syncPar: do parallel synchronisation. 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 topoChange (const polyTopoChangeMap &)
 Force recalculation of locally stored data on topological change. More...
 

Detailed Description

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

Works in two passes:

  • get faces that will become boundary faces
  • given these faces and the patches they have to go into make the changes.
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 synchronisation.

Definition at line 55 of file removeCells.C.

Member Function Documentation

◆ 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 68 of file removeCells.C.

References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), polyPatch::coupled(), forAll, patches, patchi, DynamicList< T, SizeInc, SizeMult, SizeDiv >::shrink(), polyPatch::start(), and syncTools::syncFaceList().

Referenced by 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 174 of file removeCells.C.

References Foam::abort(), polyPatch::coupled(), Foam::endl(), f(), Foam::FatalError, FatalErrorInFunction, forAll, polyTopoChange::modifyFace(), Foam::nl, patches, patchi, polyTopoChange::removeCell(), polyTopoChange::removeFace(), polyTopoChange::removePoint(), UPtrList< T >::size(), List< T >::size(), polyPatch::start(), and WarningInFunction.

Referenced by fvMeshSubset::setLargeCellSubset().

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

◆ topoChange()

void topoChange ( const polyTopoChangeMap )
inline

Force recalculation of locally stored data on topological change.

Definition at line 115 of file removeCells.H.


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