https://mooseframework.inl.gov
Loading...
Searching...
No Matches
SaturationPressureFunction.C
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
12
14
17{
19
20 params.addRequiredParam<FunctionName>("T", "Temperature function");
21 params.addRequiredParam<UserObjectName>("fp_2phase", "2-phase fluid properties");
22
24 "Computes saturation pressure from temperature function and 2-phase fluid properties object");
25
26 return params;
27}
28
30 : Function(parameters),
32
33 _T_fn(getFunction("T"))
34{
35}
36
37void
39{
40 _fp_2phase = &getUserObject<TwoPhaseFluidProperties>("fp_2phase");
41}
42
43Real
44SaturationPressureFunction::value(Real t, const Point & point) const
45{
46 return _fp_2phase->p_sat(_T_fn.value(t, point));
47}
48
49RealVectorValue
50SaturationPressureFunction::gradient(Real t, const Point & point) const
51{
52 return _T_fn.gradient(t, point) / _fp_2phase->dT_sat_dp(value(t, point));
53}
registerMooseObject("FluidPropertiesApp", SaturationPressureFunction)
static InputParameters validParams()
virtual RealGradient gradient(Real t, const Point &p) const
virtual Real value(Real t, const Point &p) const
void addRequiredParam(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
Computes saturation pressure from temperature function and 2-phase fluid properties object.
const TwoPhaseFluidProperties * _fp_2phase
2-phase fluid properties object
virtual Real value(Real t, const Point &p) const override
const Function & _T_fn
Temperature function.
virtual RealVectorValue gradient(Real t, const Point &p) const override
SaturationPressureFunction(const InputParameters &parameters)
static InputParameters validParams()
virtual Real dT_sat_dp(Real p) const =0
Computes dT/dp along the saturation line.
virtual Real p_sat(Real T) const =0
Computes the saturation pressure at a temperature.