The FOAM file format has not changed from version 2.0 in many years and so there is no longer a need for the 'version' entry in the FoamFile header to be required and to reduce unnecessary clutter it is now optional, defaulting to the current file format 2.0.
156 lines
3.8 KiB
C++
156 lines
3.8 KiB
C++
/*--------------------------------*- C++ -*----------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration | Website: https://openfoam.org
|
|
\\ / A nd | Version: dev
|
|
\\/ M anipulation |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
format ascii;
|
|
class dictionary;
|
|
object blockMeshDict;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
convertToMeters 1;
|
|
|
|
vertices #codeStream
|
|
{
|
|
codeInclude
|
|
#{
|
|
#include "pointField.H"
|
|
#};
|
|
|
|
code
|
|
#{
|
|
pointField points(19);
|
|
points[0] = point(0.5, 0, -0.5);
|
|
points[1] = point(1, 0, -0.5);
|
|
points[2] = point(2, 0, -0.5);
|
|
points[3] = point(2, 0.707107, -0.5);
|
|
points[4] = point(0.707107, 0.707107, -0.5);
|
|
points[5] = point(0.353553, 0.353553, -0.5);
|
|
points[6] = point(2, 2, -0.5);
|
|
points[7] = point(0.707107, 2, -0.5);
|
|
points[8] = point(0, 2, -0.5);
|
|
points[9] = point(0, 1, -0.5);
|
|
points[10] = point(0, 0.5, -0.5);
|
|
points[11] = point(-0.5, 0, -0.5);
|
|
points[12] = point(-1, 0, -0.5);
|
|
points[13] = point(-2, 0, -0.5);
|
|
points[14] = point(-2, 0.707107, -0.5);
|
|
points[15] = point(-0.707107, 0.707107, -0.5);
|
|
points[16] = point(-0.353553, 0.353553, -0.5);
|
|
points[17] = point(-2, 2, -0.5);
|
|
points[18] = point(-0.707107, 2, -0.5);
|
|
|
|
// Duplicate z points
|
|
label sz = points.size();
|
|
points.setSize(2*sz);
|
|
for (label i = 0; i < sz; i++)
|
|
{
|
|
const point& pt = points[i];
|
|
points[i+sz] = point(pt.x(), pt.y(), -pt.z());
|
|
}
|
|
|
|
os << points;
|
|
#};
|
|
};
|
|
|
|
|
|
blocks
|
|
(
|
|
hex (5 4 9 10 24 23 28 29) (10 10 1) simpleGrading (1 1 1)
|
|
hex (0 1 4 5 19 20 23 24) (10 10 1) simpleGrading (1 1 1)
|
|
hex (1 2 3 4 20 21 22 23) (20 10 1) simpleGrading (1 1 1)
|
|
hex (4 3 6 7 23 22 25 26) (20 20 1) simpleGrading (1 1 1)
|
|
hex (9 4 7 8 28 23 26 27) (10 20 1) simpleGrading (1 1 1)
|
|
hex (15 16 10 9 34 35 29 28) (10 10 1) simpleGrading (1 1 1)
|
|
hex (12 11 16 15 31 30 35 34) (10 10 1) simpleGrading (1 1 1)
|
|
hex (13 12 15 14 32 31 34 33) (20 10 1) simpleGrading (1 1 1)
|
|
hex (14 15 18 17 33 34 37 36) (20 20 1) simpleGrading (1 1 1)
|
|
hex (15 9 8 18 34 28 27 37) (10 20 1) simpleGrading (1 1 1)
|
|
);
|
|
|
|
edges
|
|
(
|
|
arc 0 5 45.0 (0 0 1)
|
|
arc 5 10 45.0 (0 0 1)
|
|
arc 1 4 45.0 (0 0 1)
|
|
arc 4 9 45.0 (0 0 1)
|
|
arc 19 24 45.0 (0 0 1)
|
|
arc 24 29 45.0 (0 0 1)
|
|
arc 20 23 45.0 (0 0 1)
|
|
arc 23 28 45.0 (0 0 1)
|
|
arc 11 16 45.0 (0 0 -1)
|
|
arc 16 10 45.0 (0 0 -1)
|
|
arc 12 15 45.0 (0 0 -1)
|
|
arc 15 9 45.0 (0 0 -1)
|
|
arc 30 35 45.0 (0 0 -1)
|
|
arc 35 29 45.0 (0 0 -1)
|
|
arc 31 34 45.0 (0 0 -1)
|
|
arc 34 28 45.0 (0 0 -1)
|
|
);
|
|
|
|
boundary
|
|
(
|
|
down
|
|
{
|
|
type symmetryPlane;
|
|
faces
|
|
(
|
|
(0 1 20 19)
|
|
(1 2 21 20)
|
|
(12 11 30 31)
|
|
(13 12 31 32)
|
|
);
|
|
}
|
|
right
|
|
{
|
|
type patch;
|
|
faces
|
|
(
|
|
(2 3 22 21)
|
|
(3 6 25 22)
|
|
);
|
|
}
|
|
up
|
|
{
|
|
type symmetryPlane;
|
|
faces
|
|
(
|
|
(7 8 27 26)
|
|
(6 7 26 25)
|
|
(8 18 37 27)
|
|
(18 17 36 37)
|
|
);
|
|
}
|
|
left
|
|
{
|
|
type patch;
|
|
faces
|
|
(
|
|
(14 13 32 33)
|
|
(17 14 33 36)
|
|
);
|
|
}
|
|
cylinder
|
|
{
|
|
type symmetry;
|
|
faces
|
|
(
|
|
(10 5 24 29)
|
|
(5 0 19 24)
|
|
(16 10 29 35)
|
|
(11 16 35 30)
|
|
);
|
|
}
|
|
);
|
|
|
|
mergePatchPairs
|
|
(
|
|
);
|
|
|
|
// ************************************************************************* //
|