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

ddtSchemes
{
    default         Euler;
}

gradSchemes
{
    default         Gauss linear;
}

divSchemes
{
    div(rhoPhi,U)  Gauss linearUpwind grad(U);
    div(phi,alpha)  Gauss vanLeer;  
//    div(phi,alpha)  Gauss upwind;
//    div(phirb,alpha) Gauss linear;
//    div(laphir,dAlpha) Gauss linear;
    div(phirb,alpha) Gauss upwind;
    div(laphir,dAlpha) Gauss upwind;
    div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
    // new schemes due to interSensFoam: 
//    div(dPhi,alpha)  Gauss upwind;   //dAlphaEqn
div(dPhi,alpha)  Gauss vanLeer;   //dAlphaEqn
//    div(phi,dAlpha)  Gauss upwind;   //dAlphaEqn
//    div(laMULES*phi,dAlpha) Gauss vanLeer;
    div((alphaPhi0.water*phi),dAlpha) Gauss vanLeer;
//    div((alphaPhi0.water*phi),dAlpha) Gauss upwind;
//    div((mu*T(grad(dU))))  Gauss linear;   
//    div((dAlpha*T(grad(U))))  Gauss linear;
//    div((dAlpha*grad(U)))  Gauss linear;
    div(rhoPhi,dU)  Gauss linearUpwind grad(dU);   //dUEqn
    div(rhoDPhi,U)  Gauss linearUpwind grad(U);    //dUEqn
    div(rhoPhiplus,U)  Gauss linearUpwind grad(U);    //dUEqn
    div(rhoPhiminus,U)  Gauss linearUpwind grad(U);    //dUEqn
    div((interpolate(dAlpha)*phi),U)  Gauss linearUpwind grad(U);    //dUEqn
//    div((alpha.water*(grad(U)+T(grad(U)))))  Gauss linear;
//    div((((dAlpha*rho)*nuEff)*dev2(T(grad(U)))))  Gauss linear;
//    div(((((alpha.water*gradRho)*dAlpha)*nuEff)*dev2(T(grad(U)))))  Gauss linear;
    div(((rho*nuEff)*dev2(T(grad(dU)))))  Gauss linear;
//    div((((gradRho*dAlpha)*nuEff)*dev2(T(grad(U)))))  Gauss linear;
//    div(((gradMu*dAlpha)*dev2(T(grad(U)))))  Gauss linear;    //dUEqn
//    div(dAlphaPhi,U)  Gauss linear;
    div((alpha.water*dev2(T(grad(U)))))  Gauss linear;    //dUEqn
    div((dAlpha*dev2(T(grad(U)))))  Gauss linear;    //dUEqn
    div(((interpolate(dAlpha)*phi)+(interpolate(alpha.water)*phi)),U)  Gauss linear;    //dUEqn
}

laplacianSchemes
{
    default         Gauss linear corrected;
}

interpolationSchemes
{
    default         linear;
}

snGradSchemes
{
    default         corrected;
}

fluxRequired   //new
{
    default         no;
//    dAlpha;
//    dP_rgh;
}

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