InterfaceCompositionModels.C
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ========= |
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 \\ / O peration |
5 \\ / A nd | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2017-2022 OpenCFD Ltd.
9-------------------------------------------------------------------------------
10License
11 This file is part of OpenFOAM.
12
13 OpenFOAM is free software: you can redistribute it and/or modify it
14 under the terms of the GNU General Public License as published by
15 the Free Software Foundation, either version 3 of the License, or
16 (at your option) any later version.
17
18 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 for more details.
22
23 You should have received a copy of the GNU General Public License
24 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26\*---------------------------------------------------------------------------*/
27
29
30// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
31
32#include "thermoPhysicsTypes.H"
33
34#include "rhoConst.H"
35#include "perfectFluid.H"
36#include "Boussinesq.H"
37
38#include "pureMixture.H"
40#include "reactingMixture.H"
41#include "SpecieMixture.H"
42
43#include "rhoThermo.H"
44#include "rhoReactionThermo.H"
45#include "heRhoThermo.H"
46
47#include "solidThermo.H"
48#include "heSolidThermo.H"
50
52#include "Lee.H"
53#include "interfaceHeatResistance.H"
54#include "interfaceOxideRate.H"
56
57// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
58
59namespace Foam
60{
61 typedef
62 constTransport
63 <
64 species::thermo
65 <
66 hConstThermo
67 <
68 rhoConst<specie>
69 >,
70 sensibleEnthalpy
71 >
73
74
75 typedef
77 <
79 <
81 <
83 >,
85 >
87};
88
89
90// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
91
92namespace Foam
93{
94 using namespace meltingEvaporationModels;
95
96 //NOTE: First thermo (from) and second otherThermo (to)
97
98 // kineticGasEvaporation model definitions
99
100 // From pure liquid (rhoConst) to a multi-component gas incomp phase
102 (
105 rhoThermo,
112 );
113
114 // From pure liquid (BoussinesqFluid) to a multi-component gas incomp
115 // phase
117 (
120 rhoThermo,
127 );
128
129
130 // From pure liquid (rhoConst) to pure gas (incompressible ideal gas)
132 (
135 rhoThermo,
139 rhoThermo,
142 );
143
144 // From pure liquid (const rho) to pure gas (rhoConst) gas
146 (
149 rhoThermo,
153 rhoThermo,
156 );
157
158
159 // From pure liquid (Boussinesq) to pure gas (incompressible ideal gas)
161 (
164 rhoThermo,
168 rhoThermo,
171 );
172
173 // From pure liquid (Boussinesq) to pure gas (rho const)
175 (
178 rhoThermo,
182 rhoThermo,
185 );
186
187
188 // Lee model definitions
189
190 // From pure phase (rho const) to phase (rho const)
192 (
193 Lee,
195 rhoThermo,
199 rhoThermo,
202 );
203
204 // From pure phase (rho const) to phase (Boussinesq)
206 (
207 Lee,
209 rhoThermo,
213 rhoThermo,
216 );
217
218
219 // From pure solid phase (const) to phase (Boussinesq)
221 (
222 Lee,
228 rhoThermo,
231 );
232
233 // From pure solid phase (const) to phase (rho const)
235 (
236 Lee,
242 rhoThermo,
245 );
246
247 // From pure solid phase (const) to phase (tabulated)
249 (
250 Lee,
256 rhoThermo,
259 );
260
261 // From pure solid phase (const) to phase (poly)
263 (
264 Lee,
270 rhoThermo,
273 );
274
275 // From pure solid phase (poly) to flow phase (poly)
277 (
278 Lee,
284 rhoThermo,
287 );
288
289 // From pure solid phase (poly) to flow phase (tabulated)
291 (
292 Lee,
298 rhoThermo,
301 );
302
303 // From pure solid tabulated to pure tabulated flow
305 (
306 Lee,
312 rhoThermo,
315 );
316
317 // From pure phase (exp-Transp, hPower solidThermo) to phase (ico-rho)
319 (
320 Lee,
326 rhoThermo,
329 );
330
331
332 // From pure phase (const rho) to multi phase (incomp ideal gas)
334 (
335 Lee,
337 rhoThermo,
344 );
345
346
347 // From pure phase (Boussinesq) to phase (solidThermo)
349 (
350 Lee,
352 rhoThermo,
359 );
360
361 // From pure phase (rho const) to phase (solidThermo)
363 (
364 Lee,
366 rhoThermo,
373 );
374
375 //From pure phase (poly) to solid phase (exp)
377 (
378 Lee,
380 rhoThermo,
387 );
388
389 //From pure phase (poly) to solid phase (poly)
391 (
392 Lee,
394 rhoThermo,
401 );
402
403 //From pure phase (poly) to solid phase (const)
405 (
406 Lee,
408 rhoThermo,
415 );
416
417 //From pure phase (tabulated) to solid phase (poly)
419 (
420 Lee,
422 rhoThermo,
429 );
430
431 //From pure phase (tabulated) to solid phase (const)
433 (
434 Lee,
436 rhoThermo,
443 );
444
446 (
447 Lee,
449 rhoThermo,
456 );
457
459 (
460 Lee,
462 rhoThermo,
469 );
470
472 (
473 Lee,
475 rhoThermo,
482 );
483
484 // From pure phase (tabulated) to solid phase (icoTabulated)
486 (
487 Lee,
489 rhoThermo,
496 );
497
498 // From solid phase (icoTabulated) to pure phase (tabulated)
500 (
501 Lee,
507 rhoThermo,
510 );
511
512
513 // interfaceHeatResistance model definitions
514
515 // From pure phase (rho const) to phase (rho const)
517 (
520 rhoThermo,
524 rhoThermo,
527 );
528
529 // From pure phase (rho const) to phase (Boussinesq)
531 (
534 rhoThermo,
538 rhoThermo,
541 );
542
543
544 // From pure phase (solidThermo) to phase (Boussinesq)
546 (
553 rhoThermo,
556 );
557
558 // From pure phase (solidThermo) to phase (rho const)
560 (
567 rhoThermo,
570 );
571
572 // From pure phase (all-poly solidThermo) to phase (ico-rho)
574 (
581 rhoThermo,
584 );
585
586 // From pure phase (exp-Transp, hPower solidThermo) to phase (ico-rho)
588 (
595 rhoThermo,
598 );
599
600
601 // From pure phase (const rho) to multi phase (incomp ideal gas)
603 (
606 rhoThermo,
613 );
614
615
616 // From pure phase (Boussinesq) to phase (solidThermo)
618 (
621 rhoThermo,
628 );
629
630 // From pure phase (rho const) to phase (solidThermo)
632 (
635 rhoThermo,
642 );
643
644 //From pure liquid phase (ico-rho) to pure phase (exp-Transp, hPower solidThermo)
646 (
649 rhoThermo,
656 );
657
658
659 // interfaceOxideRate model definitions
660
661 // From pure phase (tabulated) to solid phase (const)
663 (
666 rhoThermo,
673 );
674
675 // From pure phase (rho const) to phase (rho const)
677 (
680 rhoThermo,
684 rhoThermo,
687 );
688
689 // From pure phase (ico) to solid phase (const)
691 (
694 rhoThermo,
701 );
702
703 // From pure phase (tabulated) to phase (rho const)
705 (
708 rhoThermo,
712 rhoThermo,
715 );
716
717 // From pure phase (ico) to phase (rho const)
719 (
722 rhoThermo,
726 rhoThermo,
729 );
730
731
732 // diffusionGasEvaporation model definitions
733
734 // From pure liquid (rhoConst) to a multi-component gas incomp phase
736 (
739 rhoThermo,
746 );
747
748
749 // From pure liquid (BoussinesqFluid) to a multi-component gas incomp
750 // phase
752 (
755 rhoThermo,
762 );
763}
764
765
766// ************************************************************************* //
Macros for easy insertion into run-time selection tables.
Incompressible gas equation of state using the Boussinesq approximation for the density as a function...
Definition: Boussinesq.H:96
Constant properties Transport package. Templated into a given thermodynamics package (needed for ther...
Constant properties Transport package. Templated into a given thermodynamics package (needed for ther...
Exponential properties for solid heat transport Templated into a given thermodynamics package.
Constant properties thermodynamics package templated into the EquationOfState.
Definition: hConstThermo.H:91
Energy for a mixture based on density.
Definition: heRhoThermo.H:56
Energy for a solid mixture.
Definition: heSolidThermo.H:55
Mass transfer Lee model. Simple model driven by field value difference as:
Definition: Lee.H:134
Gas diffusion based evaporation/condensation mass transfer model.
Interface Heat Resistance type of condensation/saturation model using spread source distribution foll...
The interfaceOxideRate is a simple model to calculate the formation rate of oxide inclusions (mDotOxi...
Considering the Hertz Knudsen formula, which gives the evaporation-condensation flux based on the kin...
Foam::multiComponentMixture.
Transport package using polynomial functions for solid kappa.
Transport package using polynomial functions for mu and kappa.
Foam::pureMixture.
Definition: pureMixture.H:54
Foam::rhoReactionThermo.
Basic thermodynamic properties based on density.
Definition: rhoThermo.H:58
Thermodynamics mapping class to expose the sensible enthalpy functions.
Fundamental solid thermodynamic properties.
Definition: solidThermo.H:55
Transport properties package using non-uniform tabulated data for thermal conductivity vs temperature...
Transport properties package using non-uniform tabulated data for viscosity and thermal conductivity ...
#define makeInterfaceContSpecieMixtureType(Type, Thermo, Comp, Mix, Phys, OtherThermo, OtherComp, OtherMix, OtherPhys)
#define makeInterfacePureType(Type, Thermo, Comp, Mix, Phys, OtherThermo, OtherComp, OtherMix, OtherPhys)
Namespace for OpenFOAM.
constTransport< species::thermo< hConstThermo< rhoConst< specie > >, sensibleEnthalpy > > constRhoHThermoPhysics
constTransport< species::thermo< hConstThermo< Boussinesq< specie > >, sensibleEnthalpy > > BoussinesqFluidEThermoPhysics
Type definitions for solid-thermo-physics models.
Type definitions for thermo-physics models.