Documentation 6b54b78464
Loading...
Searching...
No Matches
CViscosityModel.hpp
Go to the documentation of this file.
1/*!
2 * \file CViscosityModel.hpp
3 * \brief Interface class for defining laminar viscosity models.
4 * \author S. Vitale, M. Pini, G. Gori, A. Guardone, P. Colonna, T. Economon
5 * \version 8.5.0 "Harrier"
6 *
7 * SU2 Project Website: https://su2code.github.io
8 *
9 * The SU2 Project is maintained by the SU2 Foundation
10 * (http://su2foundation.org)
11 *
12 * Copyright 2012-2026, SU2 Contributors (cf. AUTHORS.md)
13 *
14 * SU2 is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Lesser General Public
16 * License as published by the Free Software Foundation; either
17 * version 2.1 of the License, or (at your option) any later version.
18 *
19 * SU2 is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * Lesser General Public License for more details.
23 *
24 * You should have received a copy of the GNU Lesser General Public
25 * License along with SU2. If not, see <http://www.gnu.org/licenses/>.
26 */
27
28#pragma once
29
30#include "../../../Common/include/basic_types/datatype_structure.hpp"
31
32using namespace std;
33
34/*!
35 * \class CViscosityModel
36 * \brief Interface class for defining the laminar viscosity model.
37 * \author S.Vitale, M.Pini
38 */
40 public:
41 CViscosityModel() = default;
43 void operator=(const CViscosityModel&) = delete;
44 virtual ~CViscosityModel() {}
45
46 /*!
47 * \brief return viscosity value.
48 */
49 inline su2double GetViscosity() const { return mu_; }
50
51 /*!
52 * \brief return viscosity partial derivative value.
53 */
54 inline su2double Getdmudrho_T() const { return dmudrho_t_; }
55
56 /*!
57 * \brief return viscosity partial derivative value.
58 */
59 inline su2double GetdmudT_rho() const { return dmudt_rho_; }
60
61 /*!
62 * \brief Set Viscosity.
63 */
64 virtual void SetViscosity(su2double t, su2double rho) = 0;
65
66 protected:
67 su2double mu_{0.0}; /*!< \brief Dynamic viscosity. */
68 su2double dmudrho_t_{0.0}; /*!< \brief DmuDrho_T. */
69 su2double dmudt_rho_{0.0}; /*!< \brief DmuDT_rho. */
70};
Interface class for defining the laminar viscosity model.
Definition CViscosityModel.hpp:39
su2double GetdmudT_rho() const
return viscosity partial derivative value.
Definition CViscosityModel.hpp:59
su2double GetViscosity() const
return viscosity value.
Definition CViscosityModel.hpp:49
su2double Getdmudrho_T() const
return viscosity partial derivative value.
Definition CViscosityModel.hpp:54
su2double mu_
Dynamic viscosity.
Definition CViscosityModel.hpp:67
void operator=(const CViscosityModel &)=delete
su2double dmudt_rho_
DmuDT_rho.
Definition CViscosityModel.hpp:69
su2double dmudrho_t_
DmuDrho_T.
Definition CViscosityModel.hpp:68
CViscosityModel()=default
CViscosityModel(const CViscosityModel &)=delete
virtual void SetViscosity(su2double t, su2double rho)=0
Set Viscosity.
virtual ~CViscosityModel()
Definition CViscosityModel.hpp:44
passivedouble su2double
Definition code_config.hpp:181