OpenFOAM
10
The OpenFOAM Foundation
IshiiZuber.C
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration | Website: https://openfoam.org
5
\\ / A nd | Copyright (C) 2014-2022 OpenFOAM Foundation
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
License
9
This file is part of OpenFOAM.
10
11
OpenFOAM is free software: you can redistribute it and/or modify it
12
under the terms of the GNU General Public License as published by
13
the Free Software Foundation, either version 3 of the License, or
14
(at your option) any later version.
15
16
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19
for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23
24
\*---------------------------------------------------------------------------*/
25
26
#include "
IshiiZuber.H
"
27
#include "
addToRunTimeSelectionTable.H
"
28
29
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
30
31
namespace
Foam
32
{
33
namespace
dragModels
34
{
35
defineTypeNameAndDebug
(IshiiZuber, 0);
36
addToRunTimeSelectionTable
(dragModel, IshiiZuber, dictionary);
37
}
38
}
39
40
41
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
42
43
Foam::dragModels::IshiiZuber::IshiiZuber
44
(
45
const
dictionary&
dict
,
46
const
phaseInterface& interface,
47
const
bool
registerObject
48
)
49
:
50
dispersedDragModel(dict, interface, registerObject)
51
{}
52
53
54
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
55
56
Foam::dragModels::IshiiZuber::~IshiiZuber
()
57
{}
58
59
60
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
61
62
Foam::tmp<Foam::volScalarField>
63
Foam::dragModels::IshiiZuber::CdRe
()
const
64
{
65
const
volScalarField
Re
(
interface_
.
Re
());
66
const
volScalarField
Eo(
interface_
.
Eo
());
67
68
const
volScalarField
mud(
interface_
.
dispersed
().
thermo
().
mu
());
69
const
volScalarField
muc
(
interface_
.
continuous
().
thermo
().
mu
());
70
71
const
volScalarField
muStar((mud + 0.4*
muc
)/(mud +
muc
));
72
73
const
volScalarField
muMix
74
(
75
muc
*
pow
(
max
(1 -
interface_
.
dispersed
(), scalar(1
e
-3)), -2.5*muStar)
76
);
77
78
const
volScalarField
ReM(
Re
*
muc
/muMix);
79
const
volScalarField
CdRe
80
(
81
pos0
(1000 - ReM)*24*(1 + 0.1*
pow
(ReM, 0.75))
82
+
neg
(1000 - ReM)*0.44*ReM
83
);
84
85
volScalarField
F
((
muc
/muMix)*
sqrt
(1 -
interface_
.
dispersed
()));
86
F
.max(1
e
-3);
87
88
const
volScalarField
Ealpha((1 + 17.67*
pow
(
F
, 0.8571428))/(18.67*
F
));
89
90
const
volScalarField
CdReEllipse(Ealpha*0.6666*
sqrt
(Eo)*
Re
);
91
92
return
93
pos0
(CdReEllipse -
CdRe
)
94
*
min
(CdReEllipse,
Re
*
sqr
(1 -
interface_
.
dispersed
())*2.66667)
95
+
neg
(CdReEllipse -
CdRe
)*
CdRe
;
96
}
97
98
99
// ************************************************************************* //
dict
dictionary dict
Definition:
searchingEngine.H:14
Foam::max
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
Definition:
fvMeshStitchersMoving.C:102
Foam::constant::physicoChemical::F
const dimensionedScalar F
Faraday constant: default SI units: [C/mol].
Foam::dragModels::IshiiZuber::~IshiiZuber
virtual ~IshiiZuber()
Destructor.
muc
volScalarField muc(IOobject(IOobject::groupName("mu", continuousPhaseName), runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), rhoc *continuousPhaseViscosity->nu())
Foam::sqr
dimensionedSymmTensor sqr(const dimensionedVector &dv)
Definition:
dimensionedSymmTensor.C:49
Foam::sqrt
dimensionedScalar sqrt(const dimensionedScalar &ds)
Definition:
dimensionedScalar.C:142
Foam::neg
dimensionedScalar neg(const dimensionedScalar &ds)
Definition:
dimensionedScalar.C:212
addToRunTimeSelectionTable.H
Macros for easy insertion into run-time selection tables.
Foam::dragModels::IshiiZuber::CdRe
virtual tmp< volScalarField > CdRe() const
Drag coefficient.
Foam::volScalarField
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Definition:
volFieldsFwd.H:58
Foam::dispersedPhaseInterface::Eo
tmp< volScalarField > Eo() const
Eotvos number.
Foam::phaseModel::thermo
const rhoThermo & thermo() const
Return const-access to phase rhoThermo.
Definition:
phaseModel.H:121
Foam::dragModels::IshiiZuber::IshiiZuber
IshiiZuber(const dictionary &dict, const phaseInterface &interface, const bool registerObject)
Construct from a dictionary and an interface.
IshiiZuber.H
Foam::dispersedPhaseInterface::continuous
const phaseModel & continuous() const
Continuous phase.
Foam::min
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
Definition:
fvMeshStitchersMoving.C:108
Foam::dispersedPhaseInterface::dispersed
const phaseModel & dispersed() const
Dispersed phase.
Foam::dragModels::GidaspowSchillerNaumann::CdRe
virtual tmp< volScalarField > CdRe() const
Drag coefficient.
Foam::pos0
dimensionedScalar pos0(const dimensionedScalar &ds)
Definition:
dimensionedScalar.C:201
Foam::addToRunTimeSelectionTable
addToRunTimeSelectionTable(ensightPart, ensightPartCells, istream)
Foam::dispersedPhaseInterface::Re
tmp< volScalarField > Re() const
Reynolds number.
Foam::defineTypeNameAndDebug
defineTypeNameAndDebug(combustionModel, 0)
Foam::pow
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
Definition:
dimensionedScalar.C:73
Foam::rhoThermo::mu
virtual tmp< volScalarField > mu() const =0
Dynamic viscosity of mixture [kg/m/s].
Foam::dragModels::dispersedDragModel::interface_
const dispersedPhaseInterface interface_
Interface.
Definition:
dispersedDragModel.H:62
Foam::e
const doubleScalar e
Elementary charge.
Definition:
doubleScalar.H:105
Foam::tmp
A class for managing temporary objects.
Definition:
PtrList.H:53
Foam::Re
scalarField Re(const UList< complex > &cf)
Definition:
complexFields.C:97
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.H:213
applications
solvers
multiphase
multiphaseEulerFoam
interfacialModels
dragModels
IshiiZuber
IshiiZuber.C
Generated by
1.8.13