https://mooseframework.inl.gov
Loading...
Searching...
No Matches
HeliumFluidPropertiesTest.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
16TEST_F(HeliumFluidPropertiesTest, fluidName) { EXPECT_EQ(_fp->fluidName(), "helium"); }
17
22{
23 ABS_TEST(_fp->molarMass(), 4.002602e-3, REL_TOL_SAVED_VALUE);
24}
25
30TEST_F(HeliumFluidPropertiesTest, thermalConductivity)
31{
32 const Real T = 120.0 + 273.15;
33 const Real p = 101325.0;
34 const Real e = _fp->e_from_p_T(p, T);
35 const Real v = 1. / _fp->rho_from_p_T(p, T);
36
37 REL_TEST(_fp->k_from_v_e(v, e), 1.8651584722911332e-01, REL_TOL_SAVED_VALUE);
38 REL_TEST(_fp->k_from_p_T(p, T), 1.8651584722911332e-01, REL_TOL_SAVED_VALUE);
39 DERIV_TEST(_fp->k_from_p_T, p, T, REL_TOL_DERIVATIVE);
40 DERIV_TEST(_fp->k_from_v_e, v, e, REL_TOL_DERIVATIVE);
41}
42
47{
48 const Real T = 120.0 + 273.15;
49 const Real p = 101325.0;
50 const Real e = _fp->e_from_p_T(p, T);
51 const Real v = 1. / _fp->rho_from_p_T(p, T);
52
53 REL_TEST(_fp->mu_from_v_e(v, e), 2.4061901685126415e-05, REL_TOL_SAVED_VALUE);
54 REL_TEST(_fp->mu_from_p_T(p, T), 2.4061901685126415e-05, REL_TOL_SAVED_VALUE);
55 DERIV_TEST(_fp->mu_from_p_T, p, T, REL_TOL_DERIVATIVE);
56 DERIV_TEST(_fp->mu_from_v_e, v, e, REL_TOL_DERIVATIVE);
57}
58
62TEST_F(HeliumFluidPropertiesTest, isobaricSpecificHeat)
63{
64 const Real T = 120.0 + 273.15;
65 const Real p = 101325.0;
66 const Real e = _fp->e_from_p_T(p, T);
67 const Real v = 1. / _fp->rho_from_p_T(p, T);
68
69 REL_TEST(_fp->cp_from_p_T(p, T), 5195.0, REL_TOL_SAVED_VALUE);
70 REL_TEST(_fp->cp_from_v_e(v, e), 5195.0, REL_TOL_SAVED_VALUE);
71 DERIV_TEST(_fp->cp_from_p_T, p, T, REL_TOL_DERIVATIVE);
72 DERIV_TEST(_fp->cp_from_v_e, v, e, REL_TOL_DERIVATIVE);
73}
74
78TEST_F(HeliumFluidPropertiesTest, isochoricSpecificHeat)
79{
80 const Real T = 120.0 + 273.15;
81 const Real p = 101325.0;
82 const Real e = _fp->e_from_p_T(p, T);
83 const Real v = 1. / _fp->rho_from_p_T(p, T);
84
85 REL_TEST(_fp->cv_from_v_e(v, e), 3117.0, REL_TOL_SAVED_VALUE);
86 REL_TEST(_fp->cv_from_p_T(p, T), 3117.0, REL_TOL_SAVED_VALUE);
87 DERIV_TEST(_fp->cv_from_p_T, p, T, REL_TOL_DERIVATIVE);
88 DERIV_TEST(_fp->cv_from_v_e, v, e, REL_TOL_DERIVATIVE);
89}
90
95{
96 const Real T = 120.0 + 273.15;
97 const Real p = 101325.0;
98
99 ABS_TEST(_fp->rho_from_p_T(p, T), 1.2402629878970449e-01, REL_TOL_SAVED_VALUE);
100 DERIV_TEST(_fp->rho_from_p_T, p, T, REL_TOL_DERIVATIVE);
101}
102
106TEST_F(HeliumFluidPropertiesTest, specificInternalEnergy)
107{
108 const Real T = 120.0 + 273.15;
109 const Real p = 101325.0;
110 const Real rho = _fp->rho_from_p_T(p, T);
111
112 ABS_TEST(_fp->e_from_p_T(p, T), 1.2254485499999998e6, REL_TOL_SAVED_VALUE);
113 DERIV_TEST(_fp->e_from_p_T, p, T, REL_TOL_DERIVATIVE);
114 ABS_TEST(_fp->e_from_p_rho(p, rho), 1.2254485499999998e6, REL_TOL_SAVED_VALUE);
115
116 // Equivalent (v,h), (p,T)
117 const Real v = 1. / rho;
118 const Real h = _fp->h_from_p_T(p, T);
119 ABS_TEST(_fp->e_from_v_h(v, h), 1.2254485499999998e6, REL_TOL_SAVED_VALUE);
120 DERIV_TEST(_fp->e_from_v_h, v, h, REL_TOL_DERIVATIVE);
121}
122
127{
128 const Real T = 120.0 + 273.15;
129 const Real p = 101325.0;
130 const Real e = _fp->e_from_p_T(p, T);
131 const Real v = 1. / _fp->rho_from_p_T(p, T);
132
133 REL_TEST(_fp->p_from_v_e(v, e), p, REL_TOL_SAVED_VALUE);
134 DERIV_TEST(_fp->p_from_v_e, v, e, REL_TOL_DERIVATIVE);
135}
136
141{
142 const Real T = 120.0 + 273.15;
143 const Real p = 101325.0;
144 const Real e = _fp->e_from_p_T(p, T);
145 const Real v = 1. / _fp->rho_from_p_T(p, T);
146
147 REL_TEST(_fp->T_from_v_e(v, e), T, REL_TOL_SAVED_VALUE);
148 DERIV_TEST(_fp->T_from_v_e, v, e, REL_TOL_DERIVATIVE);
149
150 const Real h = _fp->h_from_p_T(p, T);
151 REL_TEST(_fp->T_from_p_h(p, h), T, REL_TOL_SAVED_VALUE);
152}
153
158{
159 const Real T = 120.0 + 273.15;
160 const Real p = 101325.0;
161
162 ABS_TEST(_fp->h_from_p_T(p, T), 2.0424142499999998e+06, REL_TOL_SAVED_VALUE);
163 DERIV_TEST(_fp->h_from_p_T, p, T, REL_TOL_DERIVATIVE);
164
165 // Derivatives
166 const ADReal T_ad = T;
167 const ADReal p_ad = p;
168 Real h, dhdT, dhdp;
169 ADReal h_ad, dhdT_ad, dhdp_ad;
170 _fp->h_from_p_T(p, T, h, dhdT, dhdp);
171 _fp->h_from_p_T(p_ad, T_ad, h_ad, dhdT_ad, dhdp_ad);
172 DERIV_TEST(_fp->h_from_p_T, p, T, REL_TOL_DERIVATIVE);
173 REL_TEST(h, h_ad.value(), REL_TOL_CONSISTENCY);
174 REL_TEST(dhdT, dhdT_ad.value(), REL_TOL_CONSISTENCY);
175 REL_TEST(dhdp, dhdp_ad.value(), REL_TOL_CONSISTENCY);
176}
DualNumber< Real, DNDerivativeType, true > ADReal
const Real p
const double rho
const double T
const double v
TEST_F(HeliumFluidPropertiesTest, fluidName)
Test that the fluid name is correctly returned.