/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  8
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 1;

vertices
(
    (0.70710 -0.70710 0)
    (1.41421 -1.41421 0)
    (1.41421 1.41421 0)
    (0.70710 0.70710 0)
    (-1.41421 1.41421 0)
    (-0.70710 0.70710 0)
    (-1.41421 -1.41421 0)
    (-0.70710 -0.70710 0)
    (0.70710 -0.70710 1)
    (1.41421 -1.41421 1)
    (1.41421 1.41421 1)
    (0.70710 0.70710 1)
    (-1.41421 1.41421 1)
    (-0.70710 0.70710 1)
    (-1.41421 -1.41421 1)
    (-0.70710 -0.70710 1)
);

blocks
(
    hex (0 1 2 3 8 9 10 11) (20 20 1) simpleGrading (1 1 1)
    hex (3 2 4 5 11 10 12 13) (20 20 1) simpleGrading (1 1 1)
    hex (5 4 6 7 13 12 14 15) (20 20 1) simpleGrading (1 1 1)
    hex (7 6 1 0 15 14 9 8) (20 20 1) simpleGrading (1 1 1)
);     
       
edges   
(      
    arc 0 3 (0.92387 0.38268 0) 
    arc 3 5 (0 1 0)  
    arc 5 7 (-0.92387 0.38268 0) 
    arc 1 2 (1.84774 0.76536 0)
    arc 2 4 (0 2 0)
    arc 4 6 (-1.84774 0.76536 0)
    arc 7 0 (0 -1 0)
    arc 6 1 (0 -2 0) 
    arc 8 11 (0.92387 0.38268 1) 
    arc 11 13 (0 1 1)  
    arc 13 15 (-0.92387 0.38268 1) 
    arc 9 10 (1.84774 0.76536 1)
    arc 10 12 (0 2 1)
    arc 12 14 (-1.84774 0.76536 1)
    arc 15 8 (0 -1 1)
    arc 14 9 (0 -2 1)  
);

boundary
(
    rotatingWall
    {
        type rotatingWallVelocity;
        faces
        (
            (0 7 15 8) 
            (3 0 8 11)
            (5 3 11 13)
            (7 5 13 15) 

        );
    }
    fixedWalls
    {
        type wall;
        faces
        (
            (1 2 10 9)
            (2 4 12 10)
            (4 6 14 12)
            (6 1 9 14)
        );
    }
    Top
    { 
        type empty;
        faces
        (
            (8 9 10 11)
            (11 10 12 13)
            (13 12 14 15)
            (15 14 9 8)
        );
    }
    Bottom
    { 
        type empty;
        faces
        (
            (3 2 1 0)
            (3 5 4 2)
            (6 7 0 1)
            (7 6 4 5)

        );      
    } 
);

mergePatchPairs
(
);

// ************************************************************************* //
