phaseCompressibleTurbulenceModels.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) 2014-2016 OpenFOAM Foundation
9 Copyright (C) 2020 OpenCFD Ltd.
10-------------------------------------------------------------------------------
11License
12 This file is part of OpenFOAM.
13
14 OpenFOAM is free software: you can redistribute it and/or modify it
15 under the terms of the GNU General Public License as published by
16 the Free Software Foundation, either version 3 of the License, or
17 (at your option) any later version.
18
19 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 for more details.
23
24 You should have received a copy of the GNU General Public License
25 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27\*---------------------------------------------------------------------------*/
28
30#include "phaseModel.H"
31#include "twoPhaseSystem.H"
33#include "makeTurbulenceModel.H"
34
35#include "ThermalDiffusivity.H"
36#include "EddyDiffusivity.H"
37
38#include "laminarModel.H"
39#include "RASModel.H"
40#include "LESModel.H"
41
42// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43
44// Base models defined in compressibleTwoPhaseSystem
45//
46// Additional models only
47
48// Typedefs
50(
51 volScalarField,
52 volScalarField,
53 compressibleTurbulenceModel,
54 PhaseCompressibleTurbulenceModel,
55 ThermalDiffusivity,
56 phaseModel
57);
58
59#define makeLaminarModel(Type) \
60 makeTemplatedLaminarModel \
61 (phaseModelPhaseCompressibleTurbulenceModel, laminar, Type)
62
63#define makeRASModel(Type) \
64 makeTemplatedTurbulenceModel \
65 (phaseModelPhaseCompressibleTurbulenceModel, RAS, Type)
66
67#define makeLESModel(Type) \
68 makeTemplatedTurbulenceModel \
69 (phaseModelPhaseCompressibleTurbulenceModel, LES, Type)
70
71// -------------------------------------------------------------------------- //
72// Laminar models
73// -------------------------------------------------------------------------- //
74
75// #include "Stokes.H"
76
77
78// -------------------------------------------------------------------------- //
79// RAS models
80// -------------------------------------------------------------------------- //
81
82#include "kEpsilon.H"
83makeRASModel(kEpsilon);
84
85#include "kOmegaSST.H"
86makeRASModel(kOmegaSST);
87
88#include "kOmegaSSTSato.H"
89makeRASModel(kOmegaSSTSato);
90
91#include "mixtureKEpsilon.H"
92makeRASModel(mixtureKEpsilon);
93
94#include "LaheyKEpsilon.H"
95makeRASModel(LaheyKEpsilon);
96
98makeRASModel(continuousGasKEpsilon);
99
100
101// -------------------------------------------------------------------------- //
102// LES models
103// -------------------------------------------------------------------------- //
104
105#include "Smagorinsky.H"
106makeLESModel(Smagorinsky);
107
108#include "kEqn.H"
110
111#include "SmagorinskyZhang.H"
112makeLESModel(SmagorinskyZhang);
113
114#include "NicenoKEqn.H"
115makeLESModel(NicenoKEqn);
116
117#include "continuousGasKEqn.H"
118makeLESModel(continuousGasKEqn);
119
120
121// -------------------------------------------------------------------------- //
122// Additional models
123// -------------------------------------------------------------------------- //
124
125#include "kineticTheoryModel.H"
127(phaseModelPhaseCompressibleTurbulenceModel, RAS, kineticTheoryModel);
128
129#include "phasePressureModel.H"
131(phaseModelPhaseCompressibleTurbulenceModel, RAS, phasePressureModel);
132
133
134// ************************************************************************* //
Macros for easy insertion into run-time selection tables.
Kinetic theory particle phase RAS model.
Particle-particle phase-pressure RAS model.
#define defineTurbulenceModelTypes( Alpha, Rho, baseModel, BaseModel, TDModel, Transport)
Define turbulence model typedefs, with EddyDiffusivity.
#define makeTurbulenceModel(BaseModel, SType, Type)
#define makeRASModel(Type)
#define makeLESModel(Type)