OpenFOAM
12
The OpenFOAM Foundation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
makeThermo.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-2023 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
InClass
25
Foam::fluidThermo
26
27
Description
28
Macros for creating basic thermo packages
29
30
\*---------------------------------------------------------------------------*/
31
32
#ifndef makeThermo_H
33
#define makeThermo_H
34
35
#include "
basicThermo.H
"
36
#include "
NamedThermo.H
"
37
#include "
addToRunTimeSelectionTable.H
"
38
39
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
40
41
#define defineThermo(BaseThermo, Mixture, ThermoPhysics) \
42
\
43
typedef \
44
NamedThermo<BaseThermo::DerivedThermoType<Mixture<ThermoPhysics>>> \
45
BaseThermo##Mixture##ThermoPhysics; \
46
\
47
defineTemplateTypeNameAndDebugWithName \
48
( \
49
BaseThermo##Mixture##ThermoPhysics, \
50
( \
51
BaseThermo::derivedThermoName + "<"
\
52
+ Mixture<ThermoPhysics>::typeName() + ">" \
53
).c_str(), \
54
0 \
55
);
56
57
58
#define addThermo(SelectThermo, BaseThermo, Mixture, ThermoPhysics) \
59
\
60
addToRunTimeSelectionTable \
61
( \
62
SelectThermo, \
63
BaseThermo##Mixture##ThermoPhysics, \
64
fvMesh \
65
);
66
67
68
#define makeThermo(BaseThermo, Mixture, ThermoPhysics) \
69
\
70
defineThermo(BaseThermo, Mixture, ThermoPhysics); \
71
\
72
addThermo(basicThermo, BaseThermo, Mixture, ThermoPhysics); \
73
addThermo(BaseThermo, BaseThermo, Mixture, ThermoPhysics);
74
75
76
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
77
78
#endif
79
80
// ************************************************************************* //
NamedThermo.H
addToRunTimeSelectionTable.H
Macros for easy insertion into run-time selection tables.
basicThermo.H
src
thermophysicalModels
specie
include
makeThermo.H
Generated by
1.9.1