kOmegaSST.H
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) 2007-2019, 2022 PCOpt/NTUA
9 Copyright (C) 2013-2019, 2022 FOSS GP
10 Copyright (C) 2019 OpenCFD Ltd.
11-------------------------------------------------------------------------------
12License
13 This file is part of OpenFOAM.
14
15 OpenFOAM is free software: you can redistribute it and/or modify it
16 under the terms of the GNU General Public License as published by
17 the Free Software Foundation, either version 3 of the License, or
18 (at your option) any later version.
19
20 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
21 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
22 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
23 for more details.
24
25 You should have received a copy of the GNU General Public License
26 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
27
28
29Class
30 Foam::incompressible::RASVariables::kOmegaSST
31
32Description
33
34SourceFiles
35 kOmegaSST.C
36
37\*---------------------------------------------------------------------------*/
38
39#ifndef incompressible_RASVariables_kOmegaSST_H
40#define incompressible_RASVariables_kOmegaSST_H
41
42#include "RASModelVariables.H"
43
44// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46namespace Foam
47{
48namespace incompressible
49{
50namespace RASVariables
51{
52
53/*---------------------------------------------------------------------------*\
54 Class kOmegaSST Declaration
55\*---------------------------------------------------------------------------*/
57class kOmegaSST
58:
60{
61
62protected:
63
64 // Protected data
65
66 //- Average of the production term
67 // Avaraged separetely due the bi-zonal treatment next to the wall
69
70
71 // Protected Member functions
72
73 virtual void allocateMeanFields();
75
76
77public:
78
79 //- Runtime type information
80 TypeName("kOmegaSST");
81
82
83 // Constructors
84
85 //- Construct from components
87 (
88 const fvMesh& mesh,
89 const solverControl& SolverControl
90 );
91
92
93 //- Destructor
94 virtual ~kOmegaSST() = default;
95
96
97 // Member Functions
98
99 //- Return the turbulence production term
101
102 //- Compute mean fields on the fly
103 virtual void computeMeanFields();
104
105 // Bools to identify which turbulent fields are present
106 inline virtual bool hasTMVar1() const
107 {
108 return true;
110 inline virtual bool hasTMVar2() const
111 {
112 return true;
114 inline virtual bool hasNut() const
115 {
116 return true;
117 }
118
119 //- Correct boundary conditions of turbulent fields
120 virtual void correctBoundaryConditions
121 (
122 const incompressible::turbulenceModel& turbulence
123 );
124};
125
126
127// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
128
129} // End namespace RASVariables
130} // End namespace incompressible
131} // End namespace Foam
132
133// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
134
135#endif
136
137// ************************************************************************* //
Templated abstract base class for single-phase incompressible turbulence models.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition: autoPtr.H:66
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:91
Abstract base class for objective functions. No point in making this runTime selectable since its chi...
tmp< volScalarField::Internal > computeG()
Definition: kOmegaSST.C:100
TypeName("kOmegaSST")
Runtime type information.
virtual tmp< volScalarField::Internal > G()
Return the turbulence production term.
Definition: kOmegaSST.C:135
virtual ~kOmegaSST()=default
Destructor.
virtual bool hasTMVar1() const
Bools to identify which turbulent fields are present.
Definition: kOmegaSST.H:105
virtual void computeMeanFields()
Compute mean fields on the fly.
Definition: kOmegaSST.C:149
autoPtr< volScalarField::Internal > GMean_
Average of the production term.
Definition: kOmegaSST.H:67
Base class for solver control classes.
Definition: solverControl.H:52
A class for managing temporary objects.
Definition: tmp.H:65
dynamicFvMesh & mesh
Namespace for OpenFOAM.
cellMask correctBoundaryConditions()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73