OpenFOAM
8
The OpenFOAM Foundation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
makeThermophysicalTransportModel.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) 2020 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
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
27
28
#define makeThermophysicalTransportModelTypes( \
29
BaseModel, MomentumTransportModel, ThermoModel) \
30
\
31
namespace Foam \
32
{ \
33
typedef BaseModel<MomentumTransportModel, ThermoModel> \
34
ThermoModel##MomentumTransportModel##BaseModel; \
35
\
36
typedef laminarThermophysicalTransportModel \
37
< \
38
ThermoModel##MomentumTransportModel##BaseModel \
39
> laminar##ThermoModel##MomentumTransportModel##BaseModel; \
40
\
41
typedef RASThermophysicalTransportModel \
42
< \
43
ThermoModel##MomentumTransportModel##BaseModel \
44
> RAS##ThermoModel##MomentumTransportModel##BaseModel; \
45
\
46
typedef LESThermophysicalTransportModel \
47
< \
48
ThermoModel##MomentumTransportModel##BaseModel \
49
> LES##ThermoModel##MomentumTransportModel##BaseModel; \
50
}
51
52
53
#define makeThermophysicalTransportModels( \
54
BaseModel, MomentumTransportModel, ThermoModel) \
55
\
56
namespace Foam \
57
{ \
58
typedef ThermophysicalTransportModel \
59
< \
60
MomentumTransportModel, \
61
ThermoModel \
62
> ThermophysicalTransportModel##MomentumTransportModel; \
63
\
64
defineTemplateRunTimeSelectionTable \
65
( \
66
ThermophysicalTransportModel##MomentumTransportModel, \
67
dictionary \
68
); \
69
\
70
\
71
defineNamedTemplateTypeNameAndDebug \
72
( \
73
laminar##ThermoModel##MomentumTransportModel##BaseModel, \
74
0 \
75
); \
76
\
77
defineTemplateRunTimeSelectionTable \
78
( \
79
laminar##ThermoModel##MomentumTransportModel##BaseModel, \
80
dictionary \
81
); \
82
\
83
addToRunTimeSelectionTable \
84
( \
85
ThermophysicalTransportModel##MomentumTransportModel, \
86
laminar##ThermoModel##MomentumTransportModel##BaseModel, \
87
dictionary \
88
); \
89
\
90
\
91
defineNamedTemplateTypeNameAndDebug \
92
( \
93
RAS##ThermoModel##MomentumTransportModel##BaseModel, \
94
0 \
95
); \
96
\
97
defineTemplateRunTimeSelectionTable \
98
( \
99
RAS##ThermoModel##MomentumTransportModel##BaseModel, \
100
dictionary \
101
); \
102
\
103
addToRunTimeSelectionTable \
104
( \
105
ThermophysicalTransportModel##MomentumTransportModel, \
106
RAS##ThermoModel##MomentumTransportModel##BaseModel, \
107
dictionary \
108
); \
109
\
110
\
111
defineNamedTemplateTypeNameAndDebug \
112
( \
113
LES##ThermoModel##MomentumTransportModel##BaseModel, \
114
0 \
115
); \
116
\
117
defineTemplateRunTimeSelectionTable \
118
( \
119
LES##ThermoModel##MomentumTransportModel##BaseModel, \
120
dictionary \
121
); \
122
\
123
addToRunTimeSelectionTable \
124
( \
125
ThermophysicalTransportModel##MomentumTransportModel, \
126
LES##ThermoModel##MomentumTransportModel##BaseModel, \
127
dictionary \
128
); \
129
}
130
131
132
#define makeThermophysicalTransportModel( \
133
BaseModel, MomentumTransportModel, ThermoModel, SType, Type) \
134
\
135
typedef Foam::SType##ThermophysicalTransportModels::Type \
136
< \
137
Foam::BaseModel<Foam::MomentumTransportModel, Foam::ThermoModel> \
138
> Type##SType##ThermoModel##ThermoModel##MomentumTransportModel##BaseModel;\
139
\
140
defineNamedTemplateTypeNameAndDebug \
141
( \
142
Type##SType##ThermoModel##ThermoModel \
143
##MomentumTransportModel##BaseModel, \
144
0 \
145
); \
146
\
147
namespace Foam \
148
{ \
149
namespace SType##ThermophysicalTransportModels \
150
{ \
151
typedef Type<BaseModel<MomentumTransportModel, ThermoModel>> \
152
Type##SType##ThermoModel##ThermoModel \
153
##MomentumTransportModel##BaseModel; \
154
\
155
addToRunTimeSelectionTable \
156
( \
157
SType##ThermoModel##MomentumTransportModel##BaseModel, \
158
Type##SType##ThermoModel##ThermoModel \
159
##MomentumTransportModel##BaseModel, \
160
dictionary \
161
); \
162
} \
163
}
164
165
166
#define makeTurbulenceThermophysicalTransportModel( \
167
BaseModel, MomentumTransportModel, ThermoModel, SType, Type) \
168
\
169
typedef Foam::turbulenceThermophysicalTransportModels::Type \
170
< \
171
Foam::SType##ThermophysicalTransportModel \
172
< \
173
Foam::BaseModel<Foam::MomentumTransportModel, Foam::ThermoModel> \
174
> \
175
> Type##SType##ThermoModel##ThermoModel##MomentumTransportModel##BaseModel;\
176
\
177
defineNamedTemplateTypeNameAndDebug \
178
( \
179
Type##SType##ThermoModel##ThermoModel \
180
##MomentumTransportModel##BaseModel, \
181
0 \
182
); \
183
\
184
namespace Foam \
185
{ \
186
namespace turbulenceThermophysicalTransportModels \
187
{ \
188
typedef Type \
189
< \
190
SType##ThermophysicalTransportModel \
191
< \
192
BaseModel<MomentumTransportModel, ThermoModel> \
193
> \
194
> Type##SType##ThermoModel##MomentumTransportModel##BaseModel; \
195
\
196
addToRunTimeSelectionTable \
197
( \
198
SType##ThermoModel##MomentumTransportModel##BaseModel, \
199
Type##SType##ThermoModel##MomentumTransportModel##BaseModel, \
200
dictionary \
201
); \
202
} \
203
}
204
205
206
// ************************************************************************* //
src
ThermophysicalTransportModels
thermophysicalTransportModel
makeThermophysicalTransportModel.H
Generated by
1.8.13