Files
openfoam/tutorials/mesh/blockMesh/sphere7/system/blockMeshDict
2021-06-08 20:14:09 +00:00

147 lines
3.5 KiB
C++

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: v2012 |
| \\ / A nd | Website: www.openfoam.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
scale 1;
verbose no;
// Geometric parameters
outerRadius 1;
innerRatio 0.7;
// Divisions in x/y/z and radial directions. Can be unequal.
nx 10;
ny $nx;
nz $nx;
nr 6;
geometry
{
sphere
{
type sphere;
origin (0 0 0);
radius $outerRadius;
}
}
// Outer box size
vo #eval{ sqrt($outerRadius/3) };
// Inner box size - % of overall dimension
vi #eval{ $vo * $innerRatio };
vertices
(
// Inner block
(-$vi -$vi -$vi)
( $vi -$vi -$vi)
( $vi $vi -$vi)
(-$vi $vi -$vi)
(-$vi -$vi $vi)
( $vi -$vi $vi)
( $vi $vi $vi)
(-$vi $vi $vi)
// Outer blocks
(-$vo -$vo -$vo)
( $vo -$vo -$vo)
( $vo $vo -$vo)
(-$vo $vo -$vo)
(-$vo -$vo $vo)
( $vo -$vo $vo)
( $vo $vo $vo)
(-$vo $vo $vo)
);
blocks
(
hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) grading (1 1 1) // Inner block
// Outer blocks
hex ( 8 0 3 11 12 4 7 15) ($nr $ny $nz) grading (1 1 1) // x-min
hex ( 1 9 10 2 5 13 14 6) ($nr $ny $nz) grading (1 1 1) // x-max
hex ( 8 9 1 0 12 13 5 4) ($nx $nr $nz) grading (1 1 1) // y-min
hex ( 3 2 10 11 7 6 14 15) ($nx $nr $nz) grading (1 1 1) // y-max
hex ( 8 9 10 11 0 1 2 3) ($nx $ny $nr) grading (1 1 1) // z-min
hex ( 4 5 6 7 12 13 14 15) ($nx $ny $nr) grading (1 1 1) // z-max
);
edges
(
// Outer blocks
arc 8 9 origin (0 0 0)
arc 10 11 origin (0 0 0)
arc 14 15 origin (0 0 0)
arc 12 13 origin (0 0 0)
arc 8 11 origin (0 0 0)
arc 9 10 origin (0 0 0)
arc 13 14 origin (0 0 0)
arc 12 15 origin (0 0 0)
arc 8 12 origin (0 0 0)
arc 9 13 origin (0 0 0)
arc 10 14 origin (0 0 0)
arc 11 15 origin (0 0 0)
// Inner block - flattened by factor 1.1
arc 0 1 origin 1.1 (0 0 0)
arc 2 3 origin 1.1 (0 0 0)
arc 6 7 origin 1.1 (0 0 0)
arc 4 5 origin 1.1 (0 0 0)
arc 0 3 origin 1.1 (0 0 0)
arc 1 2 origin 1.1 (0 0 0)
arc 5 6 origin 1.1 (0 0 0)
arc 4 7 origin 1.1 (0 0 0)
arc 0 4 origin 1.1 (0 0 0)
arc 1 5 origin 1.1 (0 0 0)
arc 2 6 origin 1.1 (0 0 0)
arc 3 7 origin 1.1 (0 0 0)
);
faces
(
// Outer blocks
project ( 8 12 15 11) sphere // x-min
project ( 9 10 14 13) sphere // x-max
project ( 8 9 13 12) sphere // y-min
project (11 15 14 10) sphere // y-max
project ( 8 11 10 9) sphere // z-min
project (12 13 14 15) sphere // z-max
);
boundary
(
walls
{
type wall;
faces
(
( 8 12 15 11) // x-min
( 9 10 14 13) // x-max
( 8 9 13 12) // y-min
(11 15 14 10) // y-max
( 8 11 10 9) // z-min
(12 13 14 15) // z-max
);
}
);
// ************************************************************************* //