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

solvers
{
/*
    p
    {
        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-06;
        relTol          0;

	minIter 	2;
    }
*/

    p
    {
        solver           GAMG;
        tolerance        1e-6;
        relTol           0.01;
        smoother         GaussSeidel;
        nPreSweeps       0;
        nPostSweeps      2;
        cacheAgglomeration on;
        agglomerator     faceAreaPair;
        nCellsInCoarsestLevel 100;
        mergeLevels      1;

	minIter 	2;
    }

    pFinal
    {
        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-06;
        relTol          0;

	minIter		3;
    }

    "pcorr.*"
    {
        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-06;
        relTol          0.0;

	minIter			3;
    }

    U
    {
        solver          PBiCGStab;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
	minIter		3;
    }

/*
    U
    {
        type            coupled;
        solver          PBiCCCG;
        preconditioner  DILU;
        tolerance       (1e-08 1e-08 1e-08);
        relTol          (0 0 0);
    }
*/

    UFinal
    {

	$U;
        tolerance       1e-08;
        relTol          0;
	minIter		3;

/*
	$U;
        tolerance       (1e-08 1e-08 1e-08);
        relTol          (0 0 0);
*/
    }

    "cellDisplacement.*"
    {
/*
        solver          GAMG;
        tolerance       1e-06;
        relTol          0;
        smoother        GaussSeidel;
        cacheAgglomeration true;
        nCellsInCoarsestLevel 10;
        agglomerator    faceAreaPair;
        mergeLevels     1;
*/

        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-08;
        relTol          0;
	minIter		3;
    }
}

PIMPLE
{
	//If enable you will need to add UFinal
	momentumPredictor yes;

	consistent	yes;

	//If you set nOuterCorrectors to 1 is equivalent to piso    
        nOuterCorrectors 2;
	nCorrectors 3;
	nNonOrthogonalCorrectors 1;

	checkMeshCourantNo	yes;

}

relaxationFactors
{
    fields
    {
	".*"		0.9;	//0.7 crash in ESI - ORG OK
        //p               0.3;
    }
    equations
    {
	".*"		0.9;	//0.7 crash in ESI - ORG OK
        //U               0.7;
        //k               0.7;
        //omega           0.7;
    }
}

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