SmagorinskyZhang.H
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ========= |
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 \\ / O peration |
5 \\ / A nd | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2013-2016 OpenFOAM Foundation
9 Copyright (C) 2019-2020 OpenCFD Ltd.
10-------------------------------------------------------------------------------
11License
12 This file is part of OpenFOAM.
13
14 OpenFOAM is free software: you can redistribute it and/or modify it
15 under the terms of the GNU General Public License as published by
16 the Free Software Foundation, either version 3 of the License, or
17 (at your option) any later version.
18
19 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 for more details.
23
24 You should have received a copy of the GNU General Public License
25 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27Class
28 Foam::LESModels::SmagorinskyZhang
29
30Group
31 grpLESTurbulence
32
33Description
34 The Smagorinsky SGS model including bubble-generated turbulence
35
36 Reference:
37 \verbatim
38 Zhang, D., Deen, N. G., & Kuipers, J. A. M. (2006).
39 Numerical simulation of the dynamic flow behavior in a bubble column:
40 a study of closures for turbulence and interface forces.
41 Chemical Engineering Science, 61(23), 7593-7608.
42 \endverbatim
43
44 The default model coefficients are
45 \verbatim
46 SmagorinskyZhangCoeffs
47 {
48 Ck 0.094;
49 Ce 1.048;
50 Cmub 0.6;
51 }
52 \endverbatim
53
54SourceFiles
55 SmagorinskyZhang.C
56
57\*---------------------------------------------------------------------------*/
58
59#ifndef SmagorinskyZhang_H
60#define SmagorinskyZhang_H
61
62#include "Smagorinsky.H"
63
64// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
65
66namespace Foam
67{
68namespace LESModels
69{
70
71/*---------------------------------------------------------------------------*\
72 Class SmagorinskyZhang Declaration
73\*---------------------------------------------------------------------------*/
74
75template<class BasicTurbulenceModel>
77:
78 public Smagorinsky<BasicTurbulenceModel>
79{
80 // Private Data
81
83 <
84 typename BasicTurbulenceModel::transportModel
85 > *gasTurbulencePtr_;
86
87
88 // Private Member Functions
89
90 //- Return the turbulence model for the gas phase
92 <
93 typename BasicTurbulenceModel::transportModel
94 >&
95 gasTurbulence() const;
96
97 //- No copy construct
98 SmagorinskyZhang(const SmagorinskyZhang&) = delete;
99
100 //- No copy assignment
101 void operator=(const SmagorinskyZhang&) = delete;
102
103
104protected:
105
106 // Protected Data
107
108 // Model coefficients
111
112
113 // Protected Member Functions
114
115 virtual void correctNut();
116
117
118public:
120 typedef typename BasicTurbulenceModel::alphaField alphaField;
121 typedef typename BasicTurbulenceModel::rhoField rhoField;
122 typedef typename BasicTurbulenceModel::transportModel transportModel;
123
124
125 //- Runtime type information
126 TypeName("SmagorinskyZhang");
127
128
129 // Constructors
130
131 //- Construct from components
133 (
134 const alphaField& alpha,
135 const rhoField& rho,
136 const volVectorField& U,
137 const surfaceScalarField& alphaRhoPhi,
138 const surfaceScalarField& phi,
139 const transportModel& transport,
140 const word& propertiesName = turbulenceModel::propertiesName,
141 const word& type = typeName
142 );
143
144
145 //- Destructor
146 virtual ~SmagorinskyZhang() = default;
147
148
149 // Member Functions
150
151 //- Read model coefficients if they have changed
152 virtual bool read();
153};
154
155
156// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
157
158} // End namespace LESModels
159} // End namespace Foam
160
161// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
162
163#ifdef NoRepository
164 #include "SmagorinskyZhang.C"
165#endif
166
167// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
168
169#endif
170
171// ************************************************************************* //
surfaceScalarField & phi
The Smagorinsky SGS model including bubble-generated turbulence.
BasicTurbulenceModel::alphaField alphaField
BasicTurbulenceModel::rhoField rhoField
TypeName("SmagorinskyZhang")
Runtime type information.
virtual void correctNut()
Update the SGS eddy viscosity.
BasicTurbulenceModel::transportModel transportModel
virtual ~SmagorinskyZhang()=default
Destructor.
virtual bool read()
Read model coefficients if they have changed.
The Smagorinsky SGS model.
Definition: Smagorinsky.H:95
Templated abstract base class for multiphase compressible turbulence models.
static const word propertiesName
Default name of the turbulence properties dictionary.
A class for handling words, derived from Foam::string.
Definition: word.H:68
U
Definition: pEqn.H:72
Namespace for OpenFOAM.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
Definition: MSwindows.C:598
volScalarField & alpha
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73