30 #define makeThermophysicalTransportModelBaseType( \
31 BaseModel, MomentumTransportModel, ThermoModel) \
35 typedef ThermophysicalTransportModel \
37 MomentumTransportModel, \
39 > ThermophysicalTransportModel##MomentumTransportModel; \
41 typedef BaseModel<MomentumTransportModel, ThermoModel> \
42 ThermoModel##MomentumTransportModel##BaseModel; \
46 #define makeThermophysicalTransportModelType( \
47 BaseModel, MomentumTransportModel, ThermoModel, SType) \
51 typedef SType##ThermophysicalTransportModel \
53 ThermoModel##MomentumTransportModel##BaseModel \
54 > SType##ThermoModel##MomentumTransportModel##BaseModel; \
58 #define makeThermophysicalTransportModelTypes( \
59 BaseModel, MomentumTransportModel, ThermoModel) \
61 makeThermophysicalTransportModelBaseType \
62 (BaseModel, MomentumTransportModel, ThermoModel) \
64 makeThermophysicalTransportModelType \
65 (BaseModel, MomentumTransportModel, ThermoModel, laminar) \
67 makeThermophysicalTransportModelType \
68 (BaseModel, MomentumTransportModel, ThermoModel, RAS) \
70 makeThermophysicalTransportModelType \
71 (BaseModel, MomentumTransportModel, ThermoModel, LES)
74 #define makeThermophysicalTransportModelTable( \
75 BaseModel, MomentumTransportModel, ThermoModel) \
79 defineTemplateRunTimeSelectionTable \
81 ThermophysicalTransportModel##MomentumTransportModel, \
87 #define makeThermophysicalTransportModelTableType( \
88 BaseModel, MomentumTransportModel, ThermoModel, SType) \
92 defineNamedTemplateTypeNameAndDebug \
94 SType##ThermoModel##MomentumTransportModel##BaseModel, \
98 defineTemplateRunTimeSelectionTable \
100 SType##ThermoModel##MomentumTransportModel##BaseModel, \
104 addToRunTimeSelectionTable \
106 ThermophysicalTransportModel##MomentumTransportModel, \
107 SType##ThermoModel##MomentumTransportModel##BaseModel, \
113 #define makeThermophysicalTransportModelTables( \
114 BaseModel, MomentumTransportModel, ThermoModel) \
116 makeThermophysicalTransportModelTable \
117 (BaseModel, MomentumTransportModel, ThermoModel) \
119 makeThermophysicalTransportModelTableType \
120 (BaseModel, MomentumTransportModel, ThermoModel, laminar) \
122 makeThermophysicalTransportModelTableType \
123 (BaseModel, MomentumTransportModel, ThermoModel, RAS) \
125 makeThermophysicalTransportModelTableType \
126 (BaseModel, MomentumTransportModel, ThermoModel, LES)
129 #define makeThermophysicalTransportModel( \
130 BaseModel, MomentumTransportModel, ThermoModel, SType, Type) \
132 typedef Foam::SType##ThermophysicalTransportModels::Type \
134 Foam::BaseModel<Foam::MomentumTransportModel, Foam::ThermoModel> \
135 > Type##SType##ThermoModel##ThermoModel##MomentumTransportModel##BaseModel;\
137 defineNamedTemplateTypeNameAndDebug \
139 Type##SType##ThermoModel##ThermoModel \
140 ##MomentumTransportModel##BaseModel, \
146 namespace SType##ThermophysicalTransportModels \
148 typedef Type<BaseModel<MomentumTransportModel, ThermoModel>> \
149 Type##SType##ThermoModel##ThermoModel \
150 ##MomentumTransportModel##BaseModel; \
152 addToRunTimeSelectionTable \
154 SType##ThermoModel##MomentumTransportModel##BaseModel, \
155 Type##SType##ThermoModel##ThermoModel \
156 ##MomentumTransportModel##BaseModel, \
163 #define makeTurbulenceThermophysicalTransportModel( \
164 BaseModel, MomentumTransportModel, ThermoModel, SType, Type) \
166 typedef Foam::turbulenceThermophysicalTransportModels::Type \
168 Foam::SType##ThermophysicalTransportModel \
170 Foam::BaseModel<Foam::MomentumTransportModel, Foam::ThermoModel> \
172 > Type##SType##ThermoModel##ThermoModel##MomentumTransportModel##BaseModel;\
174 defineNamedTemplateTypeNameAndDebug \
176 Type##SType##ThermoModel##ThermoModel \
177 ##MomentumTransportModel##BaseModel, \
183 namespace turbulenceThermophysicalTransportModels \
187 SType##ThermophysicalTransportModel \
189 BaseModel<MomentumTransportModel, ThermoModel> \
191 > Type##SType##ThermoModel##MomentumTransportModel##BaseModel; \
193 addToRunTimeSelectionTable \
195 SType##ThermoModel##MomentumTransportModel##BaseModel, \
196 Type##SType##ThermoModel##MomentumTransportModel##BaseModel, \
Macros for easy insertion into run-time selection tables.