openfoam/applications/test/dictionary/blockMeshDict1.calc
2024-12-24 11:17:31 +00:00

118 lines
2.3 KiB
C++

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: v2412 |
| \\ / A nd | Website: www.openfoam.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// incompressible/simpleFoam/pipeCyclic/system/blockMeshDict
scale 1;
//- Half angle of wedge in degrees
halfAngle 45.0;
//- Radius of pipe [m]
radius 0.5;
y #calc #{ $radius*sin(degToRad($halfAngle)) #};
minY #calc #{ -1.0*$y #};
z #calc #{ $radius*cos(degToRad($halfAngle)) #};
minZ #calc #{ -1.0*$z #};
vertices
(
(0.0 0.0 0) //0
(10 0.0 0)
#calc #{ vector(10, 0, 0) #} //2
(0.0 0.0 0)
(0.0 $minY $z) //4
(10 $minY $z)
(10 $y $z) //6
(0.0 $y $z)
);
blocks
(
// inlet block
hex (0 1 2 3 4 5 6 7) (50 5 5) simpleGrading (1 1 1)
);
edges
(
arc 4 7 (0 0 $radius)
arc 5 6 (10 0 $radius)
);
boundary
(
inlet
{
type patch;
faces
(
(0 4 7 3)
);
}
outlet
{
type patch;
faces
(
(1 2 6 5)
);
}
side1
{
type cyclicAMI;
neighbourPatch side2;
faces
(
(0 1 5 4)
);
transform rotational;
rotationAxis (1 0 0);
rotationCentre (0 0 0);
}
side2
{
type cyclicAMI;
neighbourPatch side1;
faces
(
(7 6 2 3)
);
transform rotational;
rotationAxis (1 0 0);
rotationCentre (0 0 0);
}
walls
{
type wall;
faces
(
(4 5 6 7)
(3 2 1 0)
);
}
);
// ************************************************************************* //