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 64 of file patchInjectionBase.H.
patchInjectionBase | ( | const polyMesh & | mesh, |
const word & | patchName | ||
) |
Construct from mesh and patch name.
Definition at line 38 of file patchInjectionBase.C.
References polyMesh::boundaryMesh(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, mesh, polyBoundaryMesh::names(), Foam::nl, patchInjectionBase::patchId_, patchInjectionBase::patchName_, and patchInjectionBase::updateMesh().
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.
Reimplemented in PatchFlowRateInjection< CloudType >, and PatchInjection< CloudType >.
Definition at line 82 of file patchInjectionBase.C.
References DynamicList< T, SizeMin >::append(), polyMesh::boundaryMesh(), DynamicList< T, SizeMin >::clear(), f(), forAll, Foam::mag(), mesh, processorFaPatch::myProcNo(), points, Foam::sum(), and Foam::Zero.
Referenced by patchInjectionBase::patchInjectionBase().
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 142 of file patchInjectionBase.C.
References polyMesh::boundaryMesh(), primitiveMesh::cellCentres(), polyMeshTetDecomposition::cellTetIndices(), polyMesh::findCellFacePt(), polyMesh::findTetFacePt(), forAll, forAllReverse, UList< T >::last(), Foam::mag(), mesh, processorFaPatch::myProcNo(), points, Random::position(), triangle< Point, PointRef >::randomPoint(), Random::sample01(), UList< T >::size(), fvMesh::V(), and Foam::Zero.
Referenced by PatchFlowRateInjection< CloudType >::setPositionAndCell(), and PatchInjection< CloudType >::setPositionAndCell().
|
virtual |
Set the injection position and owner cell, tetFace and tetPt.
Returns the seed patch face index
Reimplemented in PatchFlowRateInjection< CloudType >, and PatchInjection< CloudType >.
Definition at line 266 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 291 of file patchInjectionBase.C.
References forAllReverse.
|
protected |
Patch name.
Definition at line 71 of file patchInjectionBase.H.
Referenced by patchInjectionBase::patchInjectionBase().
|
protected |
Patch ID.
Definition at line 74 of file patchInjectionBase.H.
Referenced by patchInjectionBase::patchInjectionBase().
|
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.