A Riemann solver is a
numerical method
In numerical analysis, a numerical method is a mathematical tool designed to solve numerical problems. The implementation of a numerical method with an appropriate convergence check in a programming language is called a numerical algorithm.
Mathem ...
used to solve a
Riemann problem A Riemann problem, named after Bernhard Riemann, is a specific initial value problem composed of a conservation equation together with piecewise constant initial data which has a single discontinuity in the domain of interest. The Riemann problem ...
. They are heavily used in
computational fluid dynamics
Computational fluid dynamics (CFD) is a branch of fluid mechanics that uses numerical analysis and data structures to analyze and solve problems that involve fluid flows. Computers are used to perform the calculations required to simulate th ...
and
computational magnetohydrodynamics Computational magnetohydrodynamics (CMHD) is a rapidly developing branch of magnetohydrodynamics that uses numerical methods and algorithms to solve and analyze problems that involve electrically conducting fluids. Most of the methods used in CMHD ...
.
Definition
Generally speaking, Riemann solvers are specific methods for computing the numerical flux across a discontinuity in the Riemann problem. They form an important part of
high-resolution scheme
High-resolution schemes are used in the numerical solution of partial differential equations where high accuracy is required in the presence of shocks or discontinuities. They have the following properties:
*Second- or higher-order spatial accur ...
s; typically the right and left states for the Riemann problem are calculated using some form of nonlinear reconstruction, such as a
flux limiter
Flux limiters are used in high resolution schemes – numerical schemes used to solve problems in science and engineering, particularly fluid dynamics, described by partial differential equations (PDEs). They are used in high resolution schemes, su ...
or a
WENO method, and then used as the input for the Riemann solver.
Exact solvers
Sergei K. Godunov
Sergei Konstantinovich Godunov (russian: Серге́й Константи́нович Годуно́в; born July 17, 1929) is a Soviet and Russian professor at the Sobolev Institute of Mathematics of the Russian Academy of Sciences in Novosibir ...
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.
More recent research shows that an exact series solution to the Riemann problem exists, which may converge fast enough in some cases to avoid the iterative methods required in Godunov's scheme.
Approximate solvers
As iterative solutions are too costly, especially in magnetohydrodynamics, some approximations have to be made. Some popular solvers are:
Roe solver
Philip L. Roe used the linearisation of the Jacobian, which he then solves exactly.
HLLE solver
The HLLE solver (developed by
Ami Harten
Amiram Harten (1946 – 1994) was an American/ Israeli applied mathematician. Harten made fundamental contribution to the development of high-resolution schemes for the solution of hyperbolic partial differential equations. Among other cont ...
,
Peter Lax
Peter David Lax (born Lax Péter Dávid; 1 May 1926) is a Hungarian-born American mathematician and Abel Prize laureate working in the areas of pure and applied mathematics.
Lax has made important contributions to integrable systems, fluid ...
,
Bram van Leer
Bram van Leer is Arthur B. Modine Emeritus Professor of aerospace engineering at the University of Michigan, in Ann Arbor. He specializes in ''Computational fluid dynamics (CFD)'', ''fluid dynamics'', and ''numerical analysis.'' His most influen ...
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
HLLC solver
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
Hiroaki is a masculine Japanese given name
in modern times consist of a family name (surname) followed by a given name, in that order. Nevertheless, when a Japanese name is written in the Roman alphabet, ever since the Meiji era, the official ...
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).
Other solvers
There are a variety of other solvers available, including more variants of the HLL scheme and solvers based on flux-splitting via characteristic decomposition.
Notes
See also
*
Godunov's scheme In numerical analysis and computational fluid dynamics, Godunov's scheme is a conservative numerical scheme, suggested by S. K. Godunov in 1959, for solving partial differential equations. One can think of this method as a conservative finite-vol ...
*
Computational fluid dynamics
Computational fluid dynamics (CFD) is a branch of fluid mechanics that uses numerical analysis and data structures to analyze and solve problems that involve fluid flows. Computers are used to perform the calculations required to simulate th ...
*
Computational magnetohydrodynamics Computational magnetohydrodynamics (CMHD) is a rapidly developing branch of magnetohydrodynamics that uses numerical methods and algorithms to solve and analyze problems that involve electrically conducting fluids. Most of the methods used in CMHD ...
References
*
External links
{{Bernhard Riemann
Numerical analysis
Computational fluid dynamics
Conservation equations
Bernhard Riemann