Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
tetDecomposer Class Reference

Decomposes polyMesh into tets. More...

Collaboration diagram for tetDecomposer:
Collaboration graph
[legend]

Public Types

enum  decompositionType { FACE_CENTRE_TRIS, FACE_DIAG_TRIS }
 

Public Member Functions

 ClassName ("tetDecomposer")
 Runtime type information. More...
 
 tetDecomposer (const polyMesh &)
 Construct from mesh. More...
 
const labelListcellToPoint () const
 From cell to tet point. More...
 
const labelListfaceToPoint () const
 From face to tet point. More...
 
const labelListListfaceOwnerCells () const
 Per face, per point (faceCentre) or triangle (faceDiag) More...
 
const labelListListfaceNeighbourCells () const
 Per face, per point (faceCentre) or triangle (faceDiag) More...
 
void setRefinement (const decompositionType decomposeType, polyTopoChange &meshMod)
 Insert all changes into meshMod to convert the polyMesh into. More...
 
void updateMesh (const mapPolyMesh &)
 Force recalculation of locally stored data on topological change. More...
 

Static Public Attributes

static const NamedEnum< decompositionType, 2 > decompositionTypeNames
 

Private Member Functions

void modifyFace (polyTopoChange &meshMod, const face &f, const label faceI, const label own, const label nei, const label patchI, const label zoneI, const bool zoneFlip) const
 Modify a face. More...
 
void addFace (polyTopoChange &meshMod, const face &f, const label own, const label nei, const label masterPointID, const label masterEdgeID, const label masterFaceID, const label patchI, const label zoneI, const bool zoneFlip) const
 Add a face. More...
 
label triIndex (const label faceI, const label fp) const
 Work out triangle index given the starting vertex in the face. More...
 
 tetDecomposer (const tetDecomposer &)
 Disallow default bitwise copy construct. More...
 
void operator= (const tetDecomposer &)
 Disallow default bitwise assignment. More...
 

Private Attributes

const polyMeshmesh_
 
labelList cellToPoint_
 From cell to tet point. More...
 
labelList faceToPoint_
 From face to tet point. More...
 
labelListList faceOwnerCells_
 
labelListList faceNeighbourCells_
 

Detailed Description

Decomposes polyMesh into tets.

Source files

Definition at line 57 of file tetDecomposer.H.

Member Enumeration Documentation

◆ decompositionType

Enumerator
FACE_CENTRE_TRIS 
FACE_DIAG_TRIS 

Definition at line 63 of file tetDecomposer.H.

Constructor & Destructor Documentation

◆ tetDecomposer() [1/2]

tetDecomposer ( const tetDecomposer )
private

Disallow default bitwise copy construct.

◆ tetDecomposer() [2/2]

tetDecomposer ( const polyMesh mesh)

Construct from mesh.

Definition at line 174 of file tetDecomposer.C.

Member Function Documentation

◆ modifyFace()

void modifyFace ( polyTopoChange meshMod,
const face f,
const label  faceI,
const label  own,
const label  nei,
const label  patchI,
const label  zoneI,
const bool  zoneFlip 
) const
private

Modify a face.

Definition at line 54 of file tetDecomposer.C.

References f(), and polyTopoChange::modifyFace().

Here is the call graph for this function:

◆ addFace()

void addFace ( polyTopoChange meshMod,
const face f,
const label  own,
const label  nei,
const label  masterPointID,
const label  masterEdgeID,
const label  masterFaceID,
const label  patchI,
const label  zoneI,
const bool  zoneFlip 
) const
private

Add a face.

Definition at line 98 of file tetDecomposer.C.

References polyTopoChange::addFace(), and f().

Here is the call graph for this function:

◆ triIndex()

Foam::label triIndex ( const label  faceI,
const label  fp 
) const
private

Work out triangle index given the starting vertex in the face.

Definition at line 148 of file tetDecomposer.C.

References f(), polyMesh::faces(), Foam::max(), tetDecomposer::mesh_, and polyMesh::tetBasePtIs().

Here is the call graph for this function:

◆ operator=()

void operator= ( const tetDecomposer )
private

Disallow default bitwise assignment.

◆ ClassName()

ClassName ( "tetDecomposer"  )

Runtime type information.

◆ cellToPoint()

const labelList& cellToPoint ( ) const
inline

From cell to tet point.

Definition at line 152 of file tetDecomposer.H.

References tetDecomposer::cellToPoint_.

◆ faceToPoint()

const labelList& faceToPoint ( ) const
inline

From face to tet point.

Definition at line 158 of file tetDecomposer.H.

References tetDecomposer::faceToPoint_.

◆ faceOwnerCells()

const labelListList& faceOwnerCells ( ) const
inline

Per face, per point (faceCentre) or triangle (faceDiag)

the added tet on the owner side

Definition at line 166 of file tetDecomposer.H.

◆ faceNeighbourCells()

const labelListList& faceNeighbourCells ( ) const
inline

Per face, per point (faceCentre) or triangle (faceDiag)

the added tet on the neighbour side

Definition at line 173 of file tetDecomposer.H.

◆ setRefinement()

void setRefinement ( const decompositionType  decomposeType,
polyTopoChange meshMod 
)

◆ updateMesh()

void updateMesh ( const mapPolyMesh map)

Force recalculation of locally stored data on topological change.

Definition at line 697 of file tetDecomposer.C.

References forAll, Foam::inplaceRenumber(), mapPolyMesh::reverseCellMap(), and mapPolyMesh::reversePointMap().

Here is the call graph for this function:

Field Documentation

◆ decompositionTypeNames

const NamedEnum< tetDecomposer::decompositionType, 2 > decompositionTypeNames
static

Definition at line 70 of file tetDecomposer.H.

◆ mesh_

const polyMesh& mesh_
private

Definition at line 77 of file tetDecomposer.H.

Referenced by tetDecomposer::triIndex().

◆ cellToPoint_

labelList cellToPoint_
private

From cell to tet point.

Definition at line 80 of file tetDecomposer.H.

Referenced by tetDecomposer::cellToPoint().

◆ faceToPoint_

labelList faceToPoint_
private

From face to tet point.

Definition at line 83 of file tetDecomposer.H.

Referenced by tetDecomposer::faceToPoint().

◆ faceOwnerCells_

labelListList faceOwnerCells_
private

Definition at line 88 of file tetDecomposer.H.

◆ faceNeighbourCells_

labelListList faceNeighbourCells_
private

Definition at line 92 of file tetDecomposer.H.


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