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... | |
label | 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 label | 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 60 of file patchInjectionBase.H.
patchInjectionBase | ( | const polyMesh & | mesh, |
const word & | patchName | ||
) |
Construct from mesh and patch name.
Definition at line 32 of file patchInjectionBase.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, mesh, and Foam::nl.
patchInjectionBase | ( | const patchInjectionBase & | pib | ) |
Copy constructor.
Definition at line 59 of file patchInjectionBase.C.
|
virtualdefault |
Destructor.
|
virtual |
Update patch geometry and derived info for injection locations.
Definition at line 75 of file patchInjectionBase.C.
References polyMesh::boundaryMesh(), DynamicList< T, SizeMin >::clear(), f(), forAll, Pstream::listCombineReduce(), Foam::mag(), mesh, UPstream::myProcNo(), Foam::foamVersion::patch, points, Foam::reduce(), Foam::sum(), triFace(), and Foam::Zero.
Foam::label 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 Returns the seed patch face index
Definition at line 136 of file patchInjectionBase.C.
References polyMesh::boundaryMesh(), primitiveMesh::cellCentres(), polyMeshTetDecomposition::cellTetIndices(), polyMesh::findCellFacePt(), polyMesh::findTetFacePt(), forAll, forAllReverse, UList< T >::last(), Foam::mag(), mesh, UPstream::myProcNo(), Foam::foamVersion::patch, points, Random::position(), triangle< Point, PointRef >::randomPoint(), Random::sample01(), UList< T >::size(), fvMesh::V(), and Foam::Zero.
|
virtual |
Set the injection position and owner cell, tetFace and tetPt.
Returns the seed patch face index
Definition at line 260 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 284 of file patchInjectionBase.C.
References forAllReverse.
|
protected |
Patch name.
Definition at line 69 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 79 of file patchInjectionBase.H.
|
protected |
Patch face normal directions.
Definition at line 84 of file patchInjectionBase.H.
|
protected |
List of cell labels corresponding to injector positions.
Definition at line 89 of file patchInjectionBase.H.
|
protected |
Decomposed patch faces as a list of triangles.
Definition at line 94 of file patchInjectionBase.H.
|
protected |
Addressing from per triangle to patch face.
Definition at line 99 of file patchInjectionBase.H.
|
protected |
Cumulative triangle area per triangle face.
Definition at line 104 of file patchInjectionBase.H.
|
protected |
Cumulative area fractions per processor.
Definition at line 109 of file patchInjectionBase.H.