Documentation 6b54b78464
Loading...
Searching...
No Matches
CPolynomialConductivity.hpp
Go to the documentation of this file.
1/*!
2 * \file CPolynomialConductivity.hpp
3 * \brief Defines a non-constant laminar thermal conductivity using a polynomial function of temperature.
4 * \author 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
31
32/*!
33 * \class CPolynomialConductivity
34 * \brief Defines a non-constant laminar thermal conductivity using a polynomial function of temperature.
35 * \author T. Economon
36 */
37template <int N>
39 public:
40 /*!
41 * \brief Constructor of the class.
42 */
44 for (int i = 0; i < N; ++i) {
45 coeffs_[i] = val_coeffs[i];
46 }
47 }
48
49 /*!
50 * \brief Set thermal conductivity.
51 */
53 su2double, su2double) override {
54 /* Evaluate the new kt from the coefficients and temperature. */
55 kt_ = coeffs_[0];
56 su2double t_i = 1.0;
57 for (int i = 1; i < N; ++i) {
58 t_i *= t;
59 kt_ += coeffs_[i] * t_i;
60 }
61 }
62
63 private:
64 array<su2double, N> coeffs_; /*!< \brief Polynomial coefficients for conductivity as a function of temperature. */
65};
Defines an interface class for thermal conductivity models.
Interface class for defining the thermal conductivity model.
Definition CConductivityModel.hpp:39
su2double kt_
Thermal conductivity.
Definition CConductivityModel.hpp:68
Defines a non-constant laminar thermal conductivity using a polynomial function of temperature.
Definition CPolynomialConductivity.hpp:38
CPolynomialConductivity(const su2double *val_coeffs)
Constructor of the class.
Definition CPolynomialConductivity.hpp:43
void SetConductivity(su2double t, su2double rho, su2double mu_lam, su2double mu_turb, su2double cp, su2double, su2double) override
Set thermal conductivity.
Definition CPolynomialConductivity.hpp:52
passivedouble su2double
Definition code_config.hpp:181