mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of ssh://dm/home/dm4/OpenFOAM/repositories/OpenFOAM-dev
This commit is contained in:
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2013 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2013-2014 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -26,7 +26,7 @@ Application
|
|||||||
|
|
||||||
Description
|
Description
|
||||||
Transient solver for the coupled transport of a single kinematic particle
|
Transient solver for the coupled transport of a single kinematic particle
|
||||||
could including the effect of the volume fraction of particles on the
|
cloud including the effect of the volume fraction of particles on the
|
||||||
continuous phase.
|
continuous phase.
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2013 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2013-2014 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -26,7 +26,7 @@ Application
|
|||||||
|
|
||||||
Description
|
Description
|
||||||
Transient solver for the coupled transport of a single kinematic particle
|
Transient solver for the coupled transport of a single kinematic particle
|
||||||
could including the effect of the volume fraction of particles on the
|
cloud including the effect of the volume fraction of particles on the
|
||||||
continuous phase. Multi-Phase Particle In Cell (MPPIC) modeling is used to
|
continuous phase. Multi-Phase Particle In Cell (MPPIC) modeling is used to
|
||||||
represent collisions without resolving particle-particle interactions.
|
represent collisions without resolving particle-particle interactions.
|
||||||
|
|
||||||
|
|||||||
@ -60,20 +60,16 @@ Foam::dragModels::Ergun::~Ergun()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::Ergun::Cd() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::Ergun::CdRe() const
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
(4/3)
|
(4/3)
|
||||||
*(
|
*(
|
||||||
150
|
150
|
||||||
*max(pair_.dispersed(), residualAlpha_)
|
*max(scalar(1) - pair_.continuous(), residualAlpha_)
|
||||||
*pair_.continuous().nu()
|
/max(pair_.continuous(), residualAlpha_)
|
||||||
/(
|
|
||||||
max(scalar(1) - pair_.dispersed(), residualAlpha_)
|
|
||||||
*pair_.dispersed().d()
|
|
||||||
*max(pair_.magUr(), residualSlip_)
|
|
||||||
)
|
|
||||||
+ 1.75
|
+ 1.75
|
||||||
|
*pair_.Re()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -82,7 +82,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -48,8 +48,7 @@ Foam::dragModels::Gibilaro::Gibilaro
|
|||||||
const bool registerObject
|
const bool registerObject
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
dragModel(dict, pair, registerObject),
|
dragModel(dict, pair, registerObject)
|
||||||
residualRe_("residualRe", dimless, dict.lookup("residualRe"))
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -61,13 +60,13 @@ Foam::dragModels::Gibilaro::~Gibilaro()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::Gibilaro::Cd() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::Gibilaro::CdRe() const
|
||||||
{
|
{
|
||||||
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
||||||
|
|
||||||
return
|
return
|
||||||
(4/3)
|
(4/3)
|
||||||
*(17.3/(alpha2*max(pair_.Re(), residualRe_)) + scalar(0.336))
|
*(17.3/alpha2 + 0.336*pair_.Re())
|
||||||
*max(pair_.continuous(), residualAlpha_)
|
*max(pair_.continuous(), residualAlpha_)
|
||||||
*pow(alpha2, -2.8);
|
*pow(alpha2, -2.8);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -58,14 +58,6 @@ class Gibilaro
|
|||||||
:
|
:
|
||||||
public dragModel
|
public dragModel
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
|
|
||||||
// Private data
|
|
||||||
|
|
||||||
//- Residual Reynolds number
|
|
||||||
const dimensionedScalar residualRe_;
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
//- Runtime type information
|
//- Runtime type information
|
||||||
@ -90,7 +82,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -68,8 +68,7 @@ Foam::dragModels::GidaspowErgunWenYu::GidaspowErgunWenYu
|
|||||||
pair,
|
pair,
|
||||||
false
|
false
|
||||||
)
|
)
|
||||||
),
|
)
|
||||||
residualRe_("residualRe", dimless, dict.lookup("residualRe"))
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -82,11 +81,11 @@ Foam::dragModels::GidaspowErgunWenYu::~GidaspowErgunWenYu()
|
|||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField>
|
Foam::tmp<Foam::volScalarField>
|
||||||
Foam::dragModels::GidaspowErgunWenYu::Cd() const
|
Foam::dragModels::GidaspowErgunWenYu::CdRe() const
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
pos(pair_.continuous() - 0.8)*WenYu_->Cd()
|
pos(pair_.continuous() - 0.8)*WenYu_->CdRe()
|
||||||
+ neg(pair_.continuous() - 0.8)*Ergun_->Cd();
|
+ neg(pair_.continuous() - 0.8)*Ergun_->CdRe();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -69,9 +69,6 @@ private:
|
|||||||
//- Wen Yu drag model
|
//- Wen Yu drag model
|
||||||
autoPtr<WenYu> WenYu_;
|
autoPtr<WenYu> WenYu_;
|
||||||
|
|
||||||
//- Residual Reynolds number
|
|
||||||
const dimensionedScalar residualRe_;
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
@ -97,7 +94,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -62,18 +62,18 @@ Foam::dragModels::GidaspowSchillerNaumann::~GidaspowSchillerNaumann()
|
|||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField>
|
Foam::tmp<Foam::volScalarField>
|
||||||
Foam::dragModels::GidaspowSchillerNaumann::Cd() const
|
Foam::dragModels::GidaspowSchillerNaumann::CdRe() const
|
||||||
{
|
{
|
||||||
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
||||||
volScalarField Re(max(alpha2*pair_.Re(), residualRe_));
|
volScalarField Re(alpha2*pair_.Re());
|
||||||
volScalarField Cds
|
volScalarField CdsRe
|
||||||
(
|
(
|
||||||
neg(Re - 1000)*(24.0*(1.0 + 0.15*pow(Re, 0.687))/Re)
|
neg(Re - 1000)*24.0*(1.0 + 0.15*pow(Re, 0.687))/alpha2
|
||||||
+ pos(Re - 1000)*0.44
|
+ pos(Re - 1000)*0.44*max(Re, residualRe_)
|
||||||
);
|
);
|
||||||
|
|
||||||
return
|
return
|
||||||
Cds
|
CdsRe
|
||||||
*pow(alpha2, -2.65)
|
*pow(alpha2, -2.65)
|
||||||
*max(pair_.continuous(), residualAlpha_);
|
*max(pair_.continuous(), residualAlpha_);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -69,7 +69,7 @@ private:
|
|||||||
|
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Residual Reynolds number
|
//- Residual Reynolds Number
|
||||||
const dimensionedScalar residualRe_;
|
const dimensionedScalar residualRe_;
|
||||||
|
|
||||||
|
|
||||||
@ -97,7 +97,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -61,13 +61,13 @@ Foam::dragModels::SchillerNaumann::~SchillerNaumann()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::SchillerNaumann::Cd() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::SchillerNaumann::CdRe() const
|
||||||
{
|
{
|
||||||
volScalarField Re(pair_.Re() + residualRe_);
|
volScalarField Re(pair_.Re());
|
||||||
|
|
||||||
return
|
return
|
||||||
neg(Re - 1000)*(24.0*(1.0 + 0.15*pow(Re, 0.687))/Re)
|
neg(Re - 1000)*24.0*(1.0 + 0.15*pow(Re, 0.687))
|
||||||
+ pos(Re - 1000)*0.44;
|
+ pos(Re - 1000)*0.44*max(Re, residualRe_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -58,7 +58,7 @@ private:
|
|||||||
|
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Residual Reynolds number
|
//- Residual Reynolds Number
|
||||||
const dimensionedScalar residualRe_;
|
const dimensionedScalar residualRe_;
|
||||||
|
|
||||||
|
|
||||||
@ -86,7 +86,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -48,8 +48,7 @@ Foam::dragModels::SyamlalOBrien::SyamlalOBrien
|
|||||||
const bool registerObject
|
const bool registerObject
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
dragModel(dict, pair, registerObject),
|
dragModel(dict, pair, registerObject)
|
||||||
residualRe_("residualRe", dimless, dict.lookup("residualRe"))
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -61,17 +60,16 @@ Foam::dragModels::SyamlalOBrien::~SyamlalOBrien()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::SyamlalOBrien::Cd() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::SyamlalOBrien::CdRe() const
|
||||||
{
|
{
|
||||||
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
||||||
volScalarField magUr(max(pair_.magUr(), residualSlip_));
|
|
||||||
volScalarField A(pow(alpha2, 4.14));
|
volScalarField A(pow(alpha2, 4.14));
|
||||||
volScalarField B
|
volScalarField B
|
||||||
(
|
(
|
||||||
neg(alpha2 - 0.85)*(0.8*pow(alpha2, 1.28))
|
neg(alpha2 - 0.85)*(0.8*pow(alpha2, 1.28))
|
||||||
+ pos(alpha2 - 0.85)*(pow(alpha2, 2.65))
|
+ pos(alpha2 - 0.85)*(pow(alpha2, 2.65))
|
||||||
);
|
);
|
||||||
volScalarField Re(max(pair_.Re(), residualRe_));
|
volScalarField Re(pair_.Re());
|
||||||
volScalarField Vr
|
volScalarField Vr
|
||||||
(
|
(
|
||||||
0.5
|
0.5
|
||||||
@ -79,10 +77,10 @@ Foam::tmp<Foam::volScalarField> Foam::dragModels::SyamlalOBrien::Cd() const
|
|||||||
A - 0.06*Re + sqrt(sqr(0.06*Re) + 0.12*Re*(2.0*B - A) + sqr(A))
|
A - 0.06*Re + sqrt(sqr(0.06*Re) + 0.12*Re*(2.0*B - A) + sqr(A))
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
volScalarField Cds(sqr(0.63 + 4.8*sqrt(Vr/Re)));
|
volScalarField CdsRe(sqr(0.63*sqrt(Re) + 4.8*sqrt(Vr)));
|
||||||
|
|
||||||
return
|
return
|
||||||
Cds
|
CdsRe
|
||||||
*max(pair_.continuous(), residualAlpha_)
|
*max(pair_.continuous(), residualAlpha_)
|
||||||
/sqr(Vr);
|
/sqr(Vr);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -57,14 +57,6 @@ class SyamlalOBrien
|
|||||||
:
|
:
|
||||||
public dragModel
|
public dragModel
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
|
|
||||||
// Private data
|
|
||||||
|
|
||||||
//- Residual Reynolds number
|
|
||||||
const dimensionedScalar residualRe_;
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
//- Runtime type information
|
//- Runtime type information
|
||||||
@ -89,7 +81,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -49,6 +49,7 @@ Foam::dragModels::TomiyamaAnalytic::TomiyamaAnalytic
|
|||||||
)
|
)
|
||||||
:
|
:
|
||||||
dragModel(dict, pair, registerObject),
|
dragModel(dict, pair, registerObject),
|
||||||
|
residualRe_("residualRe", dimless, dict.lookup("residualRe")),
|
||||||
residualEo_("residualEo", dimless, dict.lookup("residualEo")),
|
residualEo_("residualEo", dimless, dict.lookup("residualEo")),
|
||||||
residualE_("residualE", dimless, dict.lookup("residualE"))
|
residualE_("residualE", dimless, dict.lookup("residualE"))
|
||||||
{}
|
{}
|
||||||
@ -62,7 +63,8 @@ Foam::dragModels::TomiyamaAnalytic::~TomiyamaAnalytic()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::TomiyamaAnalytic::Cd() const
|
Foam::tmp<Foam::volScalarField>
|
||||||
|
Foam::dragModels::TomiyamaAnalytic::CdRe() const
|
||||||
{
|
{
|
||||||
volScalarField Eo(max(pair_.Eo(), residualEo_));
|
volScalarField Eo(max(pair_.Eo(), residualEo_));
|
||||||
volScalarField E(max(pair_.E(), residualE_));
|
volScalarField E(max(pair_.E(), residualE_));
|
||||||
@ -73,12 +75,14 @@ Foam::tmp<Foam::volScalarField> Foam::dragModels::TomiyamaAnalytic::Cd() const
|
|||||||
volScalarField F((asin(rtOmEsq) - E*rtOmEsq)/OmEsq);
|
volScalarField F((asin(rtOmEsq) - E*rtOmEsq)/OmEsq);
|
||||||
|
|
||||||
return
|
return
|
||||||
(8.0/3.0)*Eo
|
(8.0/3.0)
|
||||||
|
*Eo
|
||||||
/(
|
/(
|
||||||
Eo*pow(E, 2.0/3.0)/OmEsq
|
Eo*pow(E, 2.0/3.0)/OmEsq
|
||||||
+ 16*pow(E, 0.75)
|
+ 16*pow(E, 0.75)
|
||||||
)
|
)
|
||||||
/sqr(F);
|
/sqr(F)
|
||||||
|
*max(pair_.Re(), residualRe_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -68,6 +68,9 @@ private:
|
|||||||
|
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
|
//- Residual Reynolds Number
|
||||||
|
const dimensionedScalar residualRe_;
|
||||||
|
|
||||||
//- Residual Eotvos number
|
//- Residual Eotvos number
|
||||||
const dimensionedScalar residualEo_;
|
const dimensionedScalar residualEo_;
|
||||||
|
|
||||||
@ -99,7 +102,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
// Drag coefficient
|
// Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -49,7 +49,6 @@ Foam::dragModels::TomiyamaCorrelated::TomiyamaCorrelated
|
|||||||
)
|
)
|
||||||
:
|
:
|
||||||
dragModel(dict, pair, registerObject),
|
dragModel(dict, pair, registerObject),
|
||||||
residualRe_("residualRe", dimless, dict.lookup("residualRe")),
|
|
||||||
A_("A", dimless, dict.lookup("A"))
|
A_("A", dimless, dict.lookup("A"))
|
||||||
{}
|
{}
|
||||||
|
|
||||||
@ -63,21 +62,21 @@ Foam::dragModels::TomiyamaCorrelated::~TomiyamaCorrelated()
|
|||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField>
|
Foam::tmp<Foam::volScalarField>
|
||||||
Foam::dragModels::TomiyamaCorrelated::Cd() const
|
Foam::dragModels::TomiyamaCorrelated::CdRe() const
|
||||||
{
|
{
|
||||||
volScalarField Re(pair_.Re() + residualRe_);
|
volScalarField Re(pair_.Re());
|
||||||
volScalarField Eo(pair_.Eo());
|
volScalarField Eo(pair_.Eo());
|
||||||
|
|
||||||
return
|
return
|
||||||
max
|
max
|
||||||
(
|
(
|
||||||
A_/Re
|
A_
|
||||||
*min
|
*min
|
||||||
(
|
(
|
||||||
(1 + 0.15*pow(Re, 0.687)),
|
(1 + 0.15*pow(Re, 0.687)),
|
||||||
scalar(3)
|
scalar(3)
|
||||||
),
|
),
|
||||||
8*Eo/(3*Eo + 12)
|
8*Eo*Re/(3*Eo + 12)
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -68,9 +68,6 @@ private:
|
|||||||
|
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Residual Reynolds number
|
|
||||||
const dimensionedScalar residualRe_;
|
|
||||||
|
|
||||||
//- Coefficient
|
//- Coefficient
|
||||||
const dimensionedScalar A_;
|
const dimensionedScalar A_;
|
||||||
|
|
||||||
@ -99,7 +96,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -61,18 +61,18 @@ Foam::dragModels::WenYu::~WenYu()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::WenYu::Cd() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::WenYu::CdRe() const
|
||||||
{
|
{
|
||||||
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
volScalarField alpha2(max(scalar(1) - pair_.dispersed(), residualAlpha_));
|
||||||
volScalarField Re(max(pair_.Re(), residualRe_));
|
volScalarField Re(pair_.Re());
|
||||||
volScalarField Cds
|
volScalarField CdsRe
|
||||||
(
|
(
|
||||||
neg(Re - 1000)*(24.0*(1.0 + 0.15*pow(Re, 0.687))/Re)
|
neg(Re - 1000)*24.0*(1.0 + 0.15*pow(Re, 0.687))
|
||||||
+ pos(Re - 1000)*0.44
|
+ pos(Re - 1000)*0.44*max(Re, residualRe_)
|
||||||
);
|
);
|
||||||
|
|
||||||
return
|
return
|
||||||
Cds
|
CdsRe
|
||||||
*pow(alpha2, -2.65)
|
*pow(alpha2, -2.65)
|
||||||
*max(pair_.continuous(), residualAlpha_);
|
*max(pair_.continuous(), residualAlpha_);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -72,7 +72,7 @@ private:
|
|||||||
|
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Residual Reynolds number
|
//- Residual Reynolds Number
|
||||||
const dimensionedScalar residualRe_;
|
const dimensionedScalar residualRe_;
|
||||||
|
|
||||||
|
|
||||||
@ -100,7 +100,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -90,8 +90,7 @@ Foam::dragModel::dragModel
|
|||||||
pair
|
pair
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
residualAlpha_("residualAlpha", dimless, dict.lookup("residualAlpha")),
|
residualAlpha_("residualAlpha", dimless, dict.lookup("residualAlpha"))
|
||||||
residualSlip_("residualSlip", dimVelocity, dict.lookup("residualSlip"))
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -107,14 +106,14 @@ Foam::tmp<Foam::volScalarField> Foam::dragModel::K() const
|
|||||||
{
|
{
|
||||||
return
|
return
|
||||||
0.75
|
0.75
|
||||||
*Cd()
|
*CdRe()
|
||||||
*swarmCorrection_->Cs()
|
*swarmCorrection_->Cs()
|
||||||
*pair_.continuous().rho()
|
*pair_.continuous().rho()
|
||||||
|
*pair_.continuous().nu()
|
||||||
/(
|
/(
|
||||||
max(pair_.continuous(), residualAlpha_)
|
max(pair_.continuous(), residualAlpha_)
|
||||||
*pair_.dispersed().d()
|
*sqr(pair_.dispersed().d())
|
||||||
)
|
);
|
||||||
*max(pair_.magUr(), residualSlip_);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -68,9 +68,6 @@ protected:
|
|||||||
//- Residual phase fraction
|
//- Residual phase fraction
|
||||||
const dimensionedScalar residualAlpha_;
|
const dimensionedScalar residualAlpha_;
|
||||||
|
|
||||||
//- Residual slip velocity
|
|
||||||
const dimensionedScalar residualSlip_;
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
@ -134,7 +131,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const = 0;
|
virtual tmp<volScalarField> CdRe() const = 0;
|
||||||
|
|
||||||
//- The drag function K used in the momentum equation
|
//- The drag function K used in the momentum equation
|
||||||
// ddt(alpha1*rho1*U1) + ... = ... alpha1*alpha2*K*(U1-U2)
|
// ddt(alpha1*rho1*U1) + ... = ... alpha1*alpha2*K*(U1-U2)
|
||||||
|
|||||||
@ -60,7 +60,7 @@ Foam::dragModels::noDrag::~noDrag()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::noDrag::Cd() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::noDrag::CdRe() const
|
||||||
{
|
{
|
||||||
const fvMesh& mesh(this->pair_.phase1().mesh());
|
const fvMesh& mesh(this->pair_.phase1().mesh());
|
||||||
|
|
||||||
@ -84,7 +84,7 @@ Foam::tmp<Foam::volScalarField> Foam::dragModels::noDrag::Cd() const
|
|||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::noDrag::K() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::noDrag::K() const
|
||||||
{
|
{
|
||||||
return Cd()*dimensionedScalar("zero", dimensionSet(1, -3, -1, 0, 0), 0);
|
return CdRe()*dimensionedScalar("zero", dimensionSet(1, -3, -1, 0, 0), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -78,7 +78,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
|
|
||||||
//- The drag function used in the momentum equation
|
//- The drag function used in the momentum equation
|
||||||
virtual tmp<volScalarField> K() const;
|
virtual tmp<volScalarField> K() const;
|
||||||
|
|||||||
@ -50,7 +50,6 @@ Foam::dragModels::segregated::segregated
|
|||||||
)
|
)
|
||||||
:
|
:
|
||||||
dragModel(dict, pair, registerObject),
|
dragModel(dict, pair, registerObject),
|
||||||
residualRe_("residualRe", dimless, dict.lookup("residualRe")),
|
|
||||||
m_("m", dimless, dict.lookup("m")),
|
m_("m", dimless, dict.lookup("m")),
|
||||||
n_("n", dimless, dict.lookup("n"))
|
n_("n", dimless, dict.lookup("n"))
|
||||||
{}
|
{}
|
||||||
@ -64,9 +63,9 @@ Foam::dragModels::segregated::~segregated()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::dragModels::segregated::Cd() const
|
Foam::tmp<Foam::volScalarField> Foam::dragModels::segregated::CdRe() const
|
||||||
{
|
{
|
||||||
FatalErrorIn("Foam::dragModels::segregated::Cd() const")
|
FatalErrorIn("Foam::dragModels::segregated::CdRe() const")
|
||||||
<< "Not implemented."
|
<< "Not implemented."
|
||||||
<< "Drag coefficient not defined for the segregated model."
|
<< "Drag coefficient not defined for the segregated model."
|
||||||
<< exit(FatalError);
|
<< exit(FatalError);
|
||||||
@ -137,16 +136,12 @@ Foam::tmp<Foam::volScalarField> Foam::dragModels::segregated::K() const
|
|||||||
|
|
||||||
volScalarField ReI
|
volScalarField ReI
|
||||||
(
|
(
|
||||||
max
|
pair_.rho()
|
||||||
(
|
*pair_.magUr()
|
||||||
pair_.rho()
|
/(
|
||||||
*pair_.magUr()
|
magGradI
|
||||||
/(
|
*max(alpha1*alpha2, sqr(residualAlpha_))
|
||||||
magGradI
|
*muI
|
||||||
*max(alpha1*alpha2, sqr(residualAlpha_))
|
|
||||||
*muI
|
|
||||||
),
|
|
||||||
residualRe_
|
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -66,9 +66,6 @@ private:
|
|||||||
|
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Residual reynolds number
|
|
||||||
const dimensionedScalar residualRe_;
|
|
||||||
|
|
||||||
//- M coefficient
|
//- M coefficient
|
||||||
const dimensionedScalar m_;
|
const dimensionedScalar m_;
|
||||||
|
|
||||||
@ -100,7 +97,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Drag coefficient
|
//- Drag coefficient
|
||||||
virtual tmp<volScalarField> Cd() const;
|
virtual tmp<volScalarField> CdRe() const;
|
||||||
|
|
||||||
//- The drag function used in the momentum equation
|
//- The drag function used in the momentum equation
|
||||||
virtual tmp<volScalarField> K() const;
|
virtual tmp<volScalarField> K() const;
|
||||||
|
|||||||
@ -47,8 +47,7 @@ Foam::heatTransferModels::RanzMarshall::RanzMarshall
|
|||||||
const phasePair& pair
|
const phasePair& pair
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
heatTransferModel(dict, pair),
|
heatTransferModel(dict, pair)
|
||||||
residualRe_("residualRe", dimless, dict.lookup("residualRe"))
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -63,8 +62,7 @@ Foam::heatTransferModels::RanzMarshall::~RanzMarshall()
|
|||||||
Foam::tmp<Foam::volScalarField>
|
Foam::tmp<Foam::volScalarField>
|
||||||
Foam::heatTransferModels::RanzMarshall::K() const
|
Foam::heatTransferModels::RanzMarshall::K() const
|
||||||
{
|
{
|
||||||
volScalarField Re(pair_.Re() + residualRe_);
|
volScalarField Nu(scalar(2) + 0.6*pair_.Re()*cbrt(pair_.Pr()));
|
||||||
volScalarField Nu(scalar(2) + 0.6*sqrt(Re)*cbrt(pair_.Pr()));
|
|
||||||
|
|
||||||
return 6.0*pair_.continuous().kappa()*Nu/sqr(pair_.dispersed().d());
|
return 6.0*pair_.continuous().kappa()*Nu/sqr(pair_.dispersed().d());
|
||||||
}
|
}
|
||||||
|
|||||||
@ -54,14 +54,6 @@ class RanzMarshall
|
|||||||
:
|
:
|
||||||
public heatTransferModel
|
public heatTransferModel
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
|
|
||||||
// Private data
|
|
||||||
|
|
||||||
//- Residual Reynolds number
|
|
||||||
const dimensionedScalar residualRe_;
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
//- Runtime type information
|
//- Runtime type information
|
||||||
|
|||||||
@ -84,12 +84,12 @@ Foam::turbulentDispersionModels::Gosman::F() const
|
|||||||
|
|
||||||
return
|
return
|
||||||
- 0.75
|
- 0.75
|
||||||
*drag.Cd()
|
*drag.CdRe()
|
||||||
|
*pair_.continuous().nu()
|
||||||
*pair_.continuous().turbulence().nut()
|
*pair_.continuous().turbulence().nut()
|
||||||
*pair_.magUr()
|
|
||||||
/(
|
/(
|
||||||
sigma_
|
sigma_
|
||||||
*pair_.dispersed().d()
|
*sqr(pair_.dispersed().d())
|
||||||
)
|
)
|
||||||
*pair_.continuous().rho()
|
*pair_.continuous().rho()
|
||||||
*fvc::grad(pair_.dispersed());
|
*fvc::grad(pair_.dispersed());
|
||||||
|
|||||||
@ -75,7 +75,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -87,7 +86,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -99,8 +97,6 @@ drag
|
|||||||
{
|
{
|
||||||
type segregated;
|
type segregated;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
|
||||||
m 0.5;
|
m 0.5;
|
||||||
n 8;
|
n 8;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
@ -130,13 +126,11 @@ heatTransfer
|
|||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -75,7 +75,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -87,7 +86,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -99,8 +97,6 @@ drag
|
|||||||
{
|
{
|
||||||
type segregated;
|
type segregated;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
|
||||||
m 0.5;
|
m 0.5;
|
||||||
n 8;
|
n 8;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
@ -130,13 +126,11 @@ heatTransfer
|
|||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -40,7 +40,7 @@ blending
|
|||||||
default
|
default
|
||||||
{
|
{
|
||||||
type none;
|
type none;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-3;
|
||||||
continuousPhase air;
|
continuousPhase air;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -60,7 +60,6 @@ drag
|
|||||||
{
|
{
|
||||||
type GidaspowErgunWenYu;
|
type GidaspowErgunWenYu;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -74,7 +73,7 @@ virtualMass
|
|||||||
(particles in air)
|
(particles in air)
|
||||||
{
|
{
|
||||||
type constantCoefficient;
|
type constantCoefficient;
|
||||||
Cvm 0.5;
|
Cvm 0;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -83,7 +82,6 @@ heatTransfer
|
|||||||
(particles in air)
|
(particles in air)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -75,7 +75,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -87,7 +86,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -99,8 +97,6 @@ drag
|
|||||||
{
|
{
|
||||||
type segregated;
|
type segregated;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
|
||||||
m 0.5;
|
m 0.5;
|
||||||
n 8;
|
n 8;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
@ -130,13 +126,11 @@ heatTransfer
|
|||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -75,7 +75,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -87,7 +86,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -99,8 +97,6 @@ drag
|
|||||||
{
|
{
|
||||||
type segregated;
|
type segregated;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
|
||||||
m 0.5;
|
m 0.5;
|
||||||
n 8;
|
n 8;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
@ -130,13 +126,11 @@ heatTransfer
|
|||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -40,7 +40,7 @@ blending
|
|||||||
default
|
default
|
||||||
{
|
{
|
||||||
type none;
|
type none;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-3;
|
||||||
continuousPhase air;
|
continuousPhase air;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -60,7 +60,6 @@ drag
|
|||||||
{
|
{
|
||||||
type GidaspowErgunWenYu;
|
type GidaspowErgunWenYu;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -83,7 +82,6 @@ heatTransfer
|
|||||||
(particles in air)
|
(particles in air)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -75,7 +75,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -87,7 +86,6 @@ drag
|
|||||||
{
|
{
|
||||||
type SchillerNaumann;
|
type SchillerNaumann;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
{
|
{
|
||||||
@ -99,8 +97,6 @@ drag
|
|||||||
{
|
{
|
||||||
type segregated;
|
type segregated;
|
||||||
residualAlpha 1e-6;
|
residualAlpha 1e-6;
|
||||||
residualSlip 1e-3;
|
|
||||||
residualRe 1e-3;
|
|
||||||
m 0.5;
|
m 0.5;
|
||||||
n 8;
|
n 8;
|
||||||
swarmCorrection
|
swarmCorrection
|
||||||
@ -130,13 +126,11 @@ heatTransfer
|
|||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user