37#ifndef layerParameters_H
38#define layerParameters_H
52class polyBoundaryMesh;
53class refinementSurfaces;
87 static const scalar defaultConcaveAngle;
124 const scalar featureAngle_;
126 const scalar mergePatchFacesAngle_;
128 const scalar concaveAngle_;
132 const scalar maxFaceThicknessRatio_;
134 const label nBufferCellsNoExtrude_;
136 const label nLayerIter_;
141 const bool additionalReporting_;
143 const word meshShrinker_;
145 const label nOuterIter_;
152 static scalar layerExpansionRatio
155 const scalar totalOverFirst
159 static void readLayerParameters
170 void calculateLayerParameters
196 const bool dryRun =
false
224 return relativeSizes_;
236 return expansionRatio_;
245 return finalLayerThickness_;
253 return firstLayerThickness_;
270 return minThickness_;
295 return nRelaxedIter_;
303 return featureAngle_;
308 return mergePatchFacesAngle_;
313 return concaveAngle_;
327 return maxFaceThicknessRatio_;
333 return nBufferCellsNoExtrude_;
339 return additionalReporting_;
345 return meshShrinker_;
359 const scalar totalThickness,
365 static scalar layerExpansionRatio
371 const scalar totalThickness,
383 const scalar totalThickness,
401 const label layerStart,
402 const label layerSize
Enum is a wrapper around a list of names/values that represent particular enumeration (or int) values...
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Simple container to keep together layer specific information.
const List< thicknessModelType > & layerModels() const
Specification of layer thickness.
scalar mergePatchFacesAngle() const
const scalarField & finalLayerThickness() const
Wanted thickness of the layer furthest away.
const scalarField & minThickness() const
Minimum overall thickness of cell layer. If for any reason layer.
scalar featureAngle() const
label nRelaxedIter() const
Number of iterations after which relaxed motion rules.
const scalarField & expansionRatio() const
const word & meshShrinker() const
Type of mesh shrinker.
bool additionalReporting() const
Any additional reporting requested?
const scalarField & thickness() const
Wanted overall thickness of all layers.
thicknessModelType
Enumeration defining the layer specification:
@ FIRST_AND_RELATIVE_FINAL
scalar concaveAngle() const
label nGrow() const
If points get not extruded do nGrow layers of connected faces.
static scalar layerThickness(const thicknessModelType, const label nLayers, const scalar firstLayerThickness, const scalar finalLayerThickness, const scalar totalThickness, const scalar expansionRatio)
Determine overall thickness. Uses two of the four parameters.
const scalarField & firstLayerThickness() const
Wanted thickness of the layer nearest to the wall.
label nOuterIter() const
Outer loop to add layer by layer. Can be set to >= max layers.
label nBufferCellsNoExtrude() const
Create buffer region for new layer terminations.
scalar maxFaceThicknessRatio() const
Stop layer growth on highly warped cells.
label nLayerIter() const
Number of overall layer addition iterations.
static scalar finalLayerThicknessRatio(const label nLayers, const scalar expansionRatio)
Determine ratio of final layer thickness to.
const dictionary & dict() const
const boolList & relativeSizes() const
Are size parameters relative to inner cell size or.
const labelList & numLayers() const
How many layers to add.
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO.
A class for handling words, derived from Foam::string.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
List< bool > boolList
A List of bools.