HLL approximate Riemann solver.
Uses Einfeldt (HLLE) wave-speed estimates based on the minimum/maximum of Davis and Roe-averaged wave speeds, providing robust positivity preservation.
Wave speeds: S_L = min(u_L - c_L, ũ - c̃), S_R = max(u_R + c_R, ũ + c̃)
Numerical flux: F_HLL = F_L if S_L ≥ 0 F_HLL = F_R if S_R ≤ 0 F_HLL = (S_R F_L - S_L F_R + S_L S_R (Q_R - Q_L)) / (S_R - S_L) otherwise
See Harten, Lax & van Leer (1983), SIAM Rev. 25, 35–61. See Einfeldt (1988), SIAM J. Numer. Anal. 25, 294–318.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | q_L(:) | |||
| real(kind=wp), | intent(in) | :: | q_R(:) | |||
| real(kind=wp), | intent(out) | :: | flux(:) | |||
| real(kind=wp), | intent(in) | :: | gam |
Ratio of specific heats |