Documentation 6b54b78464
Loading...
Searching...
No Matches
NEMO_sources.hpp
Go to the documentation of this file.
1/*!
2 * \file NEMO_sources.hpp
3 * \brief Declarations of numerics classes for source-term integration.
4 * \author C. Garbacz, W. Maier, S. Copeland.
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 "CNEMONumerics.hpp"
31
32/*!
33 * \class CSource_NEMO
34 * \brief Class for two-temperature model source terms.
35 * \ingroup SourceDiscr
36 * \author C. Garbacz, W. Maier, S. Copeland.
37 * \version 8.5.0 "Harrier"
38 */
40private:
41
42 su2double *Y, **dYdr; // Mass fraction
43
44 su2double* residual = nullptr; /*!< \brief The source residual. */
45 su2double** jacobian = nullptr;
46public:
47
48 /*!
49 * \brief Constructor of the class.
50 * \param[in] val_nDim - Number of dimensions of the problem.
51 * \param[in] val_nVar - Number of variables of the problem.
52 * \param[in] config - Definition of the particular problem.
53 */
54 CSource_NEMO(unsigned short val_nDim,
55 unsigned short val_nVar,
56 unsigned short val_nPrimVar,
57 unsigned short val_nPrimVarGrad,
58 CConfig *config);
59
60 /*!
61 * \brief Destructor of the class.
62 */
63 ~CSource_NEMO(void);
64
65 /*!
66 * \brief Source residual of the chemistry.
67 * \param[in] config - Definition of the particular problem.
68 */
69 ResidualType<> ComputeChemistry(const CConfig* config) final;
70
71 /*!
72 * \brief Calculates constants used for Keq correlation.
73 * \param[out] A - Pointer to coefficient array.
74 * \param[in] val_reaction - Reaction number indicator.
75 * \param[in] config - Definition of the particular problem.
76 */
77 void ComputeKeqConstants(su2double *A, unsigned short val_reaction, CConfig *config);
78
79 /*!
80 * \brief Residual of the translational to vibrational energy.
81 * \param[in] config - Definition of the particular problem.
82 */
83 ResidualType<> ComputeVibRelaxation(const CConfig* config) final;
84
85 /*!
86 * \brief Residual of axissymetric source term.
87 * \param[in] config - Definition of the particular problem.
88 */
89 ResidualType<> ComputeAxisymmetric(const CConfig* config) final;
90};
91
#define A(I, J)
Base class template NEMO numerics.
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Base class template NEMO numerics.
Definition CNEMONumerics.hpp:41
Class for two-temperature model source terms.
Definition NEMO_sources.hpp:39
ResidualType ComputeChemistry(const CConfig *config) final
Source residual of the chemistry.
Definition NEMO_sources.cpp:69
void ComputeKeqConstants(su2double *A, unsigned short val_reaction, CConfig *config)
Calculates constants used for Keq correlation.
ResidualType ComputeAxisymmetric(const CConfig *config) final
Residual of axissymetric source term.
Definition NEMO_sources.cpp:170
~CSource_NEMO(void)
Destructor of the class.
Definition NEMO_sources.cpp:52
ResidualType ComputeVibRelaxation(const CConfig *config) final
Residual of the translational to vibrational energy.
Definition NEMO_sources.cpp:112
passivedouble su2double
Definition code_config.hpp:181
Return type used in some "ComputeResidual" overloads to give a const-view of the internally stored fl...
Definition CNumerics.hpp:218