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-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 \*---------------------------------------------------------------------------*/
25 
27 
28 #include "rhoFluidThermo.H"
30 
31 #include "solidThermo.H"
32 
33 #include "combustionModel.H"
34 
35 #include "phaseModel.H"
36 #include "ThermoPhaseModel.H"
37 #include "SolidThermoPhaseModel.H"
38 #include "IsothermalPhaseModel.H"
39 #include "AnisothermalPhaseModel.H"
41 #include "SolidThermalPhaseModel.H"
42 #include "PurePhaseModel.H"
44 #include "InertPhaseModel.H"
45 #include "ReactingPhaseModel.H"
46 #include "MovingPhaseModel.H"
47 #include "StationaryPhaseModel.H"
48 
49 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50 
51 namespace Foam
52 {
53  typedef
54  AnisothermalPhaseModel
55  <
56  PurePhaseModel
57  <
58  InertPhaseModel
59  <
60  MovingPhaseModel
61  <
62  ThermoPhaseModel
63  <
64  phaseModel,
65  rhoFluidThermo
66  >
67  >
68  >
69  >
70  >
72 
74  (
75  phaseModel,
79  );
80 
81  typedef
83  <
85  <
87  <
89  <
91  <
92  phaseModel,
94  >
95  >
96  >
97  >
98  >
100 
102  (
103  phaseModel,
105  phaseSystem,
107  );
108 
109  typedef
111  <
113  <
115  <
117  <
119  <
120  phaseModel,
122  >
123  >
124  >
125  >
126  >
128 
130  (
131  phaseModel,
133  phaseSystem,
135  );
136 
137  typedef
139  <
141  <
143  <
145  <
147  <
148  phaseModel,
150  >
151  >
152  >
153  >
154  >
156 
158  (
159  phaseModel,
161  phaseSystem,
163  );
164 
165  typedef
167  <
169  <
171  <
173  <
175  <
176  phaseModel,
178  >
179  >
180  >
181  >
182  >
184 
186  (
187  phaseModel,
189  phaseSystem,
191  );
192 
193  // Also add multicomponentPhaseModel with the name multiComponentPhaseModel
194  // for backward-compatibility
196  (
197  phaseModel,
199  phaseSystem,
200  multiComponentPhaseModel
201  );
202 
203  typedef
205  <
207  <
209  <
211  <
213  <
214  phaseModel,
216  >
217  >
218  >
219  >
220  >
222 
224  (
225  phaseModel,
227  phaseSystem,
229  );
230 }
231 
232 // ************************************************************************* //
Macros for easy insertion into run-time selection tables.
Class which represents a phase for which the temperature (strictly energy) varies....
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 solid phase for which the temperature (strictly energy) remains constant....
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 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 with a thermodynamic model. Provides access to the thermodynamic varia...
Class to represent a system of phases and model interfacial transfers between them.
Definition: phaseSystem.H:73
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.
MulticomponentPhaseModel< AnisothermalPhaseModel< InertPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidMulticomponentThermo > > > > > multicomponentPhaseModel
Definition: phaseModels.C:183
SolidThermalPhaseModel< PurePhaseModel< InertPhaseModel< StationaryPhaseModel< SolidThermoPhaseModel< phaseModel, solidThermo > > > > > pureStationaryPhaseModel
Definition: phaseModels.C:99
addNamedToRunTimeSelectionTable(parcelCloud, collidingCloud, viscosity, collidingCloud)
AnisothermalPhaseModel< PurePhaseModel< InertPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidThermo > > > > > purePhaseModel
Definition: phaseModels.C:71
MulticomponentPhaseModel< AnisothermalPhaseModel< ReactingPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidMulticomponentThermo > > > > > reactingPhaseModel
Definition: phaseModels.C:221
IsothermalPhaseModel< PurePhaseModel< InertPhaseModel< MovingPhaseModel< ThermoPhaseModel< phaseModel, rhoFluidThermo > > > > > pureIsothermalPhaseModel
Definition: phaseModels.C:127
IsothermalSolidPhaseModel< PurePhaseModel< InertPhaseModel< StationaryPhaseModel< SolidThermoPhaseModel< phaseModel, solidThermo > > > > > pureStationaryIsothermalPhaseModel
Definition: phaseModels.C:155