@@ -39,8 +39,10 @@ class CNEMOGas : public CFluidModel {
3939
4040protected:
4141
42- bool frozen; /* !< \brief Indicates if mixture is frozen. */
43-
42+ bool frozen, /* !< \brief Indicates if mixture is frozen. */
43+ ionization; /* !< \brief Presence of charged species in gas mixture. */
44+
45+ string Kind_GasModel; /* !< \brief String gas model. */
4446
4547 unsigned short nSpecies, /* !< \brief Number of species in the gas mixture. */
4648 nHeavy, /* !< \brief Number of heavy particles in gas */
@@ -77,14 +79,16 @@ class CNEMOGas : public CFluidModel {
7779 hs, /* !< \brief Species enthalpies */
7880 MolarFractions, /* !< \brief Species molar fractions */
7981 ws, /* !< \brief Species net production rates */
80- DiffusionCoeff; /* !< \brief Species diffusion coefficients*/
82+ DiffusionCoeff, /* !< \brief Species diffusion coefficients*/
83+ Enthalpy_Formation, /* !< \brief Enthalpy of formation */
84+ Ref_Temperature; /* !< \brief Reference temperature for thermodynamic relations */
8185
8286public:
8387
8488 /* !
8589 * \brief Constructor of the class.
8690 */
87- CNEMOGas (const CConfig* config);
91+ CNEMOGas (const CConfig* config, unsigned short val_nDim );
8892
8993 /* !
9094 * \brief Set mixture thermodynamic state.
@@ -97,16 +101,16 @@ class CNEMOGas : public CFluidModel {
97101 /* !
98102 * \brief Set mixture thermodynamic state.
99103 * \param[in] P - Pressure.
104+ * \param[in] Ms - Mass fraction of the gas.
100105 * \param[in] T - Translational/Rotational temperature.
101106 * \param[in] Tve - Vibrational/Electronic temperature.
102107 */
103108 void SetTDStatePTTv (su2double P, const su2double *val_massfrac, su2double val_temperature, su2double val_temperature_ve);
104109
105-
106110 /* !
107111 * \brief Get species T-R specific heats at constant volume.
108112 */
109- virtual vector<su2double>& GetSpeciesCvTraRot () = 0;
113+ virtual const vector<su2double>& GetSpeciesCvTraRot () = 0;
110114
111115 /* !
112116 * \brief Get species V-E specific heats at constant volume.
@@ -136,7 +140,7 @@ class CNEMOGas : public CFluidModel {
136140 /* !
137141 * \brief Get species enthalpies.
138142 */
139- virtual vector<su2double>& GetSpeciesEnthalpy (su2double val_T, su2double *val_eves) = 0;
143+ virtual vector<su2double>& GetSpeciesEnthalpy (su2double val_T, su2double val_Tve, su2double *val_eves) = 0;
140144
141145 /* !
142146 * \brief Get species diffusion coefficients.
@@ -156,32 +160,37 @@ class CNEMOGas : public CFluidModel {
156160 /* !
157161 * \brief Get translational and vibrational temperatures vector.
158162 */
159- virtual vector<su2double>& GetTemperatures (vector<su2double>& rhos , su2double rhoEmix, su2double rhoEve, su2double rhoEvel) = 0;
163+ virtual vector<su2double>& GetTemperatures (vector<su2double>& val_rhos , su2double rhoEmix, su2double rhoEve, su2double rhoEvel) = 0;
160164
161165 /* !
162166 * \brief Get speed of sound.
163167 */
164- su2double GetSoundSpeed ();
168+ su2double ComputeSoundSpeed ();
165169
166170 /* !
167171 * \brief Get pressure.
168172 */
169- su2double GetPressure ();
173+ su2double ComputePressure ();
174+
175+ /* !
176+ * \brief Get gas constant.
177+ */
178+ su2double ComputeGasConstant ();
170179
171180 /* !
172181 * \brief Get derivative of pressure w.r.t. conservative variables.
173182 */
174- virtual void GetdPdU (su2double *V, vector<su2double>& val_eves, su2double *val_dPdU){}
183+ void ComputedPdU (su2double *V, vector<su2double>& val_eves, su2double *val_dPdU);
175184
176185 /* !
177186 * \brief Get derivative of temperature w.r.t. conservative variables.
178187 */
179- virtual void GetdTdU (su2double *V, su2double *val_dTdU){}
188+ void ComputedTdU (su2double *V, su2double *val_dTdU);
180189
181190 /* !
182191 * \brief Get derivative of vibrational temperature w.r.t. conservative variables.
183192 */
184- virtual void GetdTvedU (su2double *V, vector<su2double>& val_eves, su2double *val_dTvedU){}
193+ void ComputedTvedU (su2double *V, vector<su2double>& val_eves, su2double *val_dTvedU);
185194
186195 /* !
187196 * \brief Set the translational temperature.
@@ -198,11 +207,6 @@ class CNEMOGas : public CFluidModel {
198207 */
199208 inline void SetEves (vector<su2double>& val_eves) { eves = val_eves; }
200209
201- /* !
202- * \brief Get gas constant.
203- */
204- su2double GetGasConstant ();
205-
206210 /* !
207211 * \brief Get rhoCvtr.
208212 */
@@ -221,7 +225,15 @@ class CNEMOGas : public CFluidModel {
221225 /* !
222226 * \brief Get species molar mass.
223227 */
224- inline vector<su2double>& GetMolarMass () { return MolarMass; }
228+ virtual const vector<su2double>& GetSpeciesMolarMass () = 0;
225229
230+ /* !
231+ * \brief Get reference temperature.
232+ */
233+ virtual const vector<su2double>& GetRefTemperature () = 0;
226234
227- };
235+ /* !
236+ * \brief Get species formation enthalpy.
237+ */
238+ virtual const vector<su2double>& GetSpeciesFormationEnthalpy () = 0;
239+ };
0 commit comments