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
applications
solvers
multiphase
twoPhaseEulerFoam
kineticTheoryModels
kineticTheoryModel
kineticTheoryModel.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::kineticTheoryModel
26
27
Description
28
29
SourceFiles
30
kineticTheoryModel.C
31
32
\*---------------------------------------------------------------------------*/
33
34
#ifndef kineticTheoryModel_H
35
#define kineticTheoryModel_H
36
37
#include <
EulerianInterfacialModels/dragModel.H
>
38
#include <
phaseModel/phaseModel.H
>
39
#include <
OpenFOAM/autoPtr.H
>
40
#include <
kineticTheoryModel/viscosityModel.H
>
41
#include <
kineticTheoryModel/conductivityModel.H
>
42
#include <
kineticTheoryModel/radialModel.H
>
43
#include <
kineticTheoryModel/granularPressureModel.H
>
44
#include <
kineticTheoryModel/frictionalStressModel.H
>
45
46
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47
48
namespace
Foam
49
{
50
51
/*---------------------------------------------------------------------------*\
52
Class kineticTheoryModel Declaration
53
\*---------------------------------------------------------------------------*/
54
55
class
kineticTheoryModel
56
{
57
// Private data
58
59
const
phaseModel
& phasea_;
60
const
volVectorField
& Ua_;
61
const
volVectorField
& Ub_;
62
const
volScalarField
& alpha_;
63
const
surfaceScalarField
& phia_;
64
65
const
dragModel
& draga_;
66
67
const
dimensionedScalar
& rhoa_;
68
const
dimensionedScalar
& da_;
69
const
dimensionedScalar
& nua_;
70
71
//- dictionary holding the modeling info
72
IOdictionary
kineticTheoryProperties_;
73
74
//- use kinetic theory or not.
75
Switch
kineticTheory_;
76
77
//- use generation == dissipation
78
Switch
equilibrium_;
79
80
autoPtr<kineticTheoryModels::viscosityModel>
viscosityModel_;
81
82
autoPtr<conductivityModel>
conductivityModel_;
83
84
autoPtr<radialModel>
radialModel_;
85
86
autoPtr<granularPressureModel>
granularPressureModel_;
87
88
autoPtr<frictionalStressModel>
frictionalStressModel_;
89
90
//- coefficient of restitution
91
const
dimensionedScalar
e_;
92
93
//- maximum packing
94
const
dimensionedScalar
alphaMax_;
95
96
//- min value for which the frictional stresses are zero
97
const
dimensionedScalar
alphaMinFriction_;
98
99
//- material constant for frictional normal stress
100
const
dimensionedScalar
Fr_;
101
102
//- material constant for frictional normal stress
103
const
dimensionedScalar
eta_;
104
105
//- material constant for frictional normal stress
106
const
dimensionedScalar
p_;
107
108
//- angle of internal friction
109
const
dimensionedScalar
phi_;
110
111
//- The granular energy/temperature
112
volScalarField
Theta_;
113
114
//- The granular viscosity
115
volScalarField
mua_;
116
117
//- The granular bulk viscosity
118
volScalarField
lambda_;
119
120
//- The granular pressure
121
volScalarField
pa_;
122
123
//- The granular temperature conductivity
124
volScalarField
kappa_;
125
126
//- The radial distribution function
127
volScalarField
gs0_;
128
129
130
// Private Member Functions
131
132
//- Disallow default bitwise copy construct
133
kineticTheoryModel
(
const
kineticTheoryModel
&);
134
135
//- Disallow default bitwise assignment
136
void
operator=(
const
kineticTheoryModel
&);
137
138
139
public
:
140
141
// Constructors
142
143
//- Construct from components
144
kineticTheoryModel
145
(
146
const
phaseModel
&
phasea
,
147
const
volVectorField
&
Ub
,
148
const
volScalarField
& alpha,
149
const
dragModel
&
draga
150
);
151
152
153
//- Destructor
154
virtual
~kineticTheoryModel
();
155
156
157
// Member Functions
158
159
void
solve
(
const
volTensorField
& gradUat);
160
161
bool
on
()
const
162
{
163
return
kineticTheory_;
164
}
165
166
const
volScalarField
&
mua
()
const
167
{
168
return
mua_;
169
}
170
171
const
volScalarField
&
pa
()
const
172
{
173
return
pa_;
174
}
175
176
const
volScalarField
&
lambda
()
const
177
{
178
return
lambda_;
179
}
180
181
const
volScalarField
&
kappa
()
const
182
{
183
return
kappa_;
184
}
185
};
186
187
188
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
189
190
}
// End namespace Foam
191
192
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
193
194
#endif
195
196
// ************************ vim: set sw=4 sts=4 et: ************************ //