A Riemann problem, named after
Bernhard Riemann, is a specific
initial value problem
In multivariable calculus, an initial value problem (IVP) is an ordinary differential equation together with an initial condition which specifies the value of the unknown function at a given point in the domain. Modeling a system in physics or o ...
composed of a
conservation equation
In physics, a conservation law states that a particular measurable property of an isolated physical system does not change as the system evolves over time. Exact conservation laws include conservation of energy, conservation of linear momentum, co ...
together with
piecewise
In mathematics, a piecewise-defined function (also called a piecewise function, a hybrid function, or definition by cases) is a function defined by multiple sub-functions, where each sub-function applies to a different interval in the domain. P ...
constant initial data which has a single
discontinuity in the domain of interest. The Riemann problem is very useful for the understanding of equations like
Euler conservation equations because all properties, such as shocks and rarefaction waves, appear as
characteristics in the solution. It also gives an exact solution to some complex nonlinear equations, such as the
Euler equations.
In
numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of numerical methods th ...
, Riemann problems appear in a natural way in
finite volume method
The finite volume method (FVM) is a method for representing and evaluating partial differential equations in the form of algebraic equations.
In the finite volume method, volume integrals in a partial differential equation that contain a divergenc ...
s for the solution of conservation law equations due to the discreteness of the grid. For that it is widely 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 t ...
and in
computational magnetohydrodynamics simulations. In these fields, Riemann problems are calculated using
Riemann solvers.
The Riemann problem in linearized gas dynamics
As a simple example, we investigate the properties of the one-dimensional Riemann problem
in
gas dynamics
Compressible flow (or gas dynamics) is the branch of fluid mechanics that deals with flows having significant changes in fluid density. While all flows are compressible, flows are usually treated as being incompressible when the Mach number (the ...
(Toro, Eleuterio F. (1999). Riemann Solvers and Numerical Methods for Fluid Dynamics, Pg 44, Example 2.5)
The initial conditions are given by
:
where ''x'' = 0 separates two different states, together with the linearised gas dynamic equations (see
gas dynamics
Compressible flow (or gas dynamics) is the branch of fluid mechanics that deals with flows having significant changes in fluid density. While all flows are compressible, flows are usually treated as being incompressible when the Mach number (the ...
for derivation).
:
where we can assume without loss of generality
.
We can now rewrite the above equations in a conservative form:
:
:
where
:
and the index denotes the partial derivative with respect to the corresponding variable (i.e. x or t).
The
eigenvalues
In linear algebra, an eigenvector () or characteristic vector of a linear transformation is a nonzero vector that changes at most by a scalar factor when that linear transformation is applied to it. The corresponding eigenvalue, often denoted b ...
of the system are the
characteristics of the system
. They give the propagation speed of the medium, including that of any discontinuity, which is the speed of sound here. The corresponding
eigenvector
In linear algebra, an eigenvector () or characteristic vector of a linear transformation is a nonzero vector that changes at most by a scalar factor when that linear transformation is applied to it. The corresponding eigenvalue, often denote ...
s are
:
By decomposing the left state
in terms of the eigenvectors, we get for some
:
Now we can solve for
and
:
:
Analogously
:
for
:
Using this, in the domain in between the two characteristics
,
we get the final constant solution:
:
and the (piecewise constant) solution in the entire domain
:
: