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
thermophysicalModels
reactionThermo
mixtures
egrMixture
egrMixture.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::egrMixture
26
27
Description
28
Foam::egrMixture
29
30
SourceFiles
31
egrMixture.C
32
33
\*---------------------------------------------------------------------------*/
34
35
#ifndef egrMixture_H
36
#define egrMixture_H
37
38
#include <
reactionThermophysicalModels/basicMultiComponentMixture.H
>
39
40
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
41
42
namespace
Foam
43
{
44
45
/*---------------------------------------------------------------------------*\
46
Class egrMixture Declaration
47
\*---------------------------------------------------------------------------*/
48
49
template
<
class
ThermoType>
50
class
egrMixture
51
:
52
public
basicMultiComponentMixture
53
{
54
// Private data
55
56
static
const
int
nSpecies_ = 3;
57
static
const
char
* specieNames_[3];
58
59
dimensionedScalar
stoicRatio_;
60
61
ThermoType
fuel_;
62
ThermoType
oxidant_;
63
ThermoType
products_;
64
65
mutable
ThermoType
mixture_;
66
67
//- Mixture fraction
68
volScalarField
& ft_;
69
70
//- Regress variable
71
volScalarField
& b_;
72
73
//- Residual gases
74
volScalarField
& egr_;
75
76
//- Construct as copy (not implemented)
77
egrMixture
(
const
egrMixture<ThermoType>
&);
78
79
80
public
:
81
82
//- The type of thermodynamics this mixture is instantiated for
83
typedef
ThermoType
thermoType
;
84
85
86
// Constructors
87
88
//- Construct from dictionary and mesh
89
egrMixture
(
const
dictionary
&,
const
fvMesh
&);
90
91
92
//- Destructor
93
virtual
~egrMixture
()
94
{}
95
96
97
// Member functions
98
99
const
dimensionedScalar
&
stoicRatio
()
const
100
{
101
return
stoicRatio_;
102
}
103
104
const
ThermoType
&
mixture
105
(
106
const
scalar,
107
const
scalar,
108
const
scalar
109
)
const
;
110
111
const
ThermoType
&
cellMixture
(
const
label celli)
const
112
{
113
return
mixture
(ft_[celli], b_[celli], egr_[celli]);
114
}
115
116
const
ThermoType
&
patchFaceMixture
117
(
118
const
label
patchi
,
119
const
label facei
120
)
const
121
{
122
return
mixture
123
(
124
ft_.
boundaryField
()[
patchi
][facei],
125
b_.
boundaryField
()[
patchi
][facei],
126
egr_.
boundaryField
()[
patchi
][facei]
127
);
128
}
129
130
const
ThermoType
&
cellReactants
(
const
label celli)
const
131
{
132
return
mixture
(ft_[celli], 1, egr_[celli]);
133
}
134
135
const
ThermoType
&
patchFaceReactants
136
(
137
const
label patchi,
138
const
label facei
139
)
const
140
{
141
return
mixture
142
(
143
ft_.
boundaryField
()[
patchi
][facei],
144
1,
145
egr_.
boundaryField
()[
patchi
][facei]
146
);
147
}
148
149
const
ThermoType
&
cellProducts
(
const
label celli)
const
150
{
151
return
mixture
(ft_[celli], 0, 0);
152
}
153
154
const
ThermoType
&
patchFaceProducts
155
(
156
const
label patchi,
157
const
label facei
158
)
const
159
{
160
return
mixture
161
(
162
ft_.
boundaryField
()[
patchi
][facei],
163
0,
164
0
165
);
166
}
167
168
//- Read dictionary
169
void
read
(
const
dictionary
&);
170
};
171
172
173
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
174
175
}
// End namespace Foam
176
177
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
178
179
#ifdef NoRepository
180
# include <
reactionThermophysicalModels/egrMixture.C
>
181
#endif
182
183
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
184
185
#endif
186
187
// ************************ vim: set sw=4 sts=4 et: ************************ //