/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.3.1                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Parametrized building geometry

//m4 definitions:







// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//Building length x and width y





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

convertToMeters 1;

vertices
(
    (-5 -5 0)
    (0 -5 0)
    ( 1.0 -5 0)
    (10 -5 0)

    (-5 -0.5 0)
    (0 -0.5 0)
    ( 1.0 -0.5 0)
    (10 -0.5 0)

    (-5 0.5 0)
    (0 0.5 0)
    ( 1.0 0.5 0)
    (10 0.5 0)

    (-5 5 0)
    (0 5 0)
    ( 1.0 5 0)
    (10 5 0)
	
    (-5 -5 1) //z+
    (0 -5 1)
    ( 1.0 -5 1)
    (10 -5 1)

    (-5 -0.5 1)
    (0 -0.5 1)
    ( 1.0 -0.5 1)
    (10 -0.5 1)

    (-5 0.5 1)
    (0 0.5 1)
    ( 1.0 0.5 1)
    (10 0.5 1)

    (-5 5 1)
    (0 5 1)
    ( 1.0 5 1)
    (10 5 1)
);

blocks
(
    hex (0 1 5 4 16 17 21 20) (10 10 3) simpleGrading (0.3909 0.4 1)
    hex (1 2 6 5 17 18 22 21) (3 10 3) simpleGrading (1 0.4 1)
    hex (2 3 7 6 18 19 23 22) (14 10 3) simpleGrading (3.8833 0.4 1)
    hex (4 5 9 8 20 21 25 24) (10 3 3) simpleGrading (0.3909 1 1)
    hex (6 7 11 10 22 23 27 26) (14 3 3) simpleGrading (3.8833 1 1)
    hex (8 9 13 12 24 25 29 28) (10 10 3) simpleGrading (0.3909 2.5 1)
    hex (9 10 14 13 25 26 30 29) (3 10 3) simpleGrading (1 2.5 1)
    hex (10 11 15 14 26 27 31 30) (14 10 3) simpleGrading (3.8833 2.5 1)
);

boundary
(
    inlet
    {
        type patch;
        faces
        (   
            (0 16 20 4)
            (4 20 24 8)
            (8 24 28 12)
        );
     }

    outlet
    {
        type patch;
        faces
        (   
            (3 7 23 19)
            (7 11 27 23)
            (11 15 31 27)
        );
     }

    top
    {
        type symmetryPlane;
        faces
        (   
            (12 28 29 13)
            (13 29 30 14)
            (14 30 31 15)
        );
    }

    bottom
    {
        type symmetryPlane;
        faces
        (   
            (0 1 17 16)
            (1 2 18 17)
            (2 3 19 18)
        );
    }

    obstacle
    {
        type wall;
        faces
        (   
            (5 9 25 21)
            (9 10 26 25)
            (10 6 22 26)
            (6 5 21 22)
        );
    }

    front
    {
        type cyclic;
        faces
        (   
            (16 17 21 20)
            (17 18 22 21)
            (18 19 23 22)
            (20 21 25 24)
            (22 23 27 26)
            (24 25 29 28)
            (25 26 30 29)
            (26 27 31 30)
        );
        neighbourPatch back;
    }

    back
    {
        type cyclic;
        faces
        (   
            (0 4 5 1)
            (1 5 6 2)
            (2 6 7 3)
            (4 8 9 5)
            (6 10 11 7)
            (8 12 13 9)
            (9 13 14 10)
            (10 14 15 11)
        );
        neighbourPatch front;
    }
);

mergePatchPairs
(
);

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