https://mooseframework.inl.gov
SodiumSaturationFluidProperties.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 
18 {
19 #pragma GCC diagnostic push
20 #pragma GCC diagnostic ignored "-Woverloaded-virtual"
21 public:
23 
25 
26  virtual std::string fluidName() const override;
27 
28  virtual Real rho_from_p_T(Real p, Real T) const override;
29 
30  virtual void
31  rho_from_p_T(Real p, Real T, Real & rho, Real & drho_dp, Real & drho_dT) const override;
32  virtual void rho_from_p_T(const ADReal & p,
33  const ADReal & T,
34  ADReal & rho,
35  ADReal & drho_dp,
36  ADReal & drho_dT) const override;
37 
38  virtual Real rho_from_p_s(Real p, Real s) const override;
39  virtual void
40  rho_from_p_s(Real p, Real s, Real & rho, Real & drho_dp, Real & drho_ds) const override;
41 
42  virtual Real v_from_p_T(Real p, Real T) const override;
43  virtual void v_from_p_T(Real p, Real T, Real & v, Real & dv_dp, Real & dv_dT) const override;
44 
45  virtual Real p_from_v_e(Real v, Real e) const override;
46  virtual void p_from_v_e(Real v, Real e, Real & p, Real & dp_dv, Real & dp_de) const override;
47 
48  virtual Real T_from_v_e(Real v, Real e) const override;
49  virtual void T_from_v_e(Real v, Real e, Real & T, Real & dT_dv, Real & dT_de) const override;
50 
51  virtual Real c_from_v_e(Real v, Real e) const override;
52  virtual void c_from_v_e(Real v, Real e, Real & c, Real & dc_dv, Real & dc_de) const override;
53 
54  virtual Real h_from_p_T(Real p, Real T) const override;
55  virtual void h_from_p_T(Real p, Real T, Real & h, Real & dh_dp, Real & dh_dT) const override;
56 
57  virtual Real T_from_p_h(Real p, Real h) const override;
58  virtual void T_from_p_h(Real p, Real h, Real & T, Real & dT_dp, Real & dT_dh) const override;
59 
60  virtual Real s_from_p_T(Real p, Real T) const override;
61  virtual void s_from_p_T(Real p, Real T, Real & s, Real & ds_dp, Real & ds_dT) const override;
62 
63  virtual Real s_from_v_e(Real v, Real e) const override;
64  virtual void s_from_v_e(Real v, Real e, Real & s, Real & ds_dv, Real & ds_de) const override;
65 
66  virtual Real e_from_p_T(Real p, Real T) const override;
67  virtual void e_from_p_T(Real p, Real T, Real & e, Real & de_dp, Real & de_dT) const override;
68 
69  virtual Real e_from_p_rho(Real p, Real rho) const override;
70  virtual void
71  e_from_p_rho(Real p, Real rho, Real & e, Real & de_dp, Real & de_drho) const override;
72 
73  virtual Real cp_from_p_T(Real p, Real T) const override;
74  virtual void cp_from_p_T(Real p, Real T, Real & cp, Real & dcp_dp, Real & dcp_dT) const override;
75 
76  virtual Real cp_from_v_e(Real v, Real e) const override;
77  virtual void cp_from_v_e(Real v, Real e, Real & cp, Real & dcp_dv, Real & dcp_de) const override;
78 
79  using SinglePhaseFluidProperties::cv_from_p_T;
80 
81  virtual Real cv_from_p_T(Real p, Real T) const override;
82  virtual void cv_from_p_T(Real p, Real T, Real & cv, Real & dcv_dp, Real & dcv_dT) const override;
83 
84  virtual Real cv_from_v_e(Real v, Real e) const override;
85  virtual void cv_from_v_e(Real v, Real e, Real & cv, Real & dcv_dv, Real & dcv_de) const override;
86 
87  virtual Real molarMass() const override;
88 
89  virtual Real k_from_p_T(Real p, Real T) const override;
90  virtual void k_from_p_T(Real p, Real T, Real & k, Real & dk_dp, Real & dk_dT) const override;
91 
92  virtual Real k_from_v_e(Real v, Real e) const override;
93  virtual void k_from_v_e(Real v, Real e, Real & k, Real & dk_dv, Real & dk_de) const override;
94 
95  virtual Real mu_from_p_T(Real p, Real T) const override;
96  virtual void
97  mu_from_p_T(Real p, Real T, Real & mu, Real & dmu_drho, Real & dmu_dT) const override;
98 
99  virtual Real mu_from_v_e(Real v, Real e) const override;
100  virtual void mu_from_v_e(Real v, Real e, Real & mu, Real & dmu_dv, Real & dmu_de) const override;
101 
102 private:
103  static constexpr Real _reference_pressure = 1.0e5;
104 
106  Real temperature, Real & v, Real & dv_dT, Real & d2v_dT2, Real & d3v_dT3) const;
107  Real cp0_from_T(Real temperature) const;
108  Real dcp0_dT_from_T(Real temperature) const;
109 };
110 #pragma GCC diagnostic pop
SodiumSaturationFluidProperties(const InputParameters &parameters)
virtual Real cp_from_p_T(Real p, Real T) const override
virtual Real mu_from_p_T(Real p, Real T) const override
static const std::string cv
Definition: NS.h:126
virtual Real mu_from_v_e(Real v, Real e) const override
virtual Real cv_from_p_T(Real p, Real T) const override
virtual Real e_from_p_T(Real p, Real T) const override
virtual Real rho_from_p_T(Real p, Real T) const override
Fluid properties for liquid sodium at saturation conditions } }.
const InputParameters & parameters() const
static const std::string temperature
Definition: NS.h:60
virtual Real p_from_v_e(Real v, Real e) const override
virtual Real v_from_p_T(Real p, Real T) const override
DualNumber< Real, DNDerivativeType, false > ADReal
void specific_volume_derivatives(Real temperature, Real &v, Real &dv_dT, Real &d2v_dT2, Real &d3v_dT3) const
virtual Real rho_from_p_s(Real p, Real s) const override
static const std::string cp
Definition: NS.h:125
e e e e s T T T T T rho v v T e h
virtual Real k_from_p_T(Real p, Real T) const override
virtual Real cv_from_v_e(Real v, Real e) const override
virtual Real k_from_v_e(Real v, Real e) const override
virtual Real h_from_p_T(Real p, Real T) const override
Common class for single phase fluid properties.
virtual Real cp_from_v_e(Real v, Real e) const override
virtual Real e_from_p_rho(Real p, Real rho) const override
virtual Real c_from_v_e(Real v, Real e) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real s_from_p_T(Real p, Real T) const override
virtual Real T_from_v_e(Real v, Real e) const override
virtual Real s_from_v_e(Real v, Real e) const override
virtual Real molarMass() const override
Molar mass [kg/mol].
virtual std::string fluidName() const override
Fluid name.
const double mu
static const std::string k
Definition: NS.h:134
virtual Real T_from_p_h(Real p, Real h) const override