https://mooseframework.inl.gov
Loading...
Searching...
No Matches
SimpleFluidProperties.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
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{
33public:
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,
46 Real temperature,
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 ADReal & pressure,
99 const ADReal & temperature,
100 ADReal & rho,
101 ADReal & drho_dp,
102 ADReal & 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 ADReal & v,
109 const ADReal & e,
110 ADReal & T,
111 ADReal & dT_dv,
112 ADReal & 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 ADReal & v,
129 const ADReal & e,
130 ADReal & p,
131 ADReal & dp_dv,
132 ADReal & 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
170protected:
172 const Real _molar_mass;
173
176
178 const Real _cv;
179
181 const Real _cp;
182
184 const Real _bulk_modulus;
185
188
191
193 const Real _viscosity;
194
196 const Real _density0;
197
199 const Real _pp_coeff;
200};
201
202#pragma GCC diagnostic pop
DualNumber< Real, DNDerivativeType, true > ADReal
const double mu
const InputParameters & parameters() const
Fluid properties of a simple, idealised fluid density=density0 * exp(P / bulk_modulus - thermal_expan...
const Real _specific_entropy
specific entropy
virtual Real cv_from_p_T(Real pressure, Real temperature) const override
virtual Real cv_from_v_e(Real v, Real e) const override
virtual Real mu_from_p_T(Real pressure, Real temperature) const override
virtual Real s_from_h_p(Real h, Real p) const override
virtual Real beta_from_p_T(Real pressure, Real temperature) const override
virtual Real k_from_v_e(Real v, Real e) const override
virtual Real e_from_p_rho(Real pressure, Real rho) const override
virtual Real h_from_p_T(Real p, Real T) const override
static InputParameters validParams()
const Real _thermal_conductivity
thermal conductivity
virtual Real s_from_v_e(Real v, Real e) const override
virtual Real T_from_v_h(Real v, Real h) const
virtual Real cp_from_v_e(Real v, Real e) const override
virtual Real e_from_v_h(Real v, Real h) const override
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
const Real _thermal_expansion
thermal expansion coefficient
virtual Real T_from_p_rho(Real p, Real rho) const
virtual std::string fluidName() const override
Fluid name.
const Real _molar_mass
molar mass
virtual Real p_from_v_e(Real v, Real e) const override
const Real _viscosity
viscosity
virtual Real molarMass() const override
Molar mass [kg/mol].
virtual Real T_from_v_e(Real v, Real e) const override
virtual Real k_from_p_T(Real pressure, Real temperature) const override
virtual Real T_from_p_h(Real p, Real h) const override
virtual Real c_from_p_T(Real pressure, Real temperature) const override
const Real _density0
density at zero pressure and temperature
virtual Real c_from_v_e(Real v, Real e) const override
const Real _cv
specific heat at constant volume
const Real _cp
specific heat at constant pressure
virtual Real s_from_p_T(Real pressure, Real temperature) const override
virtual Real p_from_v_h(Real v, Real h) const
virtual Real e_from_p_T(Real pressure, Real temperature) const override
virtual Real cp_from_p_T(Real pressure, Real temperature) const override
const Real _pp_coeff
Porepressure coefficient: enthalpy = internal_energy + porepressure / density * _pp_coeff.
virtual Real mu_from_v_e(Real v, Real e) const override
const Real _bulk_modulus
bulk modulus
Common class for single phase fluid properties.
e e e e s T T T T T rho v v T e h