Collection of functions used in wall distance calculation. More...
Public Member Functions | |
ClassName ("cellDistFuncs") | |
cellDistFuncs (const polyMesh &mesh) | |
Construct from mesh. More... | |
const polyMesh & | mesh () const |
Access mesh. More... | |
labelHashSet | getPatchIDs (const UList< wordRe > &patchNames) const |
Return the set of patch IDs corresponding to the given names. More... | |
template<class Type > | |
labelHashSet | getPatchIDs () const |
Get patchIDs of/derived off certain type (e.g. 'processorPolyPatch') More... | |
scalar | smallestDist (const point &p, const polyPatch &patch, const labelUList &wallFaces, label &meshFacei) const |
Calculate smallest true distance (and face index) More... | |
void | getPointNeighbours (const primitivePatch &, const label patchFacei, DynamicList< label > &) const |
Get faces sharing point with face on patch. More... | |
label | maxPatchSize (const labelHashSet &patchIDs) const |
Size of largest patch (out of supplied subset of patches) More... | |
label | sumPatchSize (const labelHashSet &patchIDs) const |
Sum of patch sizes (out of supplied subset of patches). More... | |
void | correctBoundaryFaceCells (const labelHashSet &patchIDs, scalarField &wallDistCorrected, Map< label > &nearestFace) const |
Correct all cells connected to boundary (via face). Sets values in. More... | |
void | correctBoundaryPointCells (const labelHashSet &patchIDs, scalarField &wallDistCorrected, Map< label > &nearestFace) const |
Correct all cells connected to wall (via point). Sets values in. More... | |
template<class Type > | |
Foam::labelHashSet | getPatchIDs () const |
Collection of functions used in wall distance calculation.
Definition at line 59 of file cellDistFuncs.H.
cellDistFuncs | ( | const polyMesh & | mesh | ) |
Construct from mesh.
Definition at line 35 of file cellDistFuncs.C.
ClassName | ( | "cellDistFuncs" | ) |
|
inline |
Access mesh.
Definition at line 98 of file cellDistFuncs.H.
Referenced by cellDistFuncs::getPatchIDs().
Foam::labelHashSet getPatchIDs | ( | const UList< wordRe > & | patchNames | ) | const |
Return the set of patch IDs corresponding to the given names.
Definition at line 44 of file cellDistFuncs.C.
References polyMesh::boundaryMesh(), mesh, patchNames(), and polyBoundaryMesh::patchSet().
labelHashSet getPatchIDs | ( | ) | const |
Get patchIDs of/derived off certain type (e.g. 'processorPolyPatch')
Uses isA, not isType
Foam::scalar smallestDist | ( | const point & | p, |
const polyPatch & | patch, | ||
const labelUList & | wallFaces, | ||
label & | meshFacei | ||
) | const |
Calculate smallest true distance (and face index)
from pt to faces wallFaces. For efficiency reasons we still pass in patch instead of extracting it from mesh_
Definition at line 56 of file cellDistFuncs.C.
References PointHit< PointType >::distance(), p, Foam::foamVersion::patch, and points.
void getPointNeighbours | ( | const primitivePatch & | patch, |
const label | patchFacei, | ||
DynamicList< label > & | neighbours | ||
) | const |
Get faces sharing point with face on patch.
Definition at line 87 of file cellDistFuncs.C.
References Foam::abort(), DynamicList< T, SizeMin >::append(), DynamicList< T, SizeMin >::appendUniq(), DynamicList< T, SizeMin >::clear(), Foam::ensightOutput::debug, Foam::endl(), f(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::foamVersion::patch, SeriousErrorInFunction, and UList< T >::size().
Foam::label maxPatchSize | ( | const labelHashSet & | patchIDs | ) | const |
Size of largest patch (out of supplied subset of patches)
Definition at line 182 of file cellDistFuncs.C.
References polyMesh::boundaryMesh(), forAll, UList< T >::found(), Foam::max(), mesh, Foam::foamVersion::patch, and patchIDs().
Foam::label sumPatchSize | ( | const labelHashSet & | patchIDs | ) | const |
Sum of patch sizes (out of supplied subset of patches).
Used in sizing arrays.
Definition at line 203 of file cellDistFuncs.C.
References polyMesh::boundaryMesh(), forAll, UList< T >::found(), mesh, Foam::foamVersion::patch, patchIDs(), and Foam::sum().
void correctBoundaryFaceCells | ( | const labelHashSet & | patchIDs, |
scalarField & | wallDistCorrected, | ||
Map< label > & | nearestFace | ||
) | const |
Correct all cells connected to boundary (via face). Sets values in.
wallDistCorrected. Sets nearest wallface in nearestFace.
Definition at line 225 of file cellDistFuncs.C.
References polyMesh::boundaryMesh(), primitiveMesh::cellCentres(), polyMesh::faceOwner(), forAll, UList< T >::found(), HashTable< T, Key, Hash >::insert(), mesh, Foam::foamVersion::patch, and patchIDs().
Referenced by wallDistAddressing::correct().
void correctBoundaryPointCells | ( | const labelHashSet & | patchIDs, |
scalarField & | wallDistCorrected, | ||
Map< label > & | nearestFace | ||
) | const |
Correct all cells connected to wall (via point). Sets values in.
wallDistCorrected. Uses/sets nearest wallFace in nearestFace.
Definition at line 271 of file cellDistFuncs.C.
References polyMesh::boundaryMesh(), primitiveMesh::cellCentres(), forAll, UList< T >::found(), HashTable< T, Key, Hash >::found(), HashTable< T, Key, Hash >::insert(), mesh, Foam::foamVersion::patch, patchIDs(), and primitiveMesh::pointCells().
Referenced by wallDistAddressing::correct().
Foam::labelHashSet getPatchIDs | ( | ) | const |
Definition at line 29 of file cellDistFuncsTemplates.C.
References polyMesh::boundaryMesh(), forAll, cellDistFuncs::mesh(), and patchIDs().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.