|Data analysis · Visualization|
Sergei K. Godunov is credited with introducing the first exact Riemann solver for the Euler equations, by extending the previous CIR (Courant-Isaacson-Rees) method to non-linear systems of hyperbolic conservation laws. Modern solvers are able to simulate relativistic effects and magnetic fields.
As iterative solutions are too costly, especially in magnetohydrodynamics, some approximations have to be made. The most popular solvers are:
Philip L. Roe used the linearisation of the Jacobian, which he then solves exactly.
The HLLE solver (developed by Ami Harten, Peter Lax, Bram van Leer and Einfeldt) is an approximate solution to the Riemann problem, which is only based on the integral form of the conservation laws and the largest and smallest signal velocities at the interface. The stability and robustness of the HLLE solver is closely related to the signal velocities and a single central average state, as proposed by Einfeldt in the original paper.
The HLLC (Harten-Lax-van Leer-Contact) solver was introduced by Toro. It restores the missing Rarefaction wave by some estimates, like linearisations, these can be simple but also more advanced exists like using the Roe average velocity for the middle wave speed. They are quite robust and efficient but somewhat more diffusive.
Rotated-hybrid Riemann solvers
These solvers were introduced by Hiroaki Nishikawa and Kitamura, in order to overcome the carbuncle problems of the Roe solver and the excessive diffusion of the HLLE solver at the same time. They developed robust and accurate Riemann solvers by combining the Roe solver and the HLLE/Rusanov solvers: they show that being applied in two orthogonal directions the two Riemann solvers can be combined into a single Roe-type solver (the Roe solver with modified wave speeds). In particular, the one derived from the Roe and HLLE solvers, called Rotated-RHLL solver, is extremely robust (carbuncle-free for all possible test cases on both structured and unstructured grids) and accurate (as accurate as the Roe solver for the boundary layer calculation).
- Godunov, S. K. (1959), "A difference scheme for numerical computation of discontinuous solution of hyperbolic equation", Mat. Sbornik, 47: 271–306
- Wu, Y.Y.; Cheung, K.F. (2008), "Explicit solution to the exact Riemann problem and application in nonlinear shallow-water equations", Int. J. Numer. Meth. Fluids, 57 (11): 1649–1668, Bibcode:2008IJNMF..57.1649W, doi:10.1002/fld.1696
- Roe, P. L. (1981), "Approximate Riemann solvers, parameter vectors and difference schemes", J. Comput. Phys., 43 (2): 357–372, Bibcode:1981JCoPh..43..357R, doi:10.1016/0021-9991(81)90128-5
- Einfeldt, B. (1988), "On Godunov-type methods for gas dynamics", SIAM J. Numer. Anal., 25 (2): 294–318, Bibcode:1988SJNA...25..294E, doi:10.1137/0725021
- Toro, E. F.; Spruce, M.; Speares, W. (1994), "Restoration of the contact surface in the HLL-Riemann solver", Shock Waves, 4 (1): 25–34, Bibcode:1994ShWav...4...25T, doi:10.1007/BF01414629
- Quirk, J. J. (1994), "A contribution to the great Riemann solver debate", Int. J. Numer. Meth. Fluids, 18 (6): 555–574, Bibcode:1994IJNMF..18..555Q, doi:10.1002/fld.1650180603, hdl:2060/19930015894.
- Nishikawa, H.; Kitamura, K. (2008), "Very simple, carbuncle-free, boundary-layer-resolving, rotated-hybrid Riemann solvers", J. Comput. Phys., 227 (4): 2560–2581, Bibcode:2008JCoPh.227.2560N, doi:10.1016/j.jcp.2007.11.003
- Toro, Eleuterio F. (1999), Riemann Solvers and Numerical Methods for Fluid Dynamics, Berlin: Springer Verlag, ISBN 978-3-540-65966-2