/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                |
| \\      /  F ield         | cfMesh: A library for mesh generation          |
|  \\    /   O peration     |                                                |
|   \\  /    A nd           | Author: Franjo Juretic                         |
|    \\/     M anipulation  | E-mail: franjo.juretic@c-fields.com            |
\*---------------------------------------------------------------------------*/

FoamFile
{
    version   2.0;
    format    ascii;
    class     dictionary;
    location  "system";
    object    meshDict;
}

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

surfaceFile "domain.stl"

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

minCellSize         6;  // =================

maxCellSize         48; // ================= x 3.0

boundaryCellSize    48; // ================= x 3.0


objectRefinements
{
	RotorBox
	{
		type	box;
		cellSize	                4;  // =================
		centre	(3060 225 1500);
		lengthX	300;
		lengthY	450;
		lengthZ	450;
	}

	NearWakeBox
	{
		type	box;
		cellSize	                8;  // ================= x 2.0
		centre	(3600 375 1500);
		lengthX	1800;
		lengthY	750;
		lengthZ	600;
	}

	WakeBox
	{
		type	box;
		cellSize	                16;   // ================= x 2.0
		centre	(6450 450 1500);
		lengthX	8000;
		lengthY	900;
		lengthZ	750;
	}
}







// Refine the wall beneath the actuator:

/*localRefinement
{
    ground
    {
        cellSize    0.15;                       // $minVal =================
    }

}*/

/*boundaryLayers
{
	patchBoundaryLayers
	{
		"ground"
		{
			nLayers 7;
			thicknessRatio 1.2;
			maxFirstLayerThickness   0.15;      // $minVal =================
		}
	}
}*/

renameBoundary
{
    defaultType     patch;

    newPatchNames
    {
        "top"    { newName top    ; type  patch; }
        "sides"  { newName sides  ; type  patch; }
        "outlet" { newName outlet ; type  patch; }
        "inlet"  { newName inlet  ; type  patch; }
        "ground" { newName ground ; type  wall;  inGroups 1(wall); }
        
    }
}

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