phaseModels.C
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) 2015-2025 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 
27 
28 #include "rhoFluidThermo.H"
30 
31 #include "solidThermo.H"
32 
33 #include "phaseModel.H"
34 #include "ThermoPhaseModel.H"
35 #include "SolidThermoPhaseModel.H"
36 #include "IsothermalPhaseModel.H"
38 #include "ThermalPhaseModel.H"
39 #include "SolidThermalPhaseModel.H"
40 #include "PurePhaseModel.H"
42 #include "InertPhaseModel.H"
43 #include "ReactingPhaseModel.H"
44 #include "MovingPhaseModel.H"
45 #include "StationaryPhaseModel.H"
46 
47 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48 
49 namespace Foam
50 {
51  typedef
52  PurePhaseModel
53  <
54  ThermalPhaseModel
55  <
56  InertPhaseModel
57  <
58  MovingPhaseModel
59  <
60  ThermoPhaseModel
61  <
62  phaseModel,
63  rhoFluidThermo
64  >
65  >
66  >
67  >
68  >
70 
72  (
73  phaseModel,
77  );
78 
79  typedef
81  <
83  <
85  <
87  <
89  <
90  phaseModel,
92  >
93  >
94  >
95  >
96  >
98 
100  (
101  phaseModel,
103  phaseSystem,
105  );
106 
107  typedef
109  <
111  <
113  <
115  <
117  <
118  phaseModel,
120  >
121  >
122  >
123  >
124  >
126 
128  (
129  phaseModel,
131  phaseSystem,
133  );
134 
135  typedef
137  <
139  <
141  <
143  <
145  <
146  phaseModel,
148  >
149  >
150  >
151  >
152  >
154 
156  (
157  phaseModel,
159  phaseSystem,
161  );
162 
163  typedef
165  <
167  <
169  <
171  <
173  <
174  phaseModel,
176  >
177  >
178  >
179  >
180  >
182 
184  (
185  phaseModel,
187  phaseSystem,
189  );
190 
191  // Also add multicomponentPhaseModel with the name multiComponentPhaseModel
192  // for backward-compatibility
194  (
195  phaseModel,
197  phaseSystem,
198  multiComponentPhaseModel
199  );
200 
201  typedef
203  <
205  <
207  <
209  <
211  <
212  phaseModel,
214  >
215  >
216  >
217  >
218  >
220 
222  (
223  phaseModel,
225  phaseSystem,
227  );
228 
229  typedef
231  <
233  <
235  <
237  <
239  <
240  phaseModel,
242  >
243  >
244  >
245  >
246  >
248 
250  (
251  phaseModel,
253  phaseSystem,
255  );
256 }
257 
258 // ************************************************************************* //
Macros for easy insertion into run-time selection tables.
Class which represents an inert phase, with no reactions. Returns zero reaction rate and heat.
Class which represents a phase for which the temperature remains constant. Returns an empty energy eq...
Class which represents a moving fluid phase. Holds the velocity, fluxes and momentumTransport model a...
Class which represents a phase with multiple species. Returns the species' mass fractions,...
Class which represents pure phases, i.e. without any species. Returns an empty list of mass fractions...
Class which represents phases with volumetric reactions. Returns the reaction rate and heat.
Class which represents a solid phase for which the temperature (strictly energy) remains constant....
Class which represents a solid stationary phase for which the temperature (strictly energy) varies....
Class which represents a solid phase with a thermodynamic model. Provides access to the thermodynamic...
Class which represents a stationary (and therefore probably solid) phase. Generates,...
Class which represents a phase for which the temperature (strictly energy) varies....
Class which represents a phase with a thermodynamic model. Provides access to the thermodynamic varia...
Class to represent a system of phases.
Definition: phaseSystem.H:74
Base-class for multi-component fluid thermodynamic properties based on density.
Base-class for fluid thermodynamic properties based on density.
Base-class for solid thermodynamic properties.
Definition: solidThermo.H:59
Namespace for OpenFOAM.
addNamedToRunTimeSelectionTable(parcelCloud, collidingCloud, viscosity, collidingCloud)
PurePhaseModel< ThermalPhaseModel< InertPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidThermo > > > > > purePhaseModel
Definition: phaseModels.C:69
MulticomponentPhaseModel< IsothermalThermophysicalTransportPhaseModel< InertPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidMulticomponentThermo > > > > > multicomponentIsothermalPhaseModel
Definition: phaseModels.C:219
PurePhaseModel< SolidIsothermalPhaseModel< InertPhaseModel< StationaryPhaseModel< SolidThermoPhaseModel< phaseModel, solidThermo > > > > > pureStationaryIsothermalPhaseModel
Definition: phaseModels.C:153
PurePhaseModel< IsothermalPhaseModel< InertPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidThermo > > > > > pureIsothermalPhaseModel
Definition: phaseModels.C:125
MulticomponentPhaseModel< ThermalPhaseModel< InertPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidMulticomponentThermo > > > > > multicomponentPhaseModel
Definition: phaseModels.C:181
PurePhaseModel< SolidThermalPhaseModel< InertPhaseModel< StationaryPhaseModel< SolidThermoPhaseModel< phaseModel, solidThermo > > > > > pureStationaryPhaseModel
Definition: phaseModels.C:97
MulticomponentPhaseModel< ThermalPhaseModel< ReactingPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidMulticomponentThermo > > > > > reactingPhaseModel
Definition: phaseModels.C:247