www.mooseframework.org
SimpleFluidProperties.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
13 
14 #pragma GCC diagnostic push
15 #pragma GCC diagnostic ignored "-Woverloaded-virtual"
16 
32 {
33 public:
35 
37  virtual ~SimpleFluidProperties();
38 
39  virtual std::string fluidName() const override;
40 
41  virtual Real molarMass() const override;
42 
43  virtual Real beta_from_p_T(Real pressure, Real temperature) const override;
44 
45  virtual void beta_from_p_T(Real pressure,
47  Real & beta,
48  Real & dbeta_dp,
49  Real & dbeta_dT) const override;
50 
51  virtual Real cp_from_p_T(Real pressure, Real temperature) const override;
52 
53  virtual void cp_from_p_T(
54  Real pressure, Real temperature, Real & cp, Real & dcp_dp, Real & dcp_dT) const override;
55 
56  virtual Real cp_from_v_e(Real v, Real e) const override;
57 
58  virtual void cp_from_v_e(Real v, Real e, Real & cp, Real & dcp_dv, Real & dcp_de) const override;
59 
60  virtual Real cv_from_p_T(Real pressure, Real temperature) const override;
61 
62  virtual void cv_from_p_T(
63  Real pressure, Real temperature, Real & cv, Real & dcv_dp, Real & dcv_dT) const override;
64 
65  virtual Real cv_from_v_e(Real v, Real e) const override;
66 
67  virtual void cv_from_v_e(Real v, Real e, Real & cv, Real & dcv_dv, Real & dcv_de) const override;
68 
69  virtual Real c_from_p_T(Real pressure, Real temperature) const override;
70 
71  virtual void
72  c_from_p_T(Real pressure, Real temperature, Real & c, Real & dc_dp, Real & dc_dT) const override;
73 
74  virtual Real k_from_p_T(Real pressure, Real temperature) const override;
75 
76  virtual void
77  k_from_p_T(Real pressure, Real temperature, Real & k, Real & dk_dp, Real & dk_dT) const override;
78 
79  virtual Real k_from_v_e(Real v, Real e) const override;
80 
81  virtual void k_from_v_e(Real v, Real e, Real & k, Real & dk_dv, Real & dk_de) const override;
82 
83  virtual Real s_from_p_T(Real pressure, Real temperature) const override;
84 
85  virtual void s_from_p_T(Real p, Real T, Real & s, Real & ds_dp, Real & ds_dT) const override;
86 
87  virtual Real s_from_v_e(Real v, Real e) const override;
88 
89  virtual void s_from_v_e(Real v, Real e, Real & s, Real & ds_dv, Real & ds_de) const override;
90 
91  virtual Real s_from_h_p(Real h, Real p) const override;
92 
93  virtual Real rho_from_p_T(Real pressure, Real temperature) const override;
94 
95  virtual void rho_from_p_T(
96  Real pressure, Real temperature, Real & rho, Real & drho_dp, Real & drho_dT) const override;
97 
98  virtual void rho_from_p_T(const DualReal & pressure,
99  const DualReal & temperature,
100  DualReal & rho,
101  DualReal & drho_dp,
102  DualReal & drho_dT) const override;
103 
104  virtual Real T_from_v_e(Real v, Real e) const override;
105 
106  virtual void T_from_v_e(Real v, Real e, Real & T, Real & dT_dv, Real & dT_de) const override;
107 
108  virtual void T_from_v_e(const DualReal & v,
109  const DualReal & e,
110  DualReal & T,
111  DualReal & dT_dv,
112  DualReal & dT_de) const override;
113 
114  virtual Real T_from_v_h(Real v, Real h) const;
115 
116  virtual void T_from_v_h(Real v, Real h, Real & T, Real & dT_dv, Real & dT_dh) const;
117 
118  virtual Real T_from_p_rho(Real p, Real rho) const;
119 
120  virtual void T_from_p_rho(Real p, Real rho, Real & T, Real & dT_dp, Real & dT_drho) const;
121 
122  virtual Real T_from_p_h(Real p, Real h) const override;
123 
124  virtual Real p_from_v_e(Real v, Real e) const override;
125 
126  virtual void p_from_v_e(Real v, Real e, Real & p, Real & dp_dv, Real & dp_de) const override;
127 
128  virtual void p_from_v_e(const DualReal & v,
129  const DualReal & e,
130  DualReal & p,
131  DualReal & dp_dv,
132  DualReal & dp_de) const override;
133 
134  virtual Real p_from_v_h(Real v, Real h) const;
135 
136  virtual void p_from_v_h(Real v, Real h, Real & p, Real & dp_dv, Real & dp_dh) const;
137 
138  virtual Real c_from_v_e(Real v, Real e) const override;
139 
140  virtual void c_from_v_e(Real v, Real e, Real & c, Real & dc_dv, Real & dc_de) const override;
141 
142  virtual Real e_from_p_T(Real pressure, Real temperature) const override;
143 
144  virtual void
145  e_from_p_T(Real pressure, Real temperature, Real & e, Real & de_dp, Real & de_dT) const override;
146 
147  virtual Real e_from_p_rho(Real pressure, Real rho) const override;
148 
149  virtual void
150  e_from_p_rho(Real p, Real rho, Real & e, Real & de_dp, Real & de_drho) const override;
151 
152  virtual Real e_from_v_h(Real v, Real h) const override;
153 
154  virtual void e_from_v_h(Real p, Real v, Real & h, Real & de_dv, Real & de_dh) const override;
155 
156  virtual Real mu_from_p_T(Real pressure, Real temperature) const override;
157 
158  virtual void mu_from_p_T(
159  Real pressure, Real temperature, Real & mu, Real & dmu_dp, Real & dmu_dT) const override;
160 
161  virtual Real mu_from_v_e(Real v, Real e) const override;
162 
163  virtual void mu_from_v_e(Real v, Real e, Real & mu, Real & dmu_dv, Real & dmu_de) const override;
164 
165  virtual Real h_from_p_T(Real p, Real T) const override;
166 
167  virtual void
168  h_from_p_T(Real pressure, Real temperature, Real & h, Real & dh_dp, Real & dh_dT) const override;
169 
170 protected:
173 
176 
178  const Real _cv;
179 
181  const Real _cp;
182 
185 
188 
191 
194 
197 
200 };
201 
202 #pragma GCC diagnostic pop
const Real _thermal_expansion
thermal expansion coefficient
virtual Real k_from_v_e(Real v, Real e) const override
const Real _pp_coeff
Porepressure coefficient: enthalpy = internal_energy + porepressure / density * _pp_coeff.
static const std::string cv
Definition: NS.h:121
virtual Real c_from_v_e(Real v, Real e) const override
virtual Real cv_from_v_e(Real v, Real e) const override
virtual Real h_from_p_T(Real p, Real T) const override
const Real _cv
specific heat at constant volume
const Real _specific_entropy
specific entropy
const Real _viscosity
viscosity
virtual Real mu_from_v_e(Real v, Real e) const override
virtual Real c_from_p_T(Real pressure, Real temperature) const override
DualNumber< Real, DNDerivativeType, true > DualReal
const Real _bulk_modulus
bulk modulus
virtual Real cp_from_p_T(Real pressure, Real temperature) const override
static const std::string temperature
Definition: NS.h:57
virtual Real s_from_h_p(Real h, Real p) const override
const Real _molar_mass
molar mass
Fluid properties of a simple, idealised fluid density=density0 * exp(P / bulk_modulus - thermal_expan...
const Real _density0
density at zero pressure and temperature
virtual std::string fluidName() const override
virtual Real e_from_p_rho(Real pressure, Real rho) const override
static const std::string cp
Definition: NS.h:120
virtual Real s_from_v_e(Real v, Real e) const override
const Real _thermal_conductivity
thermal conductivity
virtual Real s_from_p_T(Real pressure, Real temperature) const override
virtual Real e_from_p_T(Real pressure, Real temperature) const override
static InputParameters validParams()
virtual Real T_from_p_h(Real p, Real h) const override
static const std::string mu
Definition: NS.h:122
virtual Real mu_from_p_T(Real pressure, Real temperature) const override
virtual Real beta_from_p_T(Real pressure, Real temperature) const override
virtual Real T_from_v_h(Real v, Real h) const
virtual Real e_from_v_h(Real v, Real h) const override
Common class for single phase fluid properties.
e e e e s T T T T T rho v v T h
virtual Real T_from_v_e(Real v, Real e) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real T_from_p_rho(Real p, Real rho) const
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
static const std::string pressure
Definition: NS.h:56
virtual Real cp_from_v_e(Real v, Real e) const override
virtual Real p_from_v_h(Real v, Real h) const
const InputParameters & parameters() const
SimpleFluidProperties(const InputParameters &parameters)
const Real _cp
specific heat at constant pressure
virtual Real k_from_p_T(Real pressure, Real temperature) const override
static const std::string k
Definition: NS.h:124
virtual Real molarMass() const override
Fluid name.
virtual Real cv_from_p_T(Real pressure, Real temperature) const override
virtual Real p_from_v_e(Real v, Real e) const override