https://mooseframework.inl.gov
StiffenedGasFluidPropertiesTest.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 {
15  const Real T = 20. + 273.15; // K
16  const Real p = 101325; // Pa
17 
18  const Real rho = _fp->rho_from_p_T(p, T);
19  const Real v = 1 / rho;
20  const Real e = _fp->e_from_p_rho(p, rho);
21  const Real s = _fp->s_from_v_e(v, e);
22  const Real h = _fp->h_from_p_T(p, T);
23 
24  Real e_inv = _fp->e_from_T_v(T, v);
25  REL_TEST(e_inv, e, 10.0 * REL_TOL_CONSISTENCY);
26  DERIV_TEST(_fp->e_from_T_v, T, v, 10.0 * REL_TOL_DERIVATIVE);
27  Real p_inv = _fp->p_from_T_v(T, v);
28  REL_TEST(p_inv, p, 10.0 * REL_TOL_CONSISTENCY);
29  DERIV_TEST(_fp->p_from_T_v, T, v, 10.0 * REL_TOL_DERIVATIVE);
30  REL_TEST(_fp->h_from_T_v(T, v), h, REL_TOL_CONSISTENCY);
31  DERIV_TEST(_fp->h_from_T_v, T, v, 10.0 * REL_TOL_DERIVATIVE);
32  REL_TEST(_fp->s_from_T_v(T, v), s, REL_TOL_CONSISTENCY);
33  DERIV_TEST(_fp->s_from_T_v, T, v, 10.0 * REL_TOL_DERIVATIVE);
34  REL_TEST(_fp->cv_from_T_v(T, v), _fp->cv_from_v_e(v, e), REL_TOL_CONSISTENCY);
35 
36  REL_TEST(_fp->p_from_h_s(h, s), p, REL_TOL_CONSISTENCY);
37  DERIV_TEST(_fp->p_from_h_s, h, s, REL_TOL_DERIVATIVE);
38 
39  REL_TEST(_fp->rho_from_p_s(p, s), rho, REL_TOL_CONSISTENCY);
40  DERIV_TEST(_fp->rho_from_p_s, p, s, 1e-5);
41 
42  REL_TEST(_fp->p_from_v_e(v, e), p, REL_TOL_CONSISTENCY);
43  DERIV_TEST(_fp->p_from_v_e, v, e, REL_TOL_DERIVATIVE);
44 
45  REL_TEST(_fp->T_from_v_e(v, e), T, REL_TOL_SAVED_VALUE);
46  DERIV_TEST(_fp->T_from_v_e, v, e, REL_TOL_DERIVATIVE);
47 
48  REL_TEST(_fp->c_from_v_e(v, e), 1.299581997797754e3, REL_TOL_SAVED_VALUE);
49  REL_TEST(_fp->cp_from_v_e(v, e), 4267.6, REL_TOL_SAVED_VALUE);
50  DERIV_TEST(_fp->cp_from_v_e, v, e, REL_TOL_DERIVATIVE);
51  REL_TEST(_fp->cv_from_v_e(v, e), 1816, REL_TOL_SAVED_VALUE);
52 
53  REL_TEST(_fp->mu_from_v_e(v, e), 0.001, 1e-15);
54  DERIV_TEST(_fp->mu_from_v_e, p, T, REL_TOL_DERIVATIVE);
55 
56  REL_TEST(_fp->k_from_v_e(v, e), 0.6, 1e-15);
57 
58  REL_TEST(_fp->beta_from_p_T(p, T), 3.411222923418045e-3, REL_TOL_SAVED_VALUE);
59  DERIV_TEST(_fp->beta_from_p_T, p, T, REL_TOL_DERIVATIVE);
60 
61  REL_TEST(_fp->s_from_v_e(v, e), -2.656251807629821e4, REL_TOL_SAVED_VALUE);
62  DERIV_TEST(_fp->s_from_v_e, v, e, 1e-5);
63 
64  ABS_TEST(_fp->rho_from_p_T(p, T), 1.391568186319449e3, REL_TOL_SAVED_VALUE);
65  DERIV_TEST(_fp->rho_from_p_T, p, T, REL_TOL_DERIVATIVE);
66 
67  ABS_TEST(_fp->v_from_p_T(p, T), 1.0 / 1.391568186319449e3, REL_TOL_SAVED_VALUE);
68  DERIV_TEST(_fp->v_from_p_T, p, T, REL_TOL_DERIVATIVE);
69 
70  ABS_TEST(_fp->e_from_p_rho(p, rho), 8.397412646416598e4, REL_TOL_SAVED_VALUE);
71  DERIV_TEST(_fp->e_from_p_rho, p, rho, REL_TOL_DERIVATIVE);
72 
73  ABS_TEST(_fp->h_from_p_T(p, T), 8.404693999999994e4, 1e-10);
74  DERIV_TEST(_fp->h_from_p_T, p, T, REL_TOL_DERIVATIVE);
75 
76  ABS_TEST(_fp->s_from_p_T(p, T), -2.6562518076298216e4, 4 * REL_TOL_SAVED_VALUE);
77  DERIV_TEST(_fp->s_from_p_T, p, T, REL_TOL_DERIVATIVE);
78  ABS_TEST(_fp->s_from_h_p(h, p), -2.6562518076298216e4, REL_TOL_SAVED_VALUE);
79  DERIV_TEST(_fp->s_from_h_p, h, p, 1e-5);
80 
81  ABS_TEST(_fp->e_from_p_T(p, T), 8.397412646416575e4, 1e-10);
82  DERIV_TEST(_fp->e_from_p_T, p, T, REL_TOL_DERIVATIVE);
83 
84  REL_TEST(_fp->e_from_v_h(v, h), e, REL_TOL_CONSISTENCY);
85  DERIV_TEST(_fp->e_from_v_h, v, h, REL_TOL_DERIVATIVE);
86 
87  REL_TEST(_fp->T_from_p_h(p, h), T, REL_TOL_CONSISTENCY);
88  DERIV_TEST_CUSTOM_PERTURBATION(_fp->T_from_p_h, p, h, REL_TOL_DERIVATIVE, 1e-3);
89 
90  REL_TEST(_fp->mu_from_p_T(p, T), 0.001, REL_TOL_CONSISTENCY);
91  DERIV_TEST(_fp->mu_from_p_T, p, T, REL_TOL_DERIVATIVE);
92 
93  REL_TEST(_fp->k_from_p_T(p, T), 0.6, REL_TOL_CONSISTENCY);
94  DERIV_TEST(_fp->k_from_p_T, p, T, REL_TOL_DERIVATIVE);
95 
96  REL_TEST(_fp->cv_from_p_T(p, T), 1816, REL_TOL_SAVED_VALUE);
97  REL_TEST(_fp->cp_from_p_T(p, T), 4267.6, REL_TOL_SAVED_VALUE);
98  DERIV_TEST(_fp->cp_from_p_T, p, T, REL_TOL_DERIVATIVE);
99 }
100 
102 {
103  const ADReal T = 20. + 273.15; // K
104  const ADReal p = 101325; // Pa
105 
106  const ADReal rho = _fp->rho_from_p_T(p, T);
107  const ADReal v = 1 / rho;
108  const ADReal e = _fp->e_from_p_rho(p, rho);
109  const ADReal s = _fp->s_from_v_e(v, e);
110 
111  REL_TEST(_fp->p_from_v_e(v, e), p, REL_TOL_CONSISTENCY);
112  AD_DERIV_TEST(_fp->p_from_v_e, v, e, REL_TOL_DERIVATIVE);
113 
114  REL_TEST(_fp->T_from_v_e(v, e), T, REL_TOL_SAVED_VALUE);
115  AD_DERIV_TEST(_fp->T_from_v_e, v, e, REL_TOL_DERIVATIVE);
116 
117  REL_TEST(_fp->s_from_v_e(v, e), -2.656251807629821e4, REL_TOL_SAVED_VALUE);
118  AD_DERIV_TEST(_fp->s_from_v_e, v, e, 1e-5);
119 
120  ABS_TEST(_fp->s_from_p_T(p, T), -2.6562518076298216e4, 4 * REL_TOL_SAVED_VALUE);
121  AD_DERIV_TEST(_fp->s_from_p_T, p, T, REL_TOL_DERIVATIVE);
122 
123  ABS_TEST(_fp->rho_from_p_T(p, T), 1.391568186319449e3, REL_TOL_SAVED_VALUE);
124  AD_DERIV_TEST(_fp->rho_from_p_T, p, T, REL_TOL_DERIVATIVE);
125 
126  ABS_TEST(_fp->e_from_p_rho(p, rho), 8.397412646416598e4, REL_TOL_SAVED_VALUE);
127  AD_DERIV_TEST(_fp->e_from_p_rho, p, rho, REL_TOL_DERIVATIVE);
128 }
DualNumber< Real, DNDerivativeType, true > ADReal
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string v
Definition: NS.h:84
TEST_F(StiffenedGasFluidPropertiesTest, testAllReal)