DPMTurbulenceModels.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) 2020 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
31#include "makeTurbulenceModel.H"
32
33#include "laminarModel.H"
34#include "RASModel.H"
35#include "LESModel.H"
36
37// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
38
40(
41 volScalarField,
42 geometricOneField,
43 incompressibleTurbulenceModel,
44 DPMIncompressibleTurbulenceModel,
45 singlePhaseTransportModel
46);
47
49(
50 volScalarField,
51 geometricOneField,
52 incompressibleTurbulenceModel,
53 DPMIncompressibleTurbulenceModel,
54 singlePhaseTransportModel
55);
56
57#define makeLaminarModel(Type) \
58 makeTemplatedTurbulenceModel \
59 (singlePhaseTransportModelDPMIncompressibleTurbulenceModel, laminar, Type)
60
61#define makeRASModel(Type) \
62 makeTemplatedTurbulenceModel \
63 (singlePhaseTransportModelDPMIncompressibleTurbulenceModel, RAS, Type)
64
65#define makeLESModel(Type) \
66 makeTemplatedTurbulenceModel \
67 (singlePhaseTransportModelDPMIncompressibleTurbulenceModel, LES, Type)
68
69#include "Stokes.H"
70makeLaminarModel(Stokes);
71
72#include "kEpsilon.H"
73makeRASModel(kEpsilon);
74
75#include "realizableKE.H"
76makeRASModel(realizableKE);
77
78#include "kOmegaSST.H"
79makeRASModel(kOmegaSST);
80
81#include "Smagorinsky.H"
82makeLESModel(Smagorinsky);
83
84#include "kEqn.H"
85makeLESModel(kEqn);
86
87// ************************************************************************* //
Macros for easy insertion into run-time selection tables.
#define makeLaminarModel(Type)
#define makeRASModel(Type)
#define makeLESModel(Type)
#define defineTurbulenceModelTypes( Alpha, Rho, baseModel, BaseModel, TDModel, Transport)
Define turbulence model typedefs, with EddyDiffusivity.
#define makeBaseTurbulenceModel( Alpha, Rho, baseModel, BaseModel, TDModel, Transport)