meshCutAndRemove Class Reference

Like meshCutter but also removes non-anchor side of cell. More...

Inheritance diagram for meshCutAndRemove:
[legend]
Collaboration diagram for meshCutAndRemove:
[legend]

Public Member Functions

 ClassName ("meshCutAndRemove")
 Runtime type information. More...
 
 meshCutAndRemove (const polyMesh &mesh)
 Construct from mesh. More...
 
void setRefinement (const label exposedPatchi, const cellCuts &cuts, const labelList &cutPatch, polyTopoChange &meshMod)
 Do actual cutting with cut description. Inserts mesh changes. More...
 
void updateMesh (const mapPolyMesh &)
 Force recalculation of locally stored data on topological change. More...
 
const Map< label > & addedFaces () const
 Faces added. Per split cell label of added face. More...
 
const EdgeMap< label > & addedPoints () const
 Points added. Per split edge label of added point. More...
 
- Public Member Functions inherited from edgeVertex
 edgeVertex (const polyMesh &mesh)
 Construct from mesh. More...
 
const polyMeshmesh () const
 
bool isEdge (const label eVert) const
 
label getEdge (const label eVert) const
 
label getVertex (const label eVert) const
 
label vertToEVert (const label vertI) const
 
label edgeToEVert (const label edgeI) const
 
point coord (const label cut, const scalar weight) const
 
label cutPairToEdge (const label cut0, const label cut1) const
 
OstreamwriteCut (Ostream &os, const label cut, const scalar) const
 Write cut description to Ostream. More...
 
OstreamwriteCuts (Ostream &os, const labelList &, const scalarField &) const
 Write cut descriptions to Ostream. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from edgeVertex
static void updateLabels (const labelList &map, List< refineCell > &)
 Update refine list from map. Used to update cell/face labels. More...
 
static void updateLabels (const labelList &map, Map< label > &)
 Update map from map. Used to update cell/face labels. More...
 
static void updateLabels (const labelList &map, labelHashSet &)
 Update map from map. Used to update cell/face labels. More...
 
static bool isEdge (const primitiveMesh &mesh, const label eVert)
 Is eVert an edge? More...
 
static label getEdge (const primitiveMesh &mesh, const label eVert)
 Convert eVert to edge label. More...
 
static label getVertex (const primitiveMesh &mesh, const label eVert)
 Convert eVert to vertex label. More...
 
static label vertToEVert (const primitiveMesh &mesh, const label vertI)
 Convert pointi to eVert. More...
 
static label edgeToEVert (const primitiveMesh &mesh, const label edgeI)
 Convert edgeI to eVert. More...
 
static point coord (const primitiveMesh &, const label cut, const scalar weight)
 Return coordinate of cut (uses weight if edgeCut) More...
 
static label cutPairToEdge (const primitiveMesh &, const label cut0, const label cut1)
 Find mesh edge (or -1) between two cuts. More...
 

Detailed Description

Like meshCutter but also removes non-anchor side of cell.

Source files

Definition at line 64 of file meshCutAndRemove.H.

Constructor & Destructor Documentation

◆ meshCutAndRemove()

meshCutAndRemove ( const polyMesh mesh)
explicit

Construct from mesh.

Definition at line 566 of file meshCutAndRemove.C.

Member Function Documentation

◆ ClassName()

ClassName ( "meshCutAndRemove"  )

Runtime type information.

◆ setRefinement()

void setRefinement ( const label  exposedPatchi,
const cellCuts cuts,
const labelList cutPatch,
polyTopoChange meshMod 
)

Do actual cutting with cut description. Inserts mesh changes.

into meshMod. cuts: all loops and topological information cutPatch: for every cell that has loop the patch number exposedPatch: patch for other exposed faces

Definition at line 577 of file meshCutAndRemove.C.

References Foam::abort(), polyMesh::boundaryMesh(), cellCuts::cellAnchorPoints(), cellCuts::cellLoops(), primitiveMesh::cellPoints(), Foam::expressions::patchExpr::debug, Foam::constant::electromagnetic::e, primitiveMesh::edgeFaces(), cellCuts::edgeIsCut(), primitiveMesh::edges(), cellCuts::edgeWeight(), Foam::endl(), f(), polyMesh::faceNeighbour(), polyMesh::faceOwner(), polyMesh::faces(), cellCuts::faceSplitCut(), Foam::FatalError, FatalErrorInFunction, forAll, forAllConstIters(), mesh, Foam::nl, cellCuts::nLoops(), nPoints, patches, patchID, cellCuts::pointIsCut(), polyMesh::points(), Foam::Pout, Foam::reverse(), polyTopoChange::setAction(), and polyBoundaryMesh::whichPatch().

Here is the call graph for this function:

◆ updateMesh()

void updateMesh ( const mapPolyMesh map)

Force recalculation of locally stored data on topological change.

Definition at line 1269 of file meshCutAndRemove.C.

References Foam::expressions::patchExpr::debug, Foam::constant::electromagnetic::e, Foam::endl(), forAllConstIters(), Foam::Pout, mapPolyMesh::reverseCellMap(), mapPolyMesh::reverseFaceMap(), and mapPolyMesh::reversePointMap().

Here is the call graph for this function:

◆ addedFaces()

const Map<label>& addedFaces ( ) const
inline

Faces added. Per split cell label of added face.

Definition at line 223 of file meshCutAndRemove.H.

◆ addedPoints()

const EdgeMap<label>& addedPoints ( ) const
inline

Points added. Per split edge label of added point.

(note: fairly useless across topology changes since one of the points of the edge will probably disappear)

Definition at line 231 of file meshCutAndRemove.H.


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