The inside or outside region refinement level is now specified using the simple
"level <level>" entry in refinementRegions e.g.
refinementRegions
{
refinementBox
{
mode inside;
level 5;
}
}
rather than
refinementRegions
{
refinementBox
{
mode inside;
levels ((1E15 5));
}
}
where the spurious "1E15" number is not used and the '((...))' is unnecessary clutter.
124 lines
2.5 KiB
C++
124 lines
2.5 KiB
C++
/*--------------------------------*- C++ -*----------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration | Website: https://openfoam.org
|
|
\\ / A nd | Version: dev
|
|
\\/ M anipulation |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
version 2.0;
|
|
format ascii;
|
|
class dictionary;
|
|
object snappyHexMeshDict;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
#includeEtc "caseDicts/mesh/generation/snappyHexMeshDict.cfg"
|
|
|
|
castellatedMesh on;
|
|
snap on;
|
|
addLayers off;
|
|
|
|
geometry
|
|
{
|
|
fixed
|
|
{
|
|
type triSurfaceMesh;
|
|
file "fixed.obj";
|
|
}
|
|
rotating
|
|
{
|
|
type triSurfaceMesh;
|
|
file "rotating.obj";
|
|
}
|
|
rotatingZone
|
|
{
|
|
type triSurfaceMesh;
|
|
file "rotatingZone.obj";
|
|
}
|
|
};
|
|
|
|
castellatedMeshControls
|
|
{
|
|
features
|
|
(
|
|
{ file "fixed.eMesh"; level 1; }
|
|
{ file "rotating.eMesh"; level 1; }
|
|
{ file "rotatingZone.eMesh"; level 1; }
|
|
);
|
|
|
|
refinementSurfaces
|
|
{
|
|
fixed
|
|
{
|
|
level (2 2);
|
|
patchInfo { type wall; }
|
|
}
|
|
rotating
|
|
{
|
|
level (2 2);
|
|
patchInfo { type wall; }
|
|
}
|
|
rotatingZone
|
|
{
|
|
level (2 2);
|
|
faceZone rotatingZone;
|
|
cellZone rotatingZone;
|
|
cellZoneInside inside;
|
|
}
|
|
|
|
}
|
|
|
|
refinementRegions
|
|
{
|
|
/*
|
|
rotatingZone
|
|
{
|
|
mode inside;
|
|
level 2;
|
|
}
|
|
*/
|
|
}
|
|
|
|
locationInMesh (1e-5 1e-5 1e-5); // Offset from (0 0 0) to avoid
|
|
// coinciding with face or edge
|
|
nCellsBetweenLevels 3;
|
|
}
|
|
|
|
snapControls
|
|
{
|
|
// explicitFeatureSnap on;
|
|
// implicitFeatureSnap off;
|
|
}
|
|
|
|
addLayersControls
|
|
{
|
|
layers
|
|
{
|
|
"(rotating|fixed)"
|
|
{
|
|
nSurfaceLayers 2;
|
|
}
|
|
}
|
|
|
|
relativeSizes on; // off, usually with firstLayerThickness
|
|
expansionRatio 1.2;
|
|
finalLayerThickness 0.5;
|
|
minThickness 1e-3;
|
|
// firstLayerThickness 0.01;
|
|
|
|
// maxThicknessToMedialRatio 0.3;
|
|
}
|
|
|
|
writeFlags
|
|
(
|
|
// scalarLevels
|
|
layerSets
|
|
layerFields
|
|
);
|
|
|
|
mergeTolerance 1e-6;
|
|
|
|
// ************************************************************************* //
|