Rotated-hybrid HLL-Roe solver (Nishikawa & Kitamura, J. Comput. Phys. 227, 2008): HLL along the direction of the velocity difference (normal to shocks, where Roe's lack of dissipation causes carbuncles) and Roe across it (shear layers and contacts stay sharp).
More...
|
| static KOKKOS_INLINE_FUNCTION void | calc_flux (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const rtype gamma) |
| |
| static KOKKOS_INLINE_FUNCTION void | calc_flux (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const SideThermo &th_l, const SideThermo &th_r) |
| | Mixture flux with per-side thermodynamics.
|
| |
| template<typename... Thermo> |
| static KOKKOS_INLINE_FUNCTION void | shock_blended (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const rtype a_ref, const Thermo &... th) |
| | The rotated hybrid, blended toward HLL along the face normal by the pressure jump across the face: w F_rotated + (1 - w) F_HLL(n), w = min(p_l / p_r, p_r / p_l)^3 (the pressure weight of AUSMPW+: Kim, Kim & Rho, J. Comput. Phys. 174, 2001). On faces aligned with a shock the rotation is already HLL along n; on tetrahedra it turns HLL toward the shock normal, which grows a carbuncle on the stagnation line with MUSCL or TENO states (#80). Contacts and shear layers carry no pressure jump and keep the rotated flux.
|
| |
| template<typename... Thermo> |
| static KOKKOS_INLINE_FUNCTION void | rotated (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const rtype a_ref, const Thermo &... th) |
| | The hybrid for either form of the thermodynamics th, passed on to HLL and Roe; a_ref scales the threshold below which the velocity jump falls back to the face normal.
|
| |
| template<typename... Thermo> |
| static KOKKOS_INLINE_FUNCTION void | rotated_3d (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const rtype a_ref, const Thermo &... th) |
| | 3D variant: n1 is the unit velocity difference (or n), n2 the unit vector orthogonal to n1 in the plane of n1 and n, both oriented along n. Roe is dropped when n1 is parallel to n.
|
| |
Rotated-hybrid HLL-Roe solver (Nishikawa & Kitamura, J. Comput. Phys. 227, 2008): HLL along the direction of the velocity difference (normal to shocks, where Roe's lack of dissipation causes carbuncles) and Roe across it (shear layers and contacts stay sharp).
template<typename... Thermo>
The rotated hybrid, blended toward HLL along the face normal by the pressure jump across the face: w F_rotated + (1 - w) F_HLL(n), w = min(p_l / p_r, p_r / p_l)^3 (the pressure weight of AUSMPW+: Kim, Kim & Rho, J. Comput. Phys. 174, 2001). On faces aligned with a shock the rotation is already HLL along n; on tetrahedra it turns HLL toward the shock normal, which grows a carbuncle on the stagnation line with MUSCL or TENO states (#80). Contacts and shear layers carry no pressure jump and keep the rotated flux.