OpenFOAM
6
The OpenFOAM Foundation
src
thermophysicalModels
chemistryModel
chemistrySolver
chemistrySolver
makeChemistrySolverTypes.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration | Website: https://openfoam.org
5
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
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
\*---------------------------------------------------------------------------*/
25
26
#ifndef makeChemistrySolverTypes_H
27
#define makeChemistrySolverTypes_H
28
29
#include "
chemistrySolver.H
"
30
31
#include "
StandardChemistryModel.H
"
32
#include "
TDACChemistryModel.H
"
33
34
#include "
noChemistrySolver.H
"
35
#include "
EulerImplicit.H
"
36
#include "
ode.H
"
37
38
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
39
40
#define makeChemistrySolverType(SS, Comp, Thermo) \
41
\
42
typedef SS<StandardChemistryModel<Comp, Thermo>> SS##Comp##Thermo; \
43
\
44
defineTemplateTypeNameAndDebugWithName \
45
( \
46
SS##Comp##Thermo, \
47
(#SS"<" + word(StandardChemistryModel<Comp, Thermo>::typeName_()) + "<"\
48
+ word(Comp::typeName_()) + "," + Thermo::typeName() + ">>").c_str(), \
49
0 \
50
); \
51
\
52
BasicChemistryModel<Comp>:: \
53
add##thermo##ConstructorToTable<SS##Comp##Thermo> \
54
add##SS##Comp##Thermo##thermo##ConstructorTo##BasicChemistryModel##Comp\
55
##Table_; \
56
\
57
typedef SS<TDACChemistryModel<Comp, Thermo>> TDAC##SS##Comp##Thermo; \
58
\
59
defineTemplateTypeNameAndDebugWithName \
60
( \
61
TDAC##SS##Comp##Thermo, \
62
(#SS"<" + word(TDACChemistryModel<Comp, Thermo>::typeName_()) + "<" \
63
+ word(Comp::typeName_()) + "," + Thermo::typeName() + ">>").c_str(), \
64
0 \
65
); \
66
\
67
BasicChemistryModel<Comp>:: \
68
add##thermo##ConstructorToTable<TDAC##SS##Comp##Thermo> \
69
add##TDAC##SS##Comp##Thermo##thermo##ConstructorTo##BasicChemistryModel\
70
##Comp##Table_;
71
72
73
#define makeChemistrySolverTypes(Comp, Thermo) \
74
\
75
makeChemistrySolverType \
76
( \
77
noChemistrySolver, \
78
Comp, \
79
Thermo \
80
); \
81
\
82
makeChemistrySolverType \
83
( \
84
EulerImplicit, \
85
Comp, \
86
Thermo \
87
); \
88
\
89
makeChemistrySolverType \
90
( \
91
ode, \
92
Comp, \
93
Thermo \
94
); \
95
96
97
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
98
99
#endif
100
101
// ************************************************************************* //
TDACChemistryModel.H
ode.H
noChemistrySolver.H
EulerImplicit.H
StandardChemistryModel.H
chemistrySolver.H
Generated by
1.8.13