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

h 1;
l1 4;
l2 40;
L  #eval "$l1+$l2";
H  #eval "2*$h";
dz 0.1;

scale   1.0; // Fator de escala

vertices
(
        (0      $h     0)  // vertex number 0
        ($l1    $h     0)  // vertex number 1
        ($l1    0      0)  // vertex number 2
        ($L     0      0)  // vertex number 3
        ($L     $h     0)  // vertex number 4
        ($L     $H     0)  // vertex number 5
        ($l1    $H     0)  // vertex number 6
        (0      $H     0)  // vertex number 7

        (0      $h     $dz)  // vertex number 8
        ($l1    $h     $dz)  // vertex number 9
        ($l1    0      $dz)  // vertex number 10
        ($L     0      $dz)  // vertex number 11
        ($L     $h     $dz)  // vertex number 12
        ($L     $H     $dz)  // vertex number 13
        ($l1    $H     $dz)  // vertex number 14
        (0      $H     $dz)  // vertex number 15
);

dx 0.1;
dy 0.1;
Nh #eval "$h / $dy ";
N1 #eval "$l1 / $dx ";
N2 #eval "$l2 / $dx ";

blocks
(
    hex (0 1 6 7 8 9 14 15) ($N1 $Nh 1) simpleGrading (1 1 1)
    hex (1 4 5 6 9 12 13 14) ($N2 $Nh 1) simpleGrading (1 1 1)
    hex (2 3 4 1 10 11 12 9) ($N2 $Nh 1) simpleGrading (1 1 1)
);

edges
(
);

boundary
(
	inlet
	{
	    type patch;
	    faces
	    (
        	    (0 8 15 7)
	    );
	}

outlet
{
    type patch;
    faces
    (
        (12 4 5 13)
        (11 3 4 12)
    );
}

top
{
     type wall;
     faces
     (
         (14 6 7 15)
         (13 5 6 14)
     );
}

bottom
{
    type wall;
    faces
    (
		(2 3 11 10)
		(9 1 2 10)
		(1 9 8 0)
    );
}

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

);


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