/*--------------------------------*- C++ -*----------------------------------*\
|                                                                             |
|                Generated by the CfdOF workbench for FreeCAD                 |
|                      https://github.com/jaheyns/CfdOF                       |
|                                                                             |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

PIMPLE
{
    correctMeshPhi  yes;
    nOuterCorrectors 1;
    nNonOrthogonalCorrectors 2;
    nCorrectors         3;
    outerCorrectorResidualControl
    {
        U
        {
            tolerance   0.001;
            relTol      0;
        }
        p
        {
            tolerance   0.001;
            relTol      0;
        }
        "(k|epsilon|omega|f|v2|nuTilda)"
        {
            tolerance   0.001;
            relTol      0;
        }
    }
    pRefValue   0;
    pRefCell    0;
}

potentialFlow
{
    nNonOrthogonalCorrectors 8;

    PhiRefValue 0;
    PhiRefCell 0;
}

solvers
{
    "(p|p_rgh|pcorr)"
    {
        solver           GAMG;
        tolerance        1e-8;
        relTol           0.01;
        smoother         symGaussSeidel;
        nPreSweeps       0;
        nPostSweeps      2;
        cacheAgglomeration on;
        agglomerator     faceAreaPair;
        nCellsInCoarsestLevel 10;
        mergeLevels      1;
        maxIter          20;
    }

    "(pFinal|p_rghFinal|pcorrFinal)"
    {
        $p;
        relTol          0;
    }
    MeshPhi
    {
        solver          smoothSolver;
        smoother        symGaussSeidel;
        tolerance       1e-2;
        relTol          0;
    }

    U
    {
        solver           smoothSolver;
        smoother         symGaussSeidel;
        tolerance        1e-8;
        relTol           0.1;
        nSweeps          1;
    }

    UFinal
    {
        $U;
        relTol           0;
    }

    Phi
    {
        solver           GAMG;
        tolerance        1e-7;
        relTol           0.01;
        smoother         GaussSeidel;
        nPreSweeps       0;
        nPostSweeps      2;
        cacheAgglomeration on;
        agglomerator     faceAreaPair;
        nCellsInCoarsestLevel 10;
        mergeLevels      1;
    }
}

relaxationFactors
{
    // Conservative settings to solve reliably on bad
    // meshes
    equations
    {
        U               0.7;
        UFinal          1;
    }
    fields
    {
        p               1;
    }
}

cache
{
    grad(U);
}

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