OpenFOAM: API Guide
v2112
The open source CFD toolbox
FSD.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) 2011-2017 OpenFOAM Foundation
9
-------------------------------------------------------------------------------
10
License
11
This file is part of OpenFOAM.
12
13
OpenFOAM is free software: you can redistribute it and/or modify it
14
under the terms of the GNU General Public License as published by
15
the Free Software Foundation, either version 3 of the License, or
16
(at your option) any later version.
17
18
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21
for more details.
22
23
You should have received a copy of the GNU General Public License
24
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26
Class
27
Foam::combustionModels::FSD
28
29
Group
30
grpCombustionModels
31
32
Description
33
34
Flame Surface Dennsity (FDS) combustion model.
35
36
The fuel source term is given by mgft*pc*omegaFuelBar.
37
38
where:
39
mgft: filtered flame area.
40
pc: probability of the combustion progress.
41
omegaFuelBar: filtered consumption speed per unit of flame area.
42
43
pc is considered from the IFC solution.
44
omegaFuelBar is calculated solving a relaxation equation which tends to
45
omegaEq. This omegaEq is obtained from the flamelet solution for
46
different strain rates and fit using a expential distribution.
47
48
The spacial distribution of the consumption speed (omega) is obtained also
49
from a strained flamelet solution and it is assumed to have a Gaussian
50
distribution.
51
52
If the grid resolution is not enough to resolve the flame, the consumption
53
speed distribution is linearly thickened conserving the overall heat
54
release.
55
56
If the turbulent fluctuation of the mixture fraction at the sub-grid level
57
is large (>1e-04) then a beta pdf is used for filtering.
58
59
At the moment the flame area combustion model is only fit to work in a LES
60
frame work. In RAS the subgrid fluctuation has to be solved by an extra
61
transport equation.
62
63
SourceFiles
64
FSD.C
65
66
\*---------------------------------------------------------------------------*/
67
68
#ifndef FSD_H
69
#define FSD_H
70
71
#include "
singleStepCombustion.H
"
72
#include "
reactionRateFlameArea.H
"
73
74
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
75
76
namespace
Foam
77
{
78
namespace
combustionModels
79
{
80
81
/*---------------------------------------------------------------------------*\
82
Class FSD Declaration
83
\*---------------------------------------------------------------------------*/
84
85
template
<
class
ReactionThermo,
class
ThermoType>
86
class
FSD
87
:
88
public
singleStepCombustion
<ReactionThermo, ThermoType>
89
{
90
// Private data
91
92
//- Auto pointer to consumption speed per unit of flame area model
93
autoPtr<reactionRateFlameArea>
reactionRateFlameArea_;
94
95
//- Mixture fraction
96
volScalarField
ft_;
97
98
//- Fuel mass concentration on the fuel stream
99
dimensionedScalar
YFuelFuelStream_;
100
101
//- Oxygen mass concentration on the oxidizer stream
102
dimensionedScalar
YO2OxiStream_;
103
104
//- Similarity constant for the sub-grid ft fluctuations
105
scalar Cv_;
106
107
//- Model constant
108
scalar C_;
109
110
//- Lower flammability limit
111
scalar ftMin_;
112
113
//- Upper flammability limit
114
scalar ftMax_;
115
116
//- Dimension of the ft space. Used to integrate the beta-pdf
117
scalar ftDim_;
118
119
//- Minimum mixture fraction variance to calculate pdf
120
scalar ftVarMin_;
121
122
123
// Private Member Functions
124
125
//- Calculate the normalised fuel source term
126
void
calculateSourceNorm();
127
128
//- No copy construct
129
FSD
(
const
FSD
&) =
delete
;
130
131
//- No copy assignment
132
void
operator=(
const
FSD
&) =
delete
;
133
134
135
public
:
136
137
//- Runtime type information
138
TypeName
(
"FSD"
);
139
140
141
// Constructors
142
143
//- Construct from components
144
FSD
145
(
146
const
word
& modelType,
147
ReactionThermo&
thermo
,
148
const
compressibleTurbulenceModel
&
turb
,
149
const
word
& combustionProperties
150
);
151
152
153
//- Destructor
154
virtual
~FSD
();
155
156
157
// Member Functions
158
159
//- Correct combustion rate
160
virtual
void
correct
();
161
162
//- Update properties
163
virtual
bool
read
();
164
};
165
166
167
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
168
169
}
// End namespace combustionModels
170
}
// End namespace Foam
171
172
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
173
174
#ifdef NoRepository
175
#include "
FSD.C
"
176
#endif
177
178
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
179
180
#endif
181
182
// ************************************************************************* //
Foam::combustionModels::FSD::read
virtual bool read()
Update properties.
Definition:
FSD.C:349
Foam::combustionModels::FSD::~FSD
virtual ~FSD()
Destructor.
Definition:
FSD.C:94
Foam::word
A class for handling words, derived from Foam::string.
Definition:
word.H:65
Foam::combustionModels::FSD::correct
virtual void correct()
Correct combustion rate.
Definition:
FSD.C:337
singleStepCombustion.H
thermo
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
Foam::combustionModels::FSD::TypeName
TypeName("FSD")
Runtime type information.
Foam::combustionModels::singleStepCombustion
Base class for combustion models using singleStepReactingMixture.
Definition:
singleStepCombustion.H:58
FSD.C
Foam::dimensioned< scalar >
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.C:33
Foam::autoPtr
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition:
HashPtrTable.H:53
reactionRateFlameArea.H
Foam::GeometricField< scalar, fvPatchField, volMesh >
turb
compressible::turbulenceModel & turb
Definition:
setRegionFluidFields.H:10
Foam::compressibleTurbulenceModel
Abstract base class for turbulence models (RAS, LES and laminar).
Definition:
compressibleTurbulenceModel.H:54
Foam::combustionModels::FSD
Flame Surface Dennsity (FDS) combustion model.
Definition:
FSD.H:85
src
combustionModels
FSD
FSD.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.