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

type basicMultiphaseSystem;

phases (air water solid);

air
{
    type            pureIsothermalPhaseModel;
    diameterModel   isothermal;
    isothermalCoeffs
    {
        d0              3e-3;
        p0              1e5;
    }

    residualAlpha   1e-6;
}

water
{
    type            pureIsothermalPhaseModel;
    diameterModel   constant;
    constantCoeffs
    {
        d               1e-4;
    }

    residualAlpha   1e-6;
}

solid
{
    type            pureStationaryIsothermalPhaseModel;
    diameterModel   constant;
    constantCoeffs
    {
        d               1e-3;
    }

    residualAlpha   1e-6;
}

blending
{
    default
    {
        type            none;
        continuousPhase none;
    }
}

surfaceTension
(
    (air and water)
    {
        type            constant;
        sigma           0.07;
    }

    (air and solid)
    {
        type            constant;
        sigma           0;
    }

    (solid and water)
    {
        type            constant;
        sigma           0;
    }
);

aspectRatio
(
    (air in water)
    {
        type            constant;
        E0              1.0;
    }

    (water in air)
    {
        type            constant;
        E0              1.0;
    }

    (air in solid)
    {
        type            constant;
        E0              1.0;
    }

    (solid in air)
    {
        type            constant;
        E0              1.0;
    }

    (water in solid)
    {
        type            constant;
        E0              1.0;
    }

    (solid in water)
    {
        type            constant;
        E0              1.0;
    }
);

drag
(
    (air and water)
    {
        type            AttouFerschneider;
        gas             air;
        liquid          water;
        solid           solid;
        E1              280;
        E2              4.8;
        swarmCorrection
        {
            type        none;
        }
    }

    (air and solid)
    {
        type            AttouFerschneider;
        gas             air;
        liquid          water;
        solid           solid;
        E1              280;
        E2              4.8;
        swarmCorrection
        {
            type        none;
        }
    }

    (water and solid)
    {
        type            AttouFerschneider;
        gas             air;
        liquid          water;
        solid           solid;
        E1              280;
        E2              4.8;
        swarmCorrection
        {
            type        none;
        }
    }
);

virtualMass
();

heatTransfer
();

phaseTransfer
();

lift
();

wallLubrication
();

turbulentDispersion
();

interfaceCompression
();

pMin            10000;

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