*EulerFoam/interfacialModels/dragModels/IshiiZuber: Set constants to correspond to original paper

"Drag Coefficient and relative velocity in bubbly, droplet and
         particulate flows",
        Ishii, M., Zuber, N.,
        AIChE Journal 5, Vol. 25, 1979, pp. 843-855.
This commit is contained in:
Henry Weller
2018-06-14 20:09:58 +01:00
parent ee6a53adee
commit 4a46fab1ba
2 changed files with 25 additions and 27 deletions

View File

@ -63,33 +63,32 @@ Foam::dragModels::IshiiZuber::~IshiiZuber()
Foam::tmp<Foam::volScalarField>
Foam::dragModels::IshiiZuber::CdRe() const
{
volScalarField Re(pair_.Re());
volScalarField Eo(pair_.Eo());
const volScalarField Re(pair_.Re());
const volScalarField Eo(pair_.Eo());
volScalarField mud(pair_.dispersed().mu());
volScalarField muc(pair_.continuous().mu());
const volScalarField mud(pair_.dispersed().mu());
const volScalarField muc(pair_.continuous().mu());
volScalarField muStar((mud + 0.4*muc)/(mud + muc));
const volScalarField muStar((mud + 0.4*muc)/(mud + muc));
volScalarField muMix
const volScalarField muMix
(
muc
*pow(max(1 - pair_.dispersed(), scalar(1e-3)), -2.5*muStar)
muc*pow(max(1 - pair_.dispersed(), scalar(1e-3)), -2.5*muStar)
);
volScalarField ReM(Re*muc/muMix);
volScalarField CdRe
const volScalarField ReM(Re*muc/muMix);
const volScalarField CdRe
(
pos0(1000 - ReM)*24*(scalar(1) + 0.15*pow(ReM, 0.687))
pos0(1000 - ReM)*24*(scalar(1) + 0.1*pow(ReM, 0.75))
+ neg(1000 - ReM)*0.44*ReM
);
volScalarField F((muc/muMix)*sqrt(1 - pair_.dispersed()));
F.max(1e-3);
volScalarField Ealpha((1 + 17.67*pow(F, 0.8571428))/(18.67*F));
const volScalarField Ealpha((1 + 17.67*pow(F, 0.8571428))/(18.67*F));
volScalarField CdReEllipse(Ealpha*0.6666*sqrt(Eo)*Re);
const volScalarField CdReEllipse(Ealpha*0.6666*sqrt(Eo)*Re);
return
pos0(CdReEllipse - CdRe)

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2014-2017 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -63,33 +63,32 @@ Foam::dragModels::IshiiZuber::~IshiiZuber()
Foam::tmp<Foam::volScalarField>
Foam::dragModels::IshiiZuber::CdRe() const
{
volScalarField Re(pair_.Re());
volScalarField Eo(pair_.Eo());
const volScalarField Re(pair_.Re());
const volScalarField Eo(pair_.Eo());
volScalarField mud(pair_.dispersed().mu());
volScalarField muc(pair_.continuous().mu());
const volScalarField mud(pair_.dispersed().mu());
const volScalarField muc(pair_.continuous().mu());
volScalarField muStar((mud + 0.4*muc)/(mud + muc));
const volScalarField muStar((mud + 0.4*muc)/(mud + muc));
volScalarField muMix
const volScalarField muMix
(
muc
*pow(max(1 - pair_.dispersed(), scalar(1e-3)), -2.5*muStar)
muc*pow(max(1 - pair_.dispersed(), scalar(1e-3)), -2.5*muStar)
);
volScalarField ReM(Re*muc/muMix);
volScalarField CdRe
const volScalarField ReM(Re*muc/muMix);
const volScalarField CdRe
(
pos0(1000 - ReM)*24.0*(scalar(1) + 0.15*pow(ReM, 0.687))
pos0(1000 - ReM)*24*(scalar(1) + 0.1*pow(ReM, 0.75))
+ neg(1000 - ReM)*0.44*ReM
);
volScalarField F((muc/muMix)*sqrt(1 - pair_.dispersed()));
F.max(1e-3);
volScalarField Ealpha((1 + 17.67*pow(F, 0.8571428))/(18.67*F));
const volScalarField Ealpha((1 + 17.67*pow(F, 0.8571428))/(18.67*F));
volScalarField CdReEllipse(Ealpha*0.6666*sqrt(Eo)*Re);
const volScalarField CdReEllipse(Ealpha*0.6666*sqrt(Eo)*Re);
return
pos0(CdReEllipse - CdRe)