Loading...
Searching...
No Matches
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>
76class SmagorinskyZhang
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
109
112
113 // Protected Member Functions
114
115 virtual void correctNut();
116
117
118public:
119
120 typedef typename BasicTurbulenceModel::alphaField alphaField;
121 typedef typename BasicTurbulenceModel::rhoField rhoField;
122 typedef typename BasicTurbulenceModel::transportModel transportModel;
124
125 //- Runtime type information
126 TypeName("SmagorinskyZhang");
127
128
129 // Constructors
130
131 //- Construct from components
132 SmagorinskyZhang
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();
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// ************************************************************************* //
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.
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:66
U
Definition pEqn.H:72
Namespace for LES SGS models.
Namespace for OpenFOAM.
GeometricField< vector, fvPatchField, volMesh > volVectorField
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
const word GlobalIOList< Tuple2< scalar, vector > >::typeName("scalarVectorTable")
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
volScalarField & alpha
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition typeInfo.H:68