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
incompressible
RAS
SpalartAllmaras
SpalartAllmaras.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::incompressible::RASModels::SpalartAllmaras
26
27
Description
28
Spalart-Allmaras 1-eqn mixing-length model for incompressible external
29
flows.
30
31
References:
32
@verbatim
33
"A One-Equation Turbulence Model for Aerodynamic Flows"
34
P.R. Spalart,
35
S.R. Allmaras,
36
La Recherche Aerospatiale, No. 1, 1994, pp. 5--21.
37
38
Extended according to:
39
40
"An Unstructured Grid Generation and Adaptive Solution Technique
41
for High Reynolds Number Compressible Flows"
42
G.A. Ashford,
43
Ph.D. thesis, University of Michigan, 1996.
44
@endverbatim
45
46
The default model coefficients correspond to the following:
47
@verbatim
48
SpalartAllmarasCoeffs
49
{
50
Cb1 0.1355;
51
Cb2 0.622;
52
Cw2 0.3;
53
Cw3 2.0;
54
Cv1 7.1;
55
Cv2 5.0;
56
sigmaNut 0.66666;
57
kappa 0.41;
58
}
59
@endverbatim
60
61
SourceFiles
62
SpalartAllmaras.C
63
64
\*---------------------------------------------------------------------------*/
65
66
#ifndef SpalartAllmaras_H
67
#define SpalartAllmaras_H
68
69
#include <
incompressibleRASModels/RASModel.H
>
70
#include <
finiteVolume/wallDist.H
>
71
72
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
73
74
namespace
Foam
75
{
76
namespace
incompressible
77
{
78
namespace
RASModels
79
{
80
81
/*---------------------------------------------------------------------------*\
82
Class SpalartAllmaras Declaration
83
\*---------------------------------------------------------------------------*/
84
85
class
SpalartAllmaras
86
:
87
public
RASModel
88
{
89
// Private data
90
91
// Model coefficients
92
93
dimensionedScalar
sigmaNut_;
94
dimensionedScalar
kappa_;
95
96
dimensionedScalar
Cb1_;
97
dimensionedScalar
Cb2_;
98
dimensionedScalar
Cw1_;
99
dimensionedScalar
Cw2_;
100
dimensionedScalar
Cw3_;
101
dimensionedScalar
Cv1_;
102
dimensionedScalar
Cv2_;
103
104
105
// Fields
106
107
volScalarField
nuTilda_;
108
volScalarField
nut_;
109
110
wallDist
d_;
111
112
113
// Private member functions
114
115
tmp<volScalarField>
chi()
const
;
116
117
tmp<volScalarField>
fv1(
const
volScalarField
& chi)
const
;
118
119
tmp<volScalarField>
fv2
120
(
121
const
volScalarField
& chi,
122
const
volScalarField
& fv1
123
)
const
;
124
125
tmp<volScalarField>
fv3
126
(
127
const
volScalarField
& chi,
128
const
volScalarField
& fv1
129
)
const
;
130
131
tmp<volScalarField>
fw(
const
volScalarField
& Stilda)
const
;
132
133
134
public
:
135
136
//- Runtime type information
137
TypeName
(
"SpalartAllmaras"
);
138
139
140
// Constructors
141
142
//- Construct from components
143
SpalartAllmaras
144
(
145
const
volVectorField
&
U
,
146
const
surfaceScalarField
&
phi
,
147
transportModel
&
transport
148
);
149
150
151
//- Destructor
152
virtual
~SpalartAllmaras
()
153
{}
154
155
156
// Member Functions
157
158
//- Return the turbulence viscosity
159
virtual
tmp<volScalarField>
nut
()
const
160
{
161
return
nut_;
162
}
163
164
//- Return the effective diffusivity for nuTilda
165
tmp<volScalarField>
DnuTildaEff
()
const
;
166
167
//- Return the turbulence kinetic energy
168
virtual
tmp<volScalarField>
k
()
const
;
169
170
//- Return the turbulence kinetic energy dissipation rate
171
virtual
tmp<volScalarField>
epsilon
()
const
;
172
173
//- Return the Reynolds stress tensor
174
virtual
tmp<volSymmTensorField>
R
()
const
;
175
176
//- Return the effective stress tensor including the laminar stress
177
virtual
tmp<volSymmTensorField>
devReff
()
const
;
178
179
//- Return the source term for the momentum equation
180
virtual
tmp<fvVectorMatrix>
divDevReff
(
volVectorField
& U)
const
;
181
182
//- Solve the turbulence equations and correct the turbulence viscosity
183
virtual
void
correct
();
184
185
//- Read RASProperties dictionary
186
virtual
bool
read
();
187
};
188
189
190
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
191
192
}
// End namespace RASModels
193
}
// End namespace incompressible
194
}
// End namespace Foam
195
196
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
197
198
#endif
199
200
// ************************ vim: set sw=4 sts=4 et: ************************ //