www.mooseframework.org
SinglePhaseFluidPropertiesPT.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
8 #ifndef SINGLEPHASEFLUIDPROPERTIESPT_H
9 #define SINGLEPHASEFLUIDPROPERTIESPT_H
10 
11 #include "FluidProperties.h"
12 
14 
15 template <>
17 
23 {
24 public:
25  SinglePhaseFluidPropertiesPT(const InputParameters & parameters);
27 
32  virtual std::string fluidName() const = 0;
33 
38  virtual Real molarMass() const = 0;
39 
46  virtual Real rho(Real pressure, Real temperature) const = 0;
47 
56  virtual void
57  rho_dpT(Real pressure, Real temperature, Real & rho, Real & drho_dp, Real & drho_dT) const = 0;
58 
65  virtual Real e(Real pressure, Real temperature) const = 0;
66 
75  virtual void
76  e_dpT(Real pressure, Real temperature, Real & e, Real & de_dp, Real & de_dT) const = 0;
77 
89  virtual void rho_e_dpT(Real pressure,
90  Real temperature,
91  Real & rho,
92  Real & drho_dp,
93  Real & drho_dT,
94  Real & e,
95  Real & de_dp,
96  Real & de_dT) const = 0;
97 
104  virtual Real c(Real pressure, Real temperature) const = 0;
105 
112  virtual Real cp(Real pressure, Real temperature) const = 0;
113 
120  virtual Real cv(Real pressure, Real temperature) const = 0;
121 
128  virtual Real gamma(Real pressure, Real temperature) const;
129 
130  /*
131  * Dynamic viscosity
132  * @param pressure fluid pressure (Pa)
133  * @param temperature fluid temperature (K)
134  * @return viscosity (Pa.s)
135  */
136  virtual Real mu(Real pressure, Real temperature) const = 0;
137  /*
138  * Dynamic viscosity and its derivatives wrt pressure and temperature
139  * @param pressure fluid pressure (Pa)
140  * @param temperature fluid temperature (K)
141  * @param[out] mu viscosity (Pa.s)
142  * @param[out] dmu_dp derivative of viscosity wrt pressure
143  * @param[out] dmu_dT derivative of viscosity wrt temperature
144  */
145  virtual void
146  mu_dpT(Real pressure, Real temperature, Real & mu, Real & dmu_dp, Real & dmu_dT) const = 0;
147 
148  /*
149  * Dynamic viscosity as a function of density and temperature
150  * @param density fluid density (kg/m^3)
151  * @param temperature fluid temperature (K)
152  * @return viscosity (Pa.s)
153  */
154  virtual Real mu_from_rho_T(Real density, Real temperature) const = 0;
155 
165  virtual void mu_drhoT_from_rho_T(Real density,
166  Real temperature,
167  Real ddensity_dT,
168  Real & mu,
169  Real & dmu_drho,
170  Real & dmu_dT) const = 0;
177  virtual Real k(Real pressure, Real temperature) const = 0;
178 
187  virtual void
188  k_dpT(Real pressure, Real temperature, Real & k, Real & dk_dp, Real & dk_dT) const = 0;
189 
196  virtual Real k_from_rho_T(Real density, Real temperature) const = 0;
197 
204  virtual Real s(Real pressure, Real temperature) const = 0;
205 
212  virtual Real h(Real p, Real T) const = 0;
213 
222  virtual void
223  h_dpT(Real pressure, Real temperature, Real & h, Real & dh_dp, Real & dh_dT) const = 0;
224 
231  virtual Real beta(Real pressure, Real temperature) const = 0;
232 
238  virtual Real henryConstant(Real temperature) const = 0;
239 
246  virtual void henryConstant_dT(Real temperature, Real & Kh, Real & dKh_dT) const = 0;
247 
248 protected:
255  virtual Real henryConstantIAPWS(Real temperature, Real A, Real B, Real C) const;
256 
258  virtual void
259  henryConstantIAPWS_dT(Real temperature, Real & Kh, Real & dKh_dT, Real A, Real B, Real C) const;
260 
262  const Real _R;
264  const Real _T_c2k;
265 };
266 
267 #endif /* SINGLEPHASEFLUIDPROPERTIESPT_H */
virtual void e_dpT(Real pressure, Real temperature, Real &e, Real &de_dp, Real &de_dT) const =0
Internal energy and its derivatives wrt pressure and temperature.
virtual Real beta(Real pressure, Real temperature) const =0
Thermal expansion coefficient.
virtual std::string fluidName() const =0
Fluid name.
virtual Real cp(Real pressure, Real temperature) const =0
Isobaric specific heat capacity.
virtual void rho_dpT(Real pressure, Real temperature, Real &rho, Real &drho_dp, Real &drho_dT) const =0
Density and its derivatives wrt pressure and temperature.
const std::string density
Definition: NS.h:15
virtual void h_dpT(Real pressure, Real temperature, Real &h, Real &dh_dp, Real &dh_dT) const =0
Enthalpy and its derivatives wrt pressure and temperature.
virtual Real c(Real pressure, Real temperature) const =0
Speed of sound.
virtual Real mu_from_rho_T(Real density, Real temperature) const =0
const std::string temperature
Definition: NS.h:25
virtual void k_dpT(Real pressure, Real temperature, Real &k, Real &dk_dp, Real &dk_dT) const =0
Thermal conductivity and its derivatives wrt pressure and temperature.
Common class for single phase fluid properties using a pressure and temperature formulation.
virtual Real henryConstant(Real temperature) const =0
Henry&#39;s law constant for dissolution in water.
virtual Real molarMass() const =0
Molar mass.
InputParameters validParams< SinglePhaseFluidPropertiesPT >()
virtual void henryConstant_dT(Real temperature, Real &Kh, Real &dKh_dT) const =0
Henry&#39;s law constant for dissolution in water and derivative wrt temperature.
const Real _T_c2k
Conversion of temperature from Celcius to Kelvin.
virtual void mu_drhoT_from_rho_T(Real density, Real temperature, Real ddensity_dT, Real &mu, Real &dmu_drho, Real &dmu_dT) const =0
Dynamic viscosity and its derivatives wrt density and temperature.
virtual Real e(Real pressure, Real temperature) const =0
Internal energy.
virtual Real gamma(Real pressure, Real temperature) const
Adiabatic index - ratio of specific heats.
virtual Real mu(Real pressure, Real temperature) const =0
virtual void henryConstantIAPWS_dT(Real temperature, Real &Kh, Real &dKh_dT, Real A, Real B, Real C) const
IAPWS formulation of Henry&#39;s law constant for dissolution in water and derivative wrt temperature...
virtual Real h(Real p, Real T) const =0
Specific enthalpy.
virtual Real cv(Real pressure, Real temperature) const =0
Isochoric specific heat.
virtual Real rho(Real pressure, Real temperature) const =0
Density.
const std::string pressure
Definition: NS.h:24
virtual Real henryConstantIAPWS(Real temperature, Real A, Real B, Real C) const
IAPWS formulation of Henry&#39;s law constant for dissolution in water From Guidelines on the Henry&#39;s con...
SinglePhaseFluidPropertiesPT(const InputParameters &parameters)
virtual Real k_from_rho_T(Real density, Real temperature) const =0
Thermal conductivity as a function of density and temperature.
virtual void rho_e_dpT(Real pressure, Real temperature, Real &rho, Real &drho_dp, Real &drho_dT, Real &e, Real &de_dp, Real &de_dT) const =0
Density and internal energy and their derivatives wrt pressure and temperature.
virtual Real k(Real pressure, Real temperature) const =0
Thermal conductivity.
virtual Real s(Real pressure, Real temperature) const =0
Specific entropy.
virtual void mu_dpT(Real pressure, Real temperature, Real &mu, Real &dmu_dp, Real &dmu_dT) const =0
const Real _R
Universal gas constant (J/mol/K)