Encapsulates queries for volume refinement ('refine all cells within shell'). More...
Public Types | |
enum | refineMode { INSIDE, OUTSIDE, DISTANCE } |
Volume refinement controls. More... | |
Public Member Functions | |
shellSurfaces (const searchableSurfaces &allGeometry, const dictionary &shellsDict, const bool dryRun=false) | |
Construct from geometry and dictionary. More... | |
const labelList & | shells () const |
Indices of surfaces that are shells. More... | |
const List< List< FixedList< label, 3 > > > & | extendedGapLevel () const |
Per shell, per region the small-gap level specification. More... | |
const List< List< volumeType > > & | extendedGapMode () const |
Per shell, per region the small-gap level specification. More... | |
const boolListList & | gapSelf () const |
Per shell, per region whether to test for gap with same surface. More... | |
label | maxLevel () const |
Highest shell level. More... | |
labelList | maxGapLevel () const |
Highest shell gap level. More... | |
labelPairList | directionalSelectLevel () const |
Min and max cell level for directional refinement. More... | |
void | findHigherLevel (const pointField &pt, const labelList &ptLevel, labelList &maxLevel) const |
Find shell level higher than ptLevel. More... | |
void | findHigherGapLevel (const pointField &pt, const labelList &ptLevel, labelList &gapShell, List< FixedList< label, 3 >> &gapInfo, List< volumeType > &gapMode) const |
Find a shell whose minimum gap level is >= ptLevel. More... | |
void | findHigherGapLevel (const pointField &pt, const labelList &ptLevel, List< FixedList< label, 3 >> &gapInfo, List< volumeType > &gapMode) const |
Find a shell whose minimum gap level is >= ptLevel. gapInfo. More... | |
void | findLevel (const pointField &pt, const labelList &ptLevel, labelList &shell) const |
Find first shell (or -1) with level equal or lower than ptLevel. More... | |
void | findDirectionalLevel (const pointField &pt, const labelList &ptLevel, const labelList &dirLevel, const direction dir, labelList &shell) const |
Find any shell (or -1) with higher wanted directional level. More... | |
const vectorField & | smoothDirection () const |
Per shell the smoothing direction. More... | |
const labelList & | nSmoothExpansion () const |
Per shell the directional smoothing iterations. More... | |
const labelList & | nSmoothPosition () const |
Per shell the positional smoothing iterations. More... | |
Encapsulates queries for volume refinement ('refine all cells within shell').
Definition at line 53 of file shellSurfaces.H.
enum refineMode |
Volume refinement controls.
Enumerator | |
---|---|
INSIDE | |
OUTSIDE | |
DISTANCE |
Definition at line 62 of file shellSurfaces.H.
shellSurfaces | ( | const searchableSurfaces & | allGeometry, |
const dictionary & | shellsDict, | ||
const bool | dryRun = false |
||
) |
Construct from geometry and dictionary.
Definition at line 586 of file shellSurfaces.C.
References dict, entry::dict(), Foam::endl(), ILList< LListBase, T >::erase(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, dictionary::findEntry(), UList< T >::first(), forAll, dictionary::found(), dictionary::getOrDefault(), Foam::Info, IOWarningInFunction, entry::keyword(), Foam::labelMax, Foam::labelMin, dictionary::lookup(), volumeType::MIXED, Istream::readBegin(), Istream::readEnd(), dictionary::readEntry(), keyType::REGEX, regionNames, FixedList< T, N >::setSize(), UList< T >::size(), dictionary::subDict(), Foam::fieldTypes::surface, dictionary::toc(), WarningInFunction, and VectorSpace< Vector< label >, label, 3 >::zero.
|
inline |
Indices of surfaces that are shells.
Definition at line 225 of file shellSurfaces.H.
Per shell, per region the small-gap level specification.
Definition at line 233 of file shellSurfaces.H.
|
inline |
Per shell, per region the small-gap level specification.
Definition at line 241 of file shellSurfaces.H.
|
inline |
Per shell, per region whether to test for gap with same surface.
Definition at line 249 of file shellSurfaces.H.
Foam::label maxLevel | ( | ) | const |
Highest shell level.
Definition at line 819 of file shellSurfaces.C.
References forAll, and Foam::max().
Foam::labelList maxGapLevel | ( | ) | const |
Highest shell gap level.
Definition at line 830 of file shellSurfaces.C.
References forAll, Foam::max(), and Foam::Zero.
Foam::labelPairList directionalSelectLevel | ( | ) | const |
Min and max cell level for directional refinement.
Definition at line 846 of file shellSurfaces.C.
References forAll.
void findHigherLevel | ( | const pointField & | pt, |
const labelList & | ptLevel, | ||
labelList & | maxLevel | ||
) | const |
Find shell level higher than ptLevel.
Definition at line 876 of file shellSurfaces.C.
References forAll.
void findHigherGapLevel | ( | const pointField & | pt, |
const labelList & | ptLevel, | ||
labelList & | gapShell, | ||
List< FixedList< label, 3 >> & | gapInfo, | ||
List< volumeType > & | gapMode | ||
) | const |
Find a shell whose minimum gap level is >= ptLevel.
Definition at line 893 of file shellSurfaces.C.
References forAll, volumeType::MIXED, List< T >::setSize(), and UList< T >::size().
void findHigherGapLevel | ( | const pointField & | pt, |
const labelList & | ptLevel, | ||
List< FixedList< label, 3 >> & | gapInfo, | ||
List< volumeType > & | gapMode | ||
) | const |
Find a shell whose minimum gap level is >= ptLevel. gapInfo.
is (0 0 0) if no shell found
Definition at line 918 of file shellSurfaces.C.
void findLevel | ( | const pointField & | pt, |
const labelList & | ptLevel, | ||
labelList & | shell | ||
) | const |
Find first shell (or -1) with level equal or lower than ptLevel.
Definition at line 931 of file shellSurfaces.C.
References forAll, List< T >::setSize(), and UList< T >::size().
void findDirectionalLevel | ( | const pointField & | pt, |
const labelList & | ptLevel, | ||
const labelList & | dirLevel, | ||
const direction | dir, | ||
labelList & | shell | ||
) | const |
Find any shell (or -1) with higher wanted directional level.
Definition at line 950 of file shellSurfaces.C.
References List< T >::append(), Pair< T >::first(), forAll, volumeType::INSIDE, volumeType::OUTSIDE, Pair< T >::second(), List< T >::setSize(), and UList< T >::size().
const Foam::vectorField & smoothDirection | ( | ) | const |
Per shell the smoothing direction.
Definition at line 863 of file shellSurfaces.C.
const Foam::labelList & nSmoothExpansion | ( | ) | const |
Per shell the directional smoothing iterations.
Definition at line 857 of file shellSurfaces.C.
const Foam::labelList & nSmoothPosition | ( | ) | const |
Per shell the positional smoothing iterations.
Definition at line 869 of file shellSurfaces.C.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.