OpenFOAM: API Guide
v2012
The open source CFD toolbox
makeReactingSolidThermo.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) 2012-2016 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
InClass
27
Foam::solidThermo
28
29
Description
30
Macros for creating reacting solid thermo packages
31
32
\*---------------------------------------------------------------------------*/
33
34
#ifndef makeReactingSolidThermo_H
35
#define makeReactingSolidThermo_H
36
37
#include "
addToRunTimeSelectionTable.H
"
38
#include "
SpecieMixture.H
"
39
40
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
41
#define makeSolidReactionMixtureThermo(BaseThermo,Cthermo,Mixture,ThermoPhys) \
42
\
43
typedef SpecieMixture \
44
< \
45
Mixture \
46
< \
47
ThermoPhys \
48
> \
49
> SpecieMixture##Mixture##ThermoPhys; \
50
\
51
typedef \
52
heThermo \
53
< \
54
BaseThermo, \
55
SpecieMixture##Mixture##ThermoPhys \
56
> heThermo##Mixture##ThermoPhys; \
57
\
58
typedef \
59
Cthermo \
60
< \
61
BaseThermo, \
62
SpecieMixture##Mixture##ThermoPhys \
63
> Cthermo##Mixture##ThermoPhys; \
64
\
65
\
66
defineTemplateTypeNameAndDebugWithName \
67
( \
68
Cthermo##Mixture##ThermoPhys, \
69
( \
70
#Cthermo"<"#Mixture"<" \
71
+ ThermoPhys::typeName() \
72
+ ">>" \
73
).c_str(), \
74
0 \
75
); \
76
\
77
addToRunTimeSelectionTable \
78
( \
79
basicThermo, \
80
Cthermo##Mixture##ThermoPhys, \
81
fvMesh \
82
); \
83
\
84
addToRunTimeSelectionTable \
85
( \
86
BaseThermo, \
87
Cthermo##Mixture##ThermoPhys, \
88
fvMesh \
89
); \
90
\
91
addToRunTimeSelectionTable \
92
( \
93
BaseThermo, \
94
Cthermo##Mixture##ThermoPhys, \
95
dictionary \
96
);
97
98
99
#define makeReactingSolidThermo(BaseThermo,CThermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie) \
100
\
101
typedef \
102
Transport \
103
< \
104
species::thermo \
105
< \
106
Thermo \
107
< \
108
EqnOfState \
109
< \
110
Specie \
111
> \
112
>, \
113
Type \
114
> \
115
> Transport##Type##Thermo##EqnOfState##Specie; \
116
\
117
makeSolidReactionMixtureThermo \
118
( \
119
BaseThermo, \
120
CThermo, \
121
Mixture, \
122
Transport##Type##Thermo##EqnOfState##Specie \
123
);
124
125
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
126
127
#endif
128
129
// ************************************************************************* //
addToRunTimeSelectionTable.H
Macros for easy insertion into run-time selection tables.
SpecieMixture.H
src
thermophysicalModels
solidThermo
solidReactionThermo
makeReactingSolidThermo.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.