OpenFOAM
8
The OpenFOAM Foundation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
makeMomentumTransportModel.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) 2013-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
#define makeMomentumTransportModelTypes( \
27
Alpha, Rho, baseModel, BaseModel, Transport) \
28
\
29
namespace Foam \
30
{ \
31
typedef BaseModel<Transport> Transport##BaseModel; \
32
typedef laminarModel<Transport##BaseModel> \
33
laminar##Transport##BaseModel; \
34
typedef RASModel<Transport##BaseModel> RAS##Transport##BaseModel; \
35
typedef LESModel<Transport##BaseModel> LES##Transport##BaseModel; \
36
}
37
38
39
#define makeBaseMomentumTransportModel( \
40
Alpha, Rho, baseModel, BaseModel, Transport) \
41
\
42
namespace Foam \
43
{ \
44
typedef MomentumTransportModel \
45
< \
46
Alpha, \
47
Rho, \
48
baseModel, \
49
Transport \
50
> Transport##baseModel; \
51
\
52
defineTemplateRunTimeSelectionTable \
53
( \
54
Transport##baseModel, \
55
dictionary \
56
); \
57
\
58
\
59
defineNamedTemplateTypeNameAndDebug(laminar##Transport##BaseModel, 0); \
60
\
61
defineTemplateRunTimeSelectionTable \
62
(laminar##Transport##BaseModel, dictionary); \
63
\
64
addToRunTimeSelectionTable \
65
( \
66
Transport##baseModel, \
67
laminar##Transport##BaseModel, \
68
dictionary \
69
); \
70
\
71
\
72
defineNamedTemplateTypeNameAndDebug(RAS##Transport##BaseModel, 0); \
73
\
74
defineTemplateRunTimeSelectionTable \
75
(RAS##Transport##BaseModel, dictionary); \
76
\
77
addToRunTimeSelectionTable \
78
( \
79
Transport##baseModel, \
80
RAS##Transport##BaseModel, \
81
dictionary \
82
); \
83
\
84
\
85
defineNamedTemplateTypeNameAndDebug(LES##Transport##BaseModel, 0); \
86
\
87
defineTemplateRunTimeSelectionTable \
88
(LES##Transport##BaseModel, dictionary); \
89
\
90
addToRunTimeSelectionTable \
91
( \
92
Transport##baseModel, \
93
LES##Transport##BaseModel, \
94
dictionary \
95
); \
96
}
97
98
99
#define makeTemplatedMomentumTransportModel(BaseModel, SType, Type) \
100
defineNamedTemplateTypeNameAndDebug \
101
(Foam::SType##Models::Type<Foam::BaseModel>, 0); \
102
\
103
namespace Foam \
104
{ \
105
namespace SType##Models \
106
{ \
107
typedef Type<BaseModel> Type##SType##BaseModel; \
108
\
109
addToRunTimeSelectionTable \
110
( \
111
SType##BaseModel, \
112
Type##SType##BaseModel, \
113
dictionary \
114
); \
115
} \
116
}
117
118
119
#define makeMomentumTransportModel(BaseModel, SType, Type) \
120
namespace Foam \
121
{ \
122
namespace SType##Models \
123
{ \
124
defineTypeNameAndDebug(Type, 0); \
125
\
126
addToRunTimeSelectionTable \
127
( \
128
SType##BaseModel, \
129
Type, \
130
dictionary \
131
); \
132
} \
133
}
134
135
136
// ************************************************************************* //
src
MomentumTransportModels
momentumTransportModels
makeMomentumTransportModel.H
Generated by
1.8.13