SpalartAllmaras.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 -------------------------------------------------------------------------------
12 License
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 
29 Class
30  Foam::incompressible::RASVariables::SpalartAllmaras
31 
32 Description
33 
34 SourceFiles
35  SpalartAllmaras.C
36 
37 \*---------------------------------------------------------------------------*/
38 
39 #ifndef incompressible_RASVariables_SpalartAllmaras_H
40 #define incompressible_RASVariables_SpalartAllmaras_H
41 
42 #include "RASModelVariables.H"
43 
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 
46 namespace Foam
47 {
48 namespace incompressible
49 {
50 namespace RASVariables
51 {
52 
53 /*---------------------------------------------------------------------------*\
54  Class SpalartAllmaras Declaration
55 \*---------------------------------------------------------------------------*/
56 
57 class SpalartAllmaras
58 :
59  public RASModelVariables
60 {
61 
62 public:
63 
64  //- Runtime type information
65  TypeName("SpalartAllmaras");
66 
67 
68  // Constructors
69 
70  //- Construct from components
72  (
73  const fvMesh& mesh,
74  const solverControl& SolverControl
75  );
76 
77 
78  //- Destructor
79  virtual ~SpalartAllmaras() = default;
80 
81 
82  // Member Functions
83 
84  // Bools to identify which turbulent fields are present
85  inline virtual bool hasTMVar1() const
86  {
87  return true;
88  }
89  inline virtual bool hasTMVar2() const
90  {
91  return false;
92  }
93  inline virtual bool hasNut() const
94  {
95  return true;
96  }
97 
98  //- return nut Jacobian wrt the TM vars
100  (
102  ) const;
103 };
104 
105 
106 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
107 
108 } // End namespace RASVariables
109 } // End namespace incompressible
110 } // End namespace Foam
111 
112 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
113 
114 #endif
115 
116 // ************************************************************************* //
TypeName("SpalartAllmaras")
Runtime type information.
virtual tmp< volScalarField > nutJacobianVar1(const singlePhaseTransportModel &laminarTransport) const
return nut Jacobian wrt the TM vars
singlePhaseTransportModel laminarTransport(U, phi)
SpalartAllmaras(const fvMesh &mesh, const solverControl &SolverControl)
Construct from components.
dynamicFvMesh & mesh
Base class for solver control classes.
Definition: solverControl.H:45
Abstract base class for objective functions. No point in making this runTime selectable since its chi...
virtual ~SpalartAllmaras()=default
Destructor.
virtual bool hasTMVar1() const
Bools to identify which turbulent fields are present.
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:79
A class for managing temporary objects.
Definition: HashPtrTable.H:50
A simple single-phase transport model based on viscosityModel.
Namespace for OpenFOAM.