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... | |
void | setPositionAndCell (const fvMesh &mesh, const scalar fraction01, Random &rnd, vector &position, label &cellOwner, label &tetFacei, label &tetPti) |
Set the injection position and owner cell, tetFace and tetPt. 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... | |
label | whichProc (const scalar fraction01) const |
Return the processor that has the location specified by the fraction. 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... | |
Definition at line 64 of file patchInjectionBase.H.
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.
patchInjectionBase | ( | const patchInjectionBase & | pib | ) |
Copy constructor.
Definition at line 66 of file patchInjectionBase.C.
|
virtualdefault |
Destructor.
|
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().
void setPositionAndCell | ( | const fvMesh & | mesh, |
const scalar | fraction01, | ||
Random & | rnd, | ||
vector & | position, | ||
label & | cellOwner, | ||
label & | tetFacei, | ||
label & | tetPti | ||
) |
Set the injection position and owner cell, tetFace and tetPt.
Supply the fraction used to determine the location on the patch
Definition at line 148 of file patchInjectionBase.C.
References polyMesh::boundaryMesh(), primitiveMesh::cellCentres(), polyMeshTetDecomposition::cellTetIndices(), polyMesh::findCellFacePt(), polyMesh::findTetFacePt(), forAll, forAllReverse, Foam::mag(), mesh, UPstream::myProcNo(), Foam::foamVersion::patch, points, Random::position(), triangle< Point, PointRef >::randomPoint(), Random::sample01(), fvMesh::V(), and Foam::Zero.
|
virtual |
Set the injection position and owner cell, tetFace and tetPt.
Definition at line 268 of file patchInjectionBase.C.
References Random::globalSample01(), and mesh.
Foam::label whichProc | ( | const scalar | fraction01 | ) | const |
Return the processor that has the location specified by the fraction.
Definition at line 292 of file patchInjectionBase.C.
References forAllReverse.
|
protected |
Patch name.
Definition at line 71 of file patchInjectionBase.H.
|
protected |
Patch ID.
Definition at line 74 of file patchInjectionBase.H.
|
protected |
Patch area - total across all processors.
Definition at line 77 of file patchInjectionBase.H.
|
protected |
Patch face normal directions.
Definition at line 80 of file patchInjectionBase.H.
|
protected |
List of cell labels corresponding to injector positions.
Definition at line 83 of file patchInjectionBase.H.
|
protected |
Decomposed patch faces as a list of triangles.
Definition at line 86 of file patchInjectionBase.H.
|
protected |
Addressing from per triangle to patch face.
Definition at line 89 of file patchInjectionBase.H.
|
protected |
Cumulative triangle area per triangle face.
Definition at line 92 of file patchInjectionBase.H.
|
protected |
Cumulative area fractions per processor.
Definition at line 95 of file patchInjectionBase.H.