19 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::Real
get_dyn_tau(
20 const amrex::Real u_dx,
21 const amrex::Real v_dx,
23 const amrex::Real unit_nor)
const
27 const amrex::Real dx_eta_wave =
29 const amrex::Real dy_eta_wave = 0;
30 const amrex::Real dt_eta_wave =
32 const amrex::Real grad_eta_wave =
33 std::sqrt(dx_eta_wave * dx_eta_wave + dy_eta_wave * dy_eta_wave);
34 const amrex::Real Cx_wave =
35 -dt_eta_wave * dx_eta_wave * (1 / (grad_eta_wave * grad_eta_wave));
36 const amrex::Real Cy_wave =
37 -dt_eta_wave * dy_eta_wave * (1 / (grad_eta_wave * grad_eta_wave));
38 const amrex::Real n_x = dx_eta_wave / grad_eta_wave;
39 const amrex::Real n_y = dy_eta_wave / grad_eta_wave;
42 const amrex::Real u_r = u_dx - Cx_wave;
43 const amrex::Real v_r = v_dx - Cy_wave;
44 const amrex::Real ur_mag =
45 std::sqrt(u_r * u_r * n_x * n_x + v_r * v_r * n_y * n_y);
46 const amrex::Real Heavi_arg = (u_r * dx_eta_wave + v_r * dy_eta_wave);
47 const amrex::Real Heavi =
48 (Heavi_arg + std::abs(Heavi_arg)) / (2 * Heavi_arg);
51 return (1 / M_PI) * ur_mag * ur_mag * grad_eta_wave * grad_eta_wave *
52 Heavi * (unit_nor == 0 ? n_x : n_y);