Page 1 of 16

European Journal of Applied Sciences – Vol. 12, No. 1

Publication Date: February 25, 2024

DOI:10.14738/aivp.121.16175

Remaki, L. (2024). Riemann Solver for Hyperbolic Equations with Discontinuous Coefficients: A Mathematical Proof of the Constant

State Formula. European Journal of Applied Sciences, Vol - 12(1). 01-16.

Services for Science and Education – United Kingdom

Riemann Solver for Hyperbolic Equations with Discontinuous

Coefficients: A Mathematical Proof of the Constant State Formula

Lakhdar Remaki

Department of mathematics and computer science,

Alfaisal University, KSA

ABSTRACT

In Godunov numerical methods type used in many industrial and scientific

numerical simulations including; fluid dynamics, electromagnetic, electro- hydrodynamic problems, a Riemann problem needs to be solved to estimate fluxes.

The exact solution is generally not possible to obtain, but good approximations are

available, Roe and HLLC Riemann solvers are among the most popular. However, all

these solvers assume that the acoustic waves speeds are continuous by considering

some averaging. In a previous work the effect of such averaging is demonstrated to

be significant for some applications leading to a wrong solution. A Riemann solver

is proposed taking into account the discontinuity of the acoustic wave’s speeds. The

case that shows discrepancy comparing to the averaged solvers is the one with an

acoustic wave’s speeds having a negative left value and a positive right value. In this

case a constant state appears and a formula of the constant state is proposed. A

numerical, and a particular exact solution based on a regularization technique are

provided to demonstrate the validity of the formula. However, and due to the

important impact of this case on Godunov type schemes, a mathematical proof is

necessary. In this paper the formula of the constant state is proved, the proof is

based on the generalized functions algebra theory.

Keyword: Hyperbolic equations, Riemann solver, waves speed, Godunov scheme, CFD,

generalized functions algebra.

INTRODUCTION

Numerical methods to solve a large range of PDEs, such as finite volume, Discontinuous

Galerkin (DG), Discontinuous finite volume, require the estimation of numerical fluxes at cell

(sub-cell) faces. The accuracy of the method depends on the accuracy of the flux estimation. For

the convective fluxes, generally a Riemann problem is considered and then an approximation

Riemann solver is used. This leads to a stable upwind numerical scheme. This approach was

first proposed by Godunov [1], consequently such methods are referred to by Godunov type

methods. Depending of the problem to solve, many Riemann solvers were developed. In

computational fluid dynamics (CFD), the most popular being, the Roe solver [2,3], the HLL

solver [7], and the HLLC solver [6]. For the Roe solver, the Jacobian matrix is averaged in such

a way that hyperbolicity, consistency with the exact Jacobian and conservation across

discontinuities still fulfilled. This solver has been modified [4,5], to overcome the shortcoming

for low-density flows. The HLL solver, solves the original nonlinear flux to take nonlinearity

into account. It has a major drawback however because of space averaging process, the contact

discontinuities, shear waves and material interfaces are not captured. To remedy this problem,

Page 2 of 16

Services for Science and Education – United Kingdom 2

European Journal of Applied Sciences (EJAS) Vol. 12, Issue 1, February-2024

the HLLC solver was proposed by adding the missing wave to the structure. However, all these

methods assume that the waves speed are continuous across the left and right states of the

Riemann problem (through the cell interfaces of the mesh) by applying diverse averaging

process. This is not true in general; typical situations are recirculation for turbulent flows and

transitions from subsonic to supersonic for transonic regimes. The impact of this averaging on

the obtained numerical methods has been demonstrated in [8,11,15]. A Riemann solver of

scalar hyperbolic linear equation with discontinuous coefficient is developed, taking account

the wave discontinuities. It is shown [15] that the case with a negative left value and positive

right value of the wave speed, a constant state appears in the proposed Riemann solver. A wave

propagation test case, shows a sensitive discrepancy comparing to the averaging-based

scheme. This can be explained by a product of distributions that occurs, which is not defined by

the classical theory of distributions. Note that for the other cases, no differer was observed

between the Godunov scheme based on the proposed Riemann solver and the averaging solvers.

A formula of the constant state in the proposed Riemann solver was provided. Its validity is

demonstrated through numerical tests and a particular exact solution based on regularization

techniques. A mathematical proof is however necessary, which is the objective of this paper.

Indeed, a proof based on the generalized functions algebra [9,13,14], is provided. In section 2,

the proposed Riemann solver in [15] is described with the associated Godunov scheme for the

linear case with the results showing the discrepancy. In section 3, an overview of the

generalized functions algebra is provided. In section 4, a proof the the constant state is

developed. Conclusions are drawn in section 5.

RIEMANN SOLVER FOR HYPERBOLIC EQUATION WITH DISCONTINUOUS COEFFICIENTS

Consider the Cauchy problem of a scalar linear hyperbolic equation with discontinuous

coefficient,

∂t

φ + a(x)

∂x

φ = 0, on [o, T] × Ω

φ(0, x) = φ0 ∈ L

∞(Ω)

a(. ) ∈ L

∞(Ω)

(1)

The initial condition φ0

(x) and the coefficient a(x) are bounded functions, and can be

discontinuous. From the theoretical point of view, the problem is well-posed see in [9]. It is

shown that the more critical case is when the solution φ and the coefficient a(. ) are

discontinuous at the same location which leads to a product of distributions (for instance if a(. )

is some Heaviside function and a Dirac function resulting from the derivative of φ). This product

is not defined in the classical space of distributions which is not an algebra. The well-posdeness

of the problem is then studied in a more appropriate space of generalized functions introduced

by J.F Colombeau, known as well as the Colombeau’s algebra. For more details we refer to

[9,13,14]. Now, let’s define the Riemann problem associated with problem (1)

Page 3 of 16

3

Remaki, L. (2024). Riemann Solver for Hyperbolic Equations with Discontinuous Coefficients: A Mathematical Proof of the Constant State Formula.

European Journal of Applied Sciences, Vol - 12(1). 01-16.

URL: http://dx.doi.org/10.14738/aivp.121.16175

∂t

φ + a(x)

∂x

φ = 0, on [o, T] × Ω

φ(0, x) = φ0 = {

φL

if x < 0

φR if x > 0

a(x) = {

aL

if x < 0

aR if x > 0.

(2)

In this equation, the acoustic wave speed a(. ) is discontinuous, which again, is not taken into

account in the existing Riemann solvers where acoustic waves speed is averaged. In [8,15], a

Riemann solver is proposed based on the following observations of different possible

situations:

Case 1

aL > 0 and aR > 0 we have propagation of the discontinuity (of initial condition) to the right

and we do not need to consider what happening within the fan defined by the two acoustic

waves, because they will catch up if aL > βR and if aL < βR an expansion will appear.

Case 2

aL < 0 and aR < 0 similar to the previous case with a propagation of the discontinuity to the

left.

Case 3

aL < 0 and aR > 0 we have propagation of the discontinuity to the left and the right

simultaneously, and we need to determine what happened within the fan defined by the two

acoustics waves. We assume that a constant state appears, and its expression will be given

below.

Case 4:

aL > 0 and aR < 0 in this case we have opposite acoustic waves speed and then the

discontinuity will remain blocked, which means there is no propagation.

Based on the above observations, the Riemann solution of problem (2) is given by

φ(x,t) = {

φL

if aL > 0 and aR > 0

λ if aL < 0 and aR > 0

φR if aL < 0 and aR < 0

φ

0

if aL > 0 and aR < 0

(3)

Where the expression of the constant λ is given by

λ =

1

|aL|

φL+

1

|aR|

φR

1

|aL|

+

1

|aR|

(4)