18 EXPECT_EQ(_fp->fluidName(),
"TemperaturePressureFunctionFluidProperties");
28 const Real tol = REL_TOL_CONSISTENCY;
29 const Real large_tol = 100 *
tol;
34 Real v = 1 / (1400 + 2.5 * T + 32e-5 * p);
35 Real h =
cv * T + p / _fp->rho_from_p_T(p, T);
38 Real thermal_cond = 14 + 2e-2 * T + 3e-5 * p;
39 Real visc = 1e-3 + 1e-5 * T - 3e-9 * p;
46 ABS_TEST(_fp->cp_from_p_T(p, T),
cp,
tol);
47 ABS_TEST(_fp->cv_from_p_T(p, T),
cv,
tol);
48 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
49 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
50 ABS_TEST(_fp->rho_from_p_T(p, T),
density,
tol);
51 ABS_TEST(_fp->v_from_p_T(p, T), 1 /
density,
tol);
52 ABS_TEST(_fp->e_from_p_T(p, T),
cv * T,
tol);
53 ABS_TEST(_fp->e_from_p_rho(p, 1. /
v),
56 ABS_TEST(_fp->mu_from_p_T(p, T), visc,
tol);
57 ABS_TEST(_fp->h_from_p_T(p, T), h,
tol);
58 ABS_TEST(_fp->cp_from_v_e(
v, e),
cp,
tol);
59 ABS_TEST(_fp->cv_from_v_e(
v, e),
cv,
tol);
60 ABS_TEST(_fp->k_from_v_e(
v, e), thermal_cond,
tol);
61 ABS_TEST(_fp->T_from_v_e(
v, e), T,
tol);
62 ABS_TEST(_fp->T_from_p_h(p, _fp->h_from_p_T(p, T)), T,
tol);
63 ABS_TEST(_fp->T_from_p_rho(p, 1. /
v), T,
tol);
65 _fp->p_from_v_e(
v, e), p, 1.5 * large_tol);
66 ABS_TEST(_fp->mu_from_v_e(
v, e), visc,
tol);
71 v = 1 / (1400 + 2.5 * T + 32e-5 * p);
72 h =
cv * T + p / _fp->rho_from_p_T(p, T);
75 thermal_cond = 14 + 2e-2 * T + 3e-5 * p;
76 visc = 1e-3 + 1e-5 * T - 3e-9 * p;
82 ABS_TEST(_fp->cp_from_p_T(p, T),
cp,
tol);
83 ABS_TEST(_fp->cv_from_p_T(p, T),
cv,
tol);
84 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
85 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
86 ABS_TEST(_fp->rho_from_p_T(p, T),
density,
tol);
87 ABS_TEST(_fp->v_from_p_T(p, T), 1 /
density,
tol);
88 ABS_TEST(_fp->e_from_p_T(p, T),
cv * T,
tol);
89 ABS_TEST(_fp->e_from_p_rho(p, 1. /
v),
92 ABS_TEST(_fp->mu_from_p_T(p, T), visc,
tol);
93 ABS_TEST(_fp->h_from_p_T(p, T), h,
tol);
94 ABS_TEST(_fp->cp_from_v_e(
v, e),
cp,
tol);
95 ABS_TEST(_fp->cv_from_v_e(
v, e),
cv,
tol);
96 ABS_TEST(_fp->k_from_v_e(
v, e), thermal_cond,
tol);
97 ABS_TEST(_fp->T_from_v_e(
v, e), T,
tol);
98 ABS_TEST(_fp->T_from_p_h(p, _fp->h_from_p_T(p, T)), T,
tol);
99 ABS_TEST(_fp->T_from_p_rho(p, 1. /
v), T,
tol);
100 ABS_TEST(_fp->p_from_v_e(
v, e), p, large_tol);
101 ABS_TEST(_fp->mu_from_v_e(
v, e), visc,
tol);
109 const Real tol = REL_TOL_CONSISTENCY;
111 const Real large_tol = 1e-8;
113 const Real newton_tol = 1e-4;
118 Real cp = 3000. + 3 * T + 5e-4 * p;
119 Real e = 9220000.46051060781;
120 Real v = 1 / (1400 + 2.5 * T + 32e-5 * p);
124 Real thermal_cond = 14 + 2e-2 * T + 3e-5 * p;
125 Real visc = 1e-3 + 1e-5 * T - 3e-9 * p;
131 ABS_TEST(_fp_cp->cp_from_p_T(p, T),
cp,
tol);
132 ABS_TEST(_fp_cp->cv_from_p_T(p, T),
cv,
tol);
133 ABS_TEST(_fp_cp->k_from_p_T(p, T), thermal_cond,
tol);
134 ABS_TEST(_fp_cp->k_from_p_T(p, T), thermal_cond,
tol);
135 ABS_TEST(_fp_cp->rho_from_p_T(p, T),
density,
tol);
136 ABS_TEST(_fp_cp->v_from_p_T(p, T), 1 /
density,
tol);
137 ABS_TEST(_fp_cp->e_from_p_T(p, T), e,
tol);
138 ABS_TEST(_fp_cp->e_from_p_rho(p, 1. /
v), e, 10 * large_tol);
139 ABS_TEST(_fp_cp->mu_from_p_T(p, T), visc,
tol);
140 ABS_TEST(_fp_cp->h_from_p_T(p, T), h,
tol);
141 ABS_TEST(_fp_cp->cp_from_v_e(
v, e),
cp, large_tol);
142 ABS_TEST(_fp_cp->cv_from_v_e(
v, e),
cv, large_tol);
143 ABS_TEST(_fp_cp->k_from_v_e(
v, e), thermal_cond, large_tol);
144 ABS_TEST(_fp_cp->T_from_v_e(
v, e), T, large_tol);
145 ABS_TEST(_fp_cp->T_from_p_h(p, _fp_cp->h_from_p_T(p, T)), T, large_tol);
146 ABS_TEST(_fp_cp->T_from_p_rho(p, 1. /
v), T, large_tol);
147 ABS_TEST(_fp_cp->p_from_v_e(
v, e), p, newton_tol);
148 ABS_TEST(_fp_cp->mu_from_v_e(
v, e), visc, large_tol);
154 Real cp = 3000. + 3 * T + 5e-4 * p;
155 Real e = 17061150.6748718396;
156 Real v = 1 / (1400 + 2.5 * T + 32e-5 * p);
160 Real thermal_cond = 14 + 2e-2 * T + 3e-5 * p;
161 Real visc = 1e-3 + 1e-5 * T - 3e-9 * p;
167 ABS_TEST(_fp_cp->cp_from_p_T(p, T),
cp,
tol);
168 ABS_TEST(_fp_cp->cv_from_p_T(p, T),
cv,
tol);
169 ABS_TEST(_fp_cp->k_from_p_T(p, T), thermal_cond,
tol);
170 ABS_TEST(_fp_cp->k_from_p_T(p, T), thermal_cond,
tol);
171 ABS_TEST(_fp_cp->rho_from_p_T(p, T),
density,
tol);
172 ABS_TEST(_fp_cp->v_from_p_T(p, T), 1 /
density,
tol);
173 ABS_TEST(_fp_cp->e_from_p_T(p, T), e,
tol);
174 ABS_TEST(_fp_cp->e_from_p_rho(p, 1. /
v), e,
tol);
175 ABS_TEST(_fp_cp->mu_from_p_T(p, T), visc,
tol);
176 ABS_TEST(_fp_cp->h_from_p_T(p, T), h,
tol);
177 ABS_TEST(_fp_cp->cp_from_v_e(
v, e),
cp, 1.5 * large_tol);
178 ABS_TEST(_fp_cp->cv_from_v_e(
v, e),
cv, 1.5 * large_tol);
179 ABS_TEST(_fp_cp->k_from_v_e(
v, e), thermal_cond, large_tol);
180 ABS_TEST(_fp_cp->T_from_v_e(
v, e), T, 1.5 * large_tol);
181 ABS_TEST(_fp_cp->T_from_p_h(p, _fp_cp->h_from_p_T(p, T)), T, large_tol);
182 ABS_TEST(_fp_cp->T_from_p_rho(p, 1. /
v), T, large_tol);
183 ABS_TEST(_fp_cp->p_from_v_e(
v, e), p, newton_tol);
184 ABS_TEST(_fp_cp->mu_from_v_e(
v, e), visc, large_tol);
194 const Real tol = REL_TOL_DERIVATIVE;
196 const Real large_tol = 1000 *
tol;
204 AD_DERIV_TEST(_fp->rho_from_p_T, p, T,
tol);
205 DERIV_TEST(_fp->rho_from_p_T, p, T,
tol);
206 DERIV_TEST(_fp->v_from_p_T, p, T,
tol);
207 DERIV_TEST(_fp->mu_from_p_T, p, T,
tol);
208 DERIV_TEST(_fp->e_from_p_T, p, T,
tol);
209 DERIV_TEST(_fp->h_from_p_T, p, T,
tol);
210 DERIV_TEST(_fp->k_from_p_T, p, T,
tol);
211 DERIV_TEST(_fp->cp_from_p_T, p, T, 4 * large_tol);
212 DERIV_TEST(_fp->cv_from_p_T, p, T,
tol);
213 DERIV_TEST(_fp->cp_from_v_e,
v, e, large_tol);
214 DERIV_TEST(_fp->cv_from_v_e,
v, e,
tol);
216 e = 80150.0458189499477;
217 v = 0.00021621621621621621;
219 AD_DERIV_TEST(_fp_cp->rho_from_p_T, p, T,
tol);
220 DERIV_TEST(_fp_cp->rho_from_p_T, p, T,
tol);
221 DERIV_TEST(_fp_cp->v_from_p_T, p, T,
tol);
222 DERIV_TEST(_fp_cp->mu_from_p_T, p, T,
tol);
223 DERIV_TEST(_fp_cp->e_from_p_T, p, T,
tol);
224 DERIV_TEST(_fp_cp->h_from_p_T, p, T,
tol);
225 DERIV_TEST(_fp_cp->k_from_p_T, p, T,
tol);
226 DERIV_TEST(_fp_cp->cp_from_p_T, p, T, large_tol);
227 DERIV_TEST(_fp_cp->cv_from_p_T, p, T, large_tol);
228 DERIV_TEST(_fp_cp->cp_from_v_e,
v, e, large_tol);
229 DERIV_TEST(_fp_cp->cv_from_v_e,
v, e, large_tol);
236 AD_DERIV_TEST(_fp->rho_from_p_T, p, T,
tol);
237 DERIV_TEST(_fp->rho_from_p_T, p, T,
tol);
238 DERIV_TEST(_fp->v_from_p_T, p, T,
tol);
239 DERIV_TEST(_fp->mu_from_p_T, p, T,
tol);
240 DERIV_TEST(_fp->e_from_p_T, p, T,
tol);
241 DERIV_TEST(_fp->h_from_p_T, p, T,
tol);
242 DERIV_TEST(_fp->k_from_p_T, p, T,
tol);
243 DERIV_TEST(_fp->cp_from_p_T, p, T, 2 * large_tol);
244 DERIV_TEST(_fp->cv_from_p_T, p, T,
tol);
245 DERIV_TEST(_fp->cp_from_v_e,
v, e, 2 * large_tol);
246 DERIV_TEST(_fp->cv_from_v_e,
v, e,
tol);
248 e = 5374151.12329934724;
249 v = 5.5944055944055945e-05;
251 AD_DERIV_TEST(_fp_cp->rho_from_p_T, p, T,
tol);
252 DERIV_TEST(_fp_cp->rho_from_p_T, p, T,
tol);
253 DERIV_TEST(_fp_cp->v_from_p_T, p, T,
tol);
254 DERIV_TEST(_fp_cp->mu_from_p_T, p, T,
tol);
255 DERIV_TEST(_fp_cp->e_from_p_T, p, T,
tol);
256 DERIV_TEST(_fp_cp->h_from_p_T, p, T,
tol);
257 DERIV_TEST(_fp_cp->k_from_p_T, p, T,
tol);
258 DERIV_TEST(_fp_cp->cp_from_p_T, p, T, large_tol);
259 DERIV_TEST(_fp_cp->cv_from_p_T, p, T, large_tol);
260 DERIV_TEST(_fp_cp->cp_from_v_e,
v, e, large_tol);
261 DERIV_TEST(_fp_cp->cv_from_v_e,
v, e, large_tol);
270 const Real p = 1.0e6;
271 const Real T = 300.0;
272 const Real tol = REL_TOL_CONSISTENCY;
275 Real rho, drho_dp, drho_dT;
276 _fp->rho_from_p_T(p, T, rho, drho_dp, drho_dT);
278 _fp->mu_from_p_T(p, T,
mu, dmu_dp, dmu_dT);
279 Real e, de_dp, de_dT;
280 _fp->e_from_p_T(p, T, e, de_dp, de_dT);
283 Real rho2, drho2_dp, drho2_dT, mu2, dmu2_dp, dmu2_dT, e2, de2_dp, de2_dT;
284 _fp->rho_mu_from_p_T(p, T, rho2, mu2);
286 ABS_TEST(rho, rho2,
tol);
287 ABS_TEST(
mu, mu2,
tol);
289 _fp->rho_mu_from_p_T(p, T, rho2, drho2_dp, drho2_dT, mu2, dmu2_dp, dmu2_dT);
290 ABS_TEST(rho, rho2,
tol);
291 ABS_TEST(drho_dp, drho2_dp,
tol);
292 ABS_TEST(drho_dT, drho2_dT,
tol);
293 ABS_TEST(
mu, mu2,
tol);
294 ABS_TEST(dmu_dp, dmu2_dp,
tol);
295 ABS_TEST(dmu_dT, dmu2_dT,
tol);
297 _fp->rho_e_from_p_T(p, T, rho2, drho2_dp, drho2_dT, e2, de2_dp, de2_dT);
298 ABS_TEST(rho, rho2,
tol);
299 ABS_TEST(drho_dp, drho2_dp,
tol);
300 ABS_TEST(drho_dT, drho2_dT,
tol);
301 ABS_TEST(e, e2,
tol);
302 ABS_TEST(de_dp, de2_dp,
tol);
303 ABS_TEST(de_dT, de2_dT,
tol);
static const std::string cv
TEST_F(TemperaturePressureFunctionFluidPropertiesTest, fluidName)
Test that the fluid name is correctly returned.
static const std::string density
static const std::string cp
static const std::string mu
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string v
static const std::string alpha