patchInjectionBase Class Reference
Inheritance diagram for patchInjectionBase:
[legend]
Collaboration diagram for patchInjectionBase:
[legend]

Public Member Functions

 patchInjectionBase (const polyMesh &mesh, const word &patchName)
 Construct from mesh and patch name. More...
 
 patchInjectionBase (const patchInjectionBase &pib)
 Copy constructor. More...
 
virtual ~patchInjectionBase ()=default
 Destructor. More...
 
virtual void updateMesh (const polyMesh &mesh)
 Update patch geometry and derived info for injection locations. More...
 
virtual void setPositionAndCell (const fvMesh &mesh, Random &rnd, vector &position, label &cellOwner, label &tetFacei, label &tetPti)
 Set the injection position and owner cell, tetFace and tetPt. More...
 

Protected Attributes

const word patchName_
 Patch name. More...
 
const label patchId_
 Patch ID. More...
 
scalar patchArea_
 Patch area - total across all processors. More...
 
vectorList patchNormal_
 Patch face normal directions. More...
 
labelList cellOwners_
 List of cell labels corresponding to injector positions. More...
 
faceList triFace_
 Decomposed patch faces as a list of triangles. More...
 
labelList triToFace_
 Addressing from per triangle to patch face. More...
 
scalarList triCumulativeMagSf_
 Cumulative triangle area per triangle face. More...
 
scalarList sumTriMagSf_
 Cumulative area fractions per processor. More...
 

Detailed Description

Definition at line 64 of file patchInjectionBase.H.

Constructor & Destructor Documentation

◆ patchInjectionBase() [1/2]

patchInjectionBase ( const polyMesh mesh,
const word patchName 
)

Construct from mesh and patch name.

Definition at line 39 of file patchInjectionBase.C.

References Foam::exit(), Foam::FatalError, FatalErrorInFunction, mesh, and Foam::nl.

Here is the call graph for this function:

◆ patchInjectionBase() [2/2]

Copy constructor.

Definition at line 66 of file patchInjectionBase.C.

◆ ~patchInjectionBase()

virtual ~patchInjectionBase ( )
virtualdefault

Destructor.

Member Function Documentation

◆ updateMesh()

void updateMesh ( const polyMesh mesh)
virtual

Update patch geometry and derived info for injection locations.

Definition at line 82 of file patchInjectionBase.C.

References polyMesh::boundaryMesh(), DynamicList< T, SizeMin >::clear(), f(), forAll, Pstream::listCombineGather(), Pstream::listCombineScatter(), Foam::mag(), mesh, UPstream::myProcNo(), Foam::foamVersion::patch, points, Foam::reduce(), Foam::sum(), and triFace().

Here is the call graph for this function:

◆ setPositionAndCell()

void setPositionAndCell ( const fvMesh mesh,
Random rnd,
vector position,
label cellOwner,
label tetFacei,
label tetPti 
)
virtual

Set the injection position and owner cell, tetFace and tetPt.

Definition at line 148 of file patchInjectionBase.C.

References polyMesh::boundaryMesh(), primitiveMesh::cellCentres(), polyMeshTetDecomposition::cellTetIndices(), polyMesh::findCellFacePt(), polyMesh::findTetFacePt(), forAll, forAllReverse, Random::globalPosition(), Foam::mag(), mesh, UPstream::myProcNo(), Foam::foamVersion::patch, points, Random::position(), triangle< Point, PointRef >::randomPoint(), Random::sample01(), fvMesh::V(), and Foam::Zero.

Here is the call graph for this function:

Member Data Documentation

◆ patchName_

const word patchName_
protected

Patch name.

Definition at line 71 of file patchInjectionBase.H.

◆ patchId_

const label patchId_
protected

Patch ID.

Definition at line 74 of file patchInjectionBase.H.

◆ patchArea_

scalar patchArea_
protected

Patch area - total across all processors.

Definition at line 77 of file patchInjectionBase.H.

◆ patchNormal_

vectorList patchNormal_
protected

Patch face normal directions.

Definition at line 80 of file patchInjectionBase.H.

◆ cellOwners_

labelList cellOwners_
protected

List of cell labels corresponding to injector positions.

Definition at line 83 of file patchInjectionBase.H.

◆ triFace_

faceList triFace_
protected

Decomposed patch faces as a list of triangles.

Definition at line 86 of file patchInjectionBase.H.

◆ triToFace_

labelList triToFace_
protected

Addressing from per triangle to patch face.

Definition at line 89 of file patchInjectionBase.H.

◆ triCumulativeMagSf_

scalarList triCumulativeMagSf_
protected

Cumulative triangle area per triangle face.

Definition at line 92 of file patchInjectionBase.H.

◆ sumTriMagSf_

scalarList sumTriMagSf_
protected

Cumulative area fractions per processor.

Definition at line 95 of file patchInjectionBase.H.


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