23 ABS_TEST(_fp->molarMass(), 1.8e-2, REL_TOL_SAVED_VALUE);
31 const Real thermal_exp = 2.14E-4;
34 const Real bulk_modulus = 2.0E9;
35 const Real thermal_cond = 0.6;
36 const Real entropy = 300.0;
37 const Real visc = 1.0E-3;
38 const Real density0 = 1000.0;
39 const Real pp_coef = 0.0;
41 const Real tol = REL_TOL_CONSISTENCY;
42 const Real large_tol = 10 *
tol;
48 Real h =
cv * T + p / _fp->rho_from_p_T(p, T);
50 ABS_TEST(_fp->beta_from_p_T(p, T), thermal_exp,
tol);
51 ABS_TEST(_fp->cp_from_p_T(p, T),
cp,
tol);
52 ABS_TEST(_fp->cv_from_p_T(p, T),
cv,
tol);
53 ABS_TEST(_fp->c_from_p_T(p, T), std::sqrt(bulk_modulus / _fp->rho_from_p_T(p, T)),
tol);
54 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
55 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
56 ABS_TEST(_fp->s_from_p_T(p, T), entropy,
tol);
57 ABS_TEST(_fp->rho_from_p_T(p, T), density0 * std::exp(p / bulk_modulus - thermal_exp * T),
tol);
58 ABS_TEST(_fp->e_from_p_T(p, T),
cv * T,
tol);
59 ABS_TEST(_fp->e_from_p_rho(p, 1. /
v),
cv * T,
tol);
60 ABS_TEST(_fp->e_from_v_h(
v, h),
cv * T, large_tol);
61 ABS_TEST(_fp->mu_from_p_T(p, T), visc,
tol);
62 ABS_TEST(_fp->h_from_p_T(p, T), h,
tol);
63 ABS_TEST(_fp2->h_from_p_T(p, T),
cv * T + p * pp_coef / _fp2->rho_from_p_T(p, T),
tol);
64 ABS_TEST(_fp->cp_from_v_e(
v, e),
cp,
tol);
65 ABS_TEST(_fp->cv_from_v_e(
v, e),
cv,
tol);
67 _fp->c_from_v_e(
v, e),
68 std::sqrt(bulk_modulus / _fp->rho_from_p_T(_fp->p_from_v_e(
v, e), _fp->T_from_v_e(
v, e))),
70 ABS_TEST(_fp->k_from_v_e(
v, e), thermal_cond,
tol);
71 ABS_TEST(_fp->s_from_v_e(
v, e), entropy,
tol);
72 ABS_TEST(_fp->s_from_h_p(_fp->h_from_p_T(p, T), p), entropy,
tol);
73 ABS_TEST(_fp->T_from_v_e(
v, e), T,
tol);
74 ABS_TEST(_fp->T_from_p_h(p, _fp->h_from_p_T(p, T)), T,
tol);
75 ABS_TEST(_fp->T_from_p_rho(p, 1. /
v), T,
tol);
76 ABS_TEST(_fp->p_from_v_e(
v, e),
77 bulk_modulus * (thermal_exp * _fp->T_from_v_e(
v, e) + std::log(1 / (
v * density0))),
79 ABS_TEST(_fp->mu_from_v_e(
v, e), visc,
tol);
84 v = 6.249991432791718E-4;
85 h =
cv * T + p / _fp->rho_from_p_T(p, T);
87 ABS_TEST(_fp->beta_from_p_T(p, T), thermal_exp,
tol);
88 ABS_TEST(_fp->cp_from_p_T(p, T),
cp,
tol);
89 ABS_TEST(_fp->cv_from_p_T(p, T),
cv,
tol);
90 ABS_TEST(_fp->c_from_p_T(p, T), std::sqrt(bulk_modulus / _fp->rho_from_p_T(p, T)),
tol);
91 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
92 ABS_TEST(_fp->k_from_p_T(p, T), thermal_cond,
tol);
93 ABS_TEST(_fp->s_from_p_T(p, T), entropy,
tol);
94 ABS_TEST(_fp->rho_from_p_T(p, T), density0 * std::exp(p / bulk_modulus - thermal_exp * T),
tol);
95 ABS_TEST(_fp->e_from_p_T(p, T),
cv * T,
tol);
96 ABS_TEST(_fp->e_from_p_rho(p, 1. /
v),
cv * T, large_tol);
97 ABS_TEST(_fp->e_from_v_h(
v, h),
cv * T, large_tol);
98 ABS_TEST(_fp->mu_from_p_T(p, T), visc,
tol);
99 ABS_TEST(_fp->h_from_p_T(p, T), h,
tol);
100 ABS_TEST(_fp2->h_from_p_T(p, T),
cv * T + p * pp_coef / _fp2->rho_from_p_T(p, T),
tol);
101 ABS_TEST(_fp->cp_from_v_e(
v, e),
cp,
tol);
102 ABS_TEST(_fp->cv_from_v_e(
v, e),
cv,
tol);
104 _fp->c_from_v_e(
v, e),
105 std::sqrt(bulk_modulus / _fp->rho_from_p_T(_fp->p_from_v_e(
v, e), _fp->T_from_v_e(
v, e))),
107 ABS_TEST(_fp->k_from_v_e(
v, e), thermal_cond,
tol);
108 ABS_TEST(_fp->s_from_v_e(
v, e), entropy,
tol);
109 ABS_TEST(_fp->s_from_h_p(_fp->h_from_p_T(p, T), p), entropy,
tol);
110 ABS_TEST(_fp->T_from_v_e(
v, e), T,
tol);
111 ABS_TEST(_fp->T_from_p_h(p, _fp->h_from_p_T(p, T)), T,
tol);
112 ABS_TEST(_fp->T_from_p_rho(p, 1. /
v), T,
tol);
113 ABS_TEST(_fp->p_from_v_e(
v, e),
114 bulk_modulus * (thermal_exp * _fp->T_from_v_e(
v, e) + std::log(1 / (
v * density0))),
116 ABS_TEST(_fp->mu_from_v_e(
v, e), visc,
tol);
125 const Real tol = REL_TOL_DERIVATIVE;
132 DERIV_TEST(_fp->rho_from_p_T, p, T,
tol);
133 DERIV_TEST(_fp->mu_from_p_T, p, T,
tol);
134 DERIV_TEST(_fp->e_from_p_T, p, T,
tol);
135 DERIV_TEST(_fp->e_from_p_rho, p, 1. /
v,
tol);
136 DERIV_TEST(_fp->e_from_v_h,
v, e + p *
v,
tol);
137 DERIV_TEST(_fp->h_from_p_T, p, T,
tol);
138 DERIV_TEST(_fp->k_from_p_T, p, T,
tol);
139 DERIV_TEST(_fp->cp_from_p_T, p, T,
tol);
140 DERIV_TEST(_fp->cv_from_p_T, p, T,
tol);
141 DERIV_TEST(_fp->c_from_p_T, p, T,
tol);
142 DERIV_TEST(_fp->s_from_p_T, p, T,
tol);
143 DERIV_TEST(_fp->cp_from_v_e,
v, e,
tol);
144 DERIV_TEST(_fp->cv_from_v_e,
v, e,
tol);
145 DERIV_TEST(_fp->c_from_v_e,
v, e,
tol);
146 DERIV_TEST(_fp->k_from_v_e,
v, e,
tol);
147 DERIV_TEST(_fp->s_from_v_e,
v, e,
tol);
148 DERIV_TEST(_fp->T_from_v_e,
v, e,
tol);
149 DERIV_TEST(_fp->T_from_p_rho, p, 1. /
v,
tol);
150 DERIV_TEST(_fp->p_from_v_e,
v, e,
tol);
151 DERIV_TEST(_fp->mu_from_v_e,
v, e,
tol);
158 DERIV_TEST(_fp->rho_from_p_T, p, T,
tol);
159 DERIV_TEST(_fp->mu_from_p_T, p, T,
tol);
160 DERIV_TEST(_fp->e_from_p_T, p, T,
tol);
161 DERIV_TEST(_fp->e_from_p_rho, p, 1. /
v,
tol);
162 DERIV_TEST(_fp->e_from_v_h,
v, e + p *
v,
tol);
163 DERIV_TEST(_fp->h_from_p_T, p, T,
tol);
164 DERIV_TEST(_fp->k_from_p_T, p, T,
tol);
165 DERIV_TEST(_fp->cp_from_p_T, p, T,
tol);
166 DERIV_TEST(_fp->cv_from_p_T, p, T,
tol);
167 DERIV_TEST(_fp->c_from_p_T, p, T,
tol);
168 DERIV_TEST(_fp->s_from_p_T, p, T,
tol);
169 DERIV_TEST(_fp->cp_from_v_e,
v, e,
tol);
170 DERIV_TEST(_fp->cv_from_v_e,
v, e,
tol);
171 DERIV_TEST(_fp->c_from_v_e,
v, e,
tol);
172 DERIV_TEST(_fp->k_from_v_e,
v, e,
tol);
173 DERIV_TEST(_fp->s_from_v_e,
v, e,
tol);
174 DERIV_TEST(_fp->T_from_v_e,
v, e,
tol);
175 DERIV_TEST(_fp->T_from_p_rho, p, 1. /
v,
tol);
176 DERIV_TEST(_fp->p_from_v_e,
v, e,
tol);
177 DERIV_TEST(_fp->mu_from_v_e,
v, e,
tol);
186 const Real p = 1.0e6;
187 const Real T = 300.0;
188 const Real tol = REL_TOL_CONSISTENCY;
191 Real rho, drho_dp, drho_dT;
192 _fp->rho_from_p_T(p, T, rho, drho_dp, drho_dT);
194 _fp->mu_from_p_T(p, T,
mu, dmu_dp, dmu_dT);
195 Real e, de_dp, de_dT;
196 _fp->e_from_p_T(p, T, e, de_dp, de_dT);
199 Real rho2, drho2_dp, drho2_dT, mu2, dmu2_dp, dmu2_dT, e2, de2_dp, de2_dT;
200 _fp->rho_mu_from_p_T(p, T, rho2, mu2);
202 ABS_TEST(rho, rho2,
tol);
203 ABS_TEST(
mu, mu2,
tol);
205 _fp->rho_mu_from_p_T(p, T, rho2, drho2_dp, drho2_dT, mu2, dmu2_dp, dmu2_dT);
206 ABS_TEST(rho, rho2,
tol);
207 ABS_TEST(drho_dp, drho2_dp,
tol);
208 ABS_TEST(drho_dT, drho2_dT,
tol);
209 ABS_TEST(
mu, mu2,
tol);
210 ABS_TEST(dmu_dp, dmu2_dp,
tol);
211 ABS_TEST(dmu_dT, dmu2_dT,
tol);
213 _fp->rho_e_from_p_T(p, T, rho2, drho2_dp, drho2_dT, e2, de2_dp, de2_dT);
214 ABS_TEST(rho, rho2,
tol);
215 ABS_TEST(drho_dp, drho2_dp,
tol);
216 ABS_TEST(drho_dT, drho2_dT,
tol);
217 ABS_TEST(e, e2,
tol);
218 ABS_TEST(de_dp, de2_dp,
tol);
219 ABS_TEST(de_dT, de2_dT,
tol);
static const std::string cv
TEST_F(SimpleFluidPropertiesTest, fluidName)
Test that the fluid name is correctly returned.
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