www.mooseframework.org
HelmholtzFluidProperties.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 
15 
16 template <>
18 
19 #pragma GCC diagnostic push
20 #pragma GCC diagnostic ignored "-Woverloaded-virtual"
21 
35 {
36 public:
37  HelmholtzFluidProperties(const InputParameters & parameters);
38 
39  virtual Real rho_from_p_T(Real pressure, Real temperature) const override;
40 
41  virtual void rho_from_p_T(
42  Real pressure, Real temperature, Real & rho, Real & drho_dp, Real & drho_dT) const override;
43 
44  virtual Real e_from_p_T(Real pressure, Real temperature) const override;
45  virtual void e_from_p_T(Real p, Real T, Real & e, Real & de_dp, Real & de_dT) const override;
46 
47  virtual Real c_from_p_T(Real pressure, Real temperature) const override;
48 
49  virtual Real cp_from_p_T(Real pressure, Real temperature) const override;
50 
51  using SinglePhaseFluidProperties::cp_from_p_T;
52 
53  virtual Real cv_from_p_T(Real pressure, Real temperature) const override;
54 
55  virtual Real s_from_p_T(Real pressure, Real temperature) const override;
56  virtual void s_from_p_T(Real p, Real T, Real & s, Real & ds_dp, Real & ds_dT) const override;
57 
58  virtual Real h_from_p_T(Real pressure, Real temperature) const override;
59  virtual void h_from_p_T(Real p, Real T, Real & h, Real & dh_dp, Real & dh_dT) const override;
60 
68  virtual Real p_from_rho_T(Real rho, Real T) const;
69 
70 protected:
78  virtual Real alpha(Real delta, Real tau) const = 0;
79 
87  virtual Real dalpha_ddelta(Real delta, Real tau) const = 0;
88 
96  virtual Real dalpha_dtau(Real delta, Real tau) const = 0;
97 
105  virtual Real d2alpha_ddelta2(Real delta, Real tau) const = 0;
106 
114  virtual Real d2alpha_dtau2(Real delta, Real tau) const = 0;
115 
123  virtual Real d2alpha_ddeltatau(Real delta, Real tau) const = 0;
124 };
125 
126 #pragma GCC diagnostic pop
127 
HelmholtzFluidProperties::h_from_p_T
virtual Real h_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:185
HelmholtzFluidProperties::rho_from_p_T
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:29
HelmholtzFluidProperties::p_from_rho_T
virtual Real p_from_rho_T(Real rho, Real T) const
Pressure as a function of density and temperature.
Definition: HelmholtzFluidProperties.C:222
SinglePhaseFluidProperties
Common class for single phase fluid properties.
Definition: SinglePhaseFluidProperties.h:89
SinglePhaseFluidProperties.h
HelmholtzFluidProperties::alpha
virtual Real alpha(Real delta, Real tau) const =0
Helmholtz free energy.
validParams< HelmholtzFluidProperties >
InputParameters validParams< HelmholtzFluidProperties >()
Definition: HelmholtzFluidProperties.C:16
HelmholtzFluidProperties::d2alpha_dtau2
virtual Real d2alpha_dtau2(Real delta, Real tau) const =0
Second derivative of Helmholtz free energy wrt tau.
HelmholtzFluidProperties::HelmholtzFluidProperties
HelmholtzFluidProperties(const InputParameters &parameters)
Definition: HelmholtzFluidProperties.C:23
HelmholtzFluidProperties::d2alpha_ddelta2
virtual Real d2alpha_ddelta2(Real delta, Real tau) const =0
Second derivative of Helmholtz free energy wrt delta.
HelmholtzFluidProperties::e_from_p_T
virtual Real e_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:65
HelmholtzFluidProperties::dalpha_dtau
virtual Real dalpha_dtau(Real delta, Real tau) const =0
Derivative of Helmholtz free energy wrt tau.
SinglePhaseFluidProperties::T
e e e e p h T T T T T T
Definition: SinglePhaseFluidProperties.h:177
SinglePhaseFluidProperties::rho
e e e e p h T rho
Definition: SinglePhaseFluidProperties.h:169
HelmholtzFluidProperties
Base class equation of state for fluids that use a Helmholtz free energy alpha(delta,...
Definition: HelmholtzFluidProperties.h:34
HelmholtzFluidProperties::cp_from_p_T
virtual Real cp_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:118
NS::temperature
const std::string temperature
Definition: NS.h:26
HelmholtzFluidProperties::c_from_p_T
virtual Real c_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:100
HelmholtzFluidProperties::d2alpha_ddeltatau
virtual Real d2alpha_ddeltatau(Real delta, Real tau) const =0
Second derivative of Helmholtz free energy wrt delta and tau.
SinglePhaseFluidProperties::p
e e e e p h p
Definition: SinglePhaseFluidProperties.h:167
HelmholtzFluidProperties::dalpha_ddelta
virtual Real dalpha_ddelta(Real delta, Real tau) const =0
Derivative of Helmholtz free energy wrt delta.
HelmholtzFluidProperties::s_from_p_T
virtual Real s_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:150
HelmholtzFluidProperties::cv_from_p_T
virtual Real cv_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:138
NS::pressure
const std::string pressure
Definition: NS.h:25
SinglePhaseFluidProperties::h
e e e e h
Definition: SinglePhaseFluidProperties.h:163