Home
Downloads
Documentation
Installation
User Guide
man-pages
API Documentation
README
Release Notes
Changes
License
Support
SourceForge Project
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
turbulenceModels
compressible
RAS
realizableKE
realizableKE.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 | Copyright (C) 1991-2010 OpenCFD Ltd.
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
Class
25
Foam::compressible::RASModels::realizableKE
26
27
Description
28
Realizable k-epsilon turbulence model for compressible flows.
29
30
Model described in the paper:
31
@verbatim
32
"A New k-epsilon Eddy Viscosity Model for High Reynolds Number
33
Turbulent Flows"
34
35
Tsan-Hsing Shih, William W. Liou, Aamir Shabbir, Zhigang Tang and
36
Jiang Zhu
37
38
Computers and Fluids Vol. 24, No. 3, pp. 227-238, 1995
39
@endverbatim
40
41
The default model coefficients correspond to the following:
42
@verbatim
43
realizableKECoeffs
44
{
45
Cmu 0.09;
46
A0 4.0;
47
C2 1.9;
48
sigmak 1.0;
49
sigmaEps 1.2;
50
Prt 1.0; // only for compressible
51
}
52
@endverbatim
53
54
SourceFiles
55
realizableKE.C
56
57
\*---------------------------------------------------------------------------*/
58
59
#ifndef realizableKE_H
60
#define realizableKE_H
61
62
#include <
compressibleRASModels/RASModel.H
>
63
64
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
65
66
namespace
Foam
67
{
68
namespace
compressible
69
{
70
namespace
RASModels
71
{
72
73
/*---------------------------------------------------------------------------*\
74
Class realizableKE Declaration
75
\*---------------------------------------------------------------------------*/
76
77
class
realizableKE
78
:
79
public
RASModel
80
{
81
// Private data
82
83
// Model coefficients
84
85
dimensionedScalar
Cmu_;
86
dimensionedScalar
A0_;
87
dimensionedScalar
C2_;
88
dimensionedScalar
sigmak_;
89
dimensionedScalar
sigmaEps_;
90
dimensionedScalar
Prt_;
91
92
93
// Fields
94
95
volScalarField
k_;
96
volScalarField
epsilon_;
97
volScalarField
mut_;
98
volScalarField
alphat_;
99
100
101
// Private member functions
102
103
tmp<volScalarField>
rCmu
104
(
105
const
volTensorField
& gradU,
106
const
volScalarField
& S2,
107
const
volScalarField
& magS
108
);
109
110
tmp<volScalarField>
rCmu(
const
volTensorField
& gradU);
111
112
113
public
:
114
115
//- Runtime type information
116
TypeName
(
"realizableKE"
);
117
118
// Constructors
119
120
//- Construct from components
121
realizableKE
122
(
123
const
volScalarField
&
rho
,
124
const
volVectorField
&
U
,
125
const
surfaceScalarField
&
phi
,
126
const
basicThermo
& thermophysicalModel
127
);
128
129
130
//- Destructor
131
virtual
~
realizableKE
()
132
{}
133
134
135
// Member Functions
136
137
//- Return the effective diffusivity for k
138
tmp<volScalarField>
DkEff
()
const
139
{
140
return
tmp<volScalarField>
141
(
142
new
volScalarField
(
"DkEff"
, mut_/sigmak_ +
mu
())
143
);
144
}
145
146
//- Return the effective diffusivity for epsilon
147
tmp<volScalarField>
DepsilonEff
()
const
148
{
149
return
tmp<volScalarField>
150
(
151
new
volScalarField
(
"DepsilonEff"
, mut_/sigmaEps_ +
mu
())
152
);
153
}
154
155
//- Return the turbulence viscosity
156
virtual
tmp<volScalarField>
mut
()
const
157
{
158
return
mut_;
159
}
160
161
//- Return the effective turbulent thermal diffusivity
162
virtual
tmp<volScalarField>
alphaEff
()
const
163
{
164
return
tmp<volScalarField>
165
(
166
new
volScalarField
(
"alphaEff"
, alphat_ +
alpha
())
167
);
168
}
169
170
//- Return the turbulence kinetic energy
171
virtual
tmp<volScalarField>
k
()
const
172
{
173
return
k_;
174
}
175
176
//- Return the turbulence kinetic energy dissipation rate
177
virtual
tmp<volScalarField>
epsilon
()
const
178
{
179
return
epsilon_;
180
}
181
182
//- Return the Reynolds stress tensor
183
virtual
tmp<volSymmTensorField>
R()
const
;
184
185
//- Return the effective stress tensor including the laminar stress
186
virtual
tmp<volSymmTensorField>
devRhoReff()
const
;
187
188
//- Return the source term for the momentum equation
189
virtual
tmp<fvVectorMatrix>
divDevRhoReff(
volVectorField
& U)
const
;
190
191
//- Solve the turbulence equations and correct the turbulence viscosity
192
virtual
void
correct
();
193
194
//- Read RASProperties dictionary
195
virtual
bool
read();
196
};
197
198
199
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
200
201
}
// End namespace RASModels
202
}
// End namespace compressible
203
}
// End namespace Foam
204
205
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
206
207
#endif
208
209
// ************************ vim: set sw=4 sts=4 et: ************************ //