/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /   O peration     | Version:  v2306 or any                         |
|   \\  /    A nd           |                                                 |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/

FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}

// Geometry dimensions (in meters)
convertToMeters 0.001;  // Use millimeters as base units

vertices
(
    // Lower face (z = -85)
    (-342 -100 -85)  // 0
    ( 500 -100 -85)  // 1
    ( 500  100 -85)  // 2
    (-342  100 -85)  // 3

    // Upper face (z = +55)
    (-342 -100  85)  // 4
    ( 500 -100  85)  // 5
    ( 500  100  85)  // 6
    (-342  100  85)  // 7
);

blocks
(
    hex (0 1 2 3 4 5 6 7) (500 500 1) 
	simpleGrading (1 1 1)
);

edges
(
);

boundary
(
    inlet
    {
        type patch;
        faces
        (
            (0 4 7 3)
        );
    }

    outlet
    {
        type patch;
        faces
        (
            (1 2 6 5)
        );
    }

    lowerWall
    {
        type wall;
        faces
        (
            (0 1 5 4)
        );
    }

    upperWall
    {
        type wall;
        faces
        (
            (3 7 6 2)
        );
    }

    frontAndBack
    {
        type empty;  // If 2D simulation
        faces
        (
            (0 3 2 1)
            (4 5 6 7)
        );
    }
);

mergePatchPairs ();