42 const unsigned int N_index = chem_mixture.species_index(
"N");
43 const unsigned int N2_index = chem_mixture.species_index(
"N2");
45 const double gamma = 0.03;
51 const double w_s = 0.2;
53 const double rho = 1.0e-3;
54 const double rho_s = rho*w_s;
56 const double T = 620.1;
57 const double R_N = chem_mixture.R( chem_mixture.species_index(
"N") );
59 const double R = 30.1;
63 const double drho_dws = -rho*rho_s/R;
69 const double omega_dot_N = wall_N.omega_dot( rho_s, T );
71 const double domega_dot_dT_N = wall_N.domega_dot_dT( rho_s, T );
73 const double domega_dot_dws_N = wall_N.domega_dot_dws( rho_s, w_s, T, R );
75 const double tol = 1.0e-15;
79 double rel_error = std::fabs( (omega_dot_N - omega_dot_exact)/omega_dot_exact );
83 std::cerr << std::setprecision(16) << std::scientific
84 <<
"Mismatch in omega_dot_N!" << std::endl
85 <<
"omega_dot_N = " << omega_dot_N << std::endl
86 <<
"omega_dot_exact = " << omega_dot_exact << std::endl
87 <<
"rel error = " << rel_error << std::endl;
95 double rel_error = std::fabs( (domega_dot_dT_N - domega_dot_dT_exact)/domega_dot_dT_exact );
99 std::cerr << std::setprecision(16) << std::scientific
100 <<
"Mismatch in domega_dot_dT_N!" << std::endl
101 <<
"domega_dot_dT_N = " << domega_dot_dT_N << std::endl
102 <<
"domega_dot_dT_exact = " << domega_dot_dT_exact << std::endl
103 <<
"rel error = " << rel_error << std::endl;
111 double rel_error = std::fabs( (domega_dot_dws_N - domega_dot_dws_exact)/domega_dot_dws_exact );
113 if( rel_error > tol )
115 std::cerr << std::setprecision(16) << std::scientific
116 <<
"Mismatch in domega_dot_dws_N!" << std::endl
117 <<
"domega_dot_dws_N = " << domega_dot_dws_N << std::endl
118 <<
"domega_dot_dws_exact = " << domega_dot_dws_exact << std::endl
119 <<
"rel error = " << rel_error << std::endl;
const libMesh::Real two_pi