Questions are infinitely superior to answers.

― Dan Sullivan

The quality of research hinges upon questions and their quality. Surprisingly simple questions can lead to discovery. I’m not claiming discovery here, but I’ll start with what seems like a simple question and attack it.

There are some questions that shouldn’t be asked until a person is mature enough to appreciate the answers.

― Anne Bishop

Should the flux from a Riemann solver obey certain sign preserving qualities? By this I mean that under some conditions the numerical flux used to integrate hyperbolic conservation laws should obey a sign convention. I decided that it was a reasonable question, but it need to be bounded. I found a good starting point.

What’s a Riemann solver? If you know already go ahead and skip to the next paragraph. If you don’t here is a simple explanation: if you bring two slabs of material together at different conditions and then let them interact, the resulting solution can be idealized as a Riemann solution. For example if I have two blocks of gas separated by a thin diaphragm then remove it, the resulting structures are described by the Riemann solution. This is also known as a “shock tube”. Godunov showed us how to use the Riemann solution to construct a numerical method [Godunov].

For the Euler equations the momentum flux \rho u^2 + p should be positive definite always (at least for gas dynamics). The density, \rho and the pressure, p are both positive. The remaining term is quadratic, thus the entire thing is positive. I reasoned that a negative flux would be unphysical. I worried that dissipative terms when added to the computation of the flux could make it negative.

Doing this generally is a challenge, but there is one Riemann solver that is simple and has a compact closed form, the HLL (for Harten-Lax-Van Leer) flux [HLL, HLLE]. This flux function is incredibly important because of its robustness and use as a “go to” flux for difficult problems [Quirk]. Its simplicity makes it a synch to implement. Its form is also so simple that it almost begs to be analyzed.

The basic form is F =A +D  where A (S_R-S_L)=S_R F\left( U_L \right)S_L F \left( U_R \right) (S_R -S_L) D =S_L S_R \left( U_R - U_L \right)S_L is negative definite, and S_R is positive definite bounding wave speeds. The subscripts L and R refer to the states to the left and right of the interface where the Riemann solution is sought. For the Euler equations these are always the acoustic eigenvalues associated with shocks and rarefactions in the solution. We can choose these so that S_L = \min\left(0, u-c\right) and S_R = \max\left(0, u+c\right) are as large as possible for the initial data. If all the wave speeds are moving to the left or right, the HLL formula simplifies quite readily to the “proper” upwinding, which is the selection of F\left(U_L\right) for rightward waves, and F\left(U_R\right) for leftward. Care must be taken to assure that any internal waves aren’t created in the Riemann solution that changes the directionality of the waves. If this is true, these changes must be incorporated in the estimates for S_L and S_R.

If we have a flux that will be positive definite, it isn’t too hard to see where we will have problems. If the combination of the wave speed sizes and the jump in the variable, U_R-U_L is too large it may overwhelm the fluxes resulting in a negative value. For the case of the momentum flux this will happen in strong rarefactions where the velocities are opposite in sign. There is a common problem to solve that test this known colloquially as the “1-1-1” problem. Here the density and energy are set to one and the velocities are equal and opposite. This creates a strong rarefaction that nearly creates a vacuum.

With the HLL flux the computed momentum flux is negative at the center of the domain. I believe this has some negative impacts on the solution. The manifests itself as the “heating” at the center of the expansion in the energy solution, and the “soft” profile at the center of the velocity profile. Both are indicative of significantly too diffuse solution.



To counter this potentially “unphysical” response I detect the negative momentum flux and set the flux to zero overwriting the negative value. This changes the solution significantly by most notably removing the overheating from the center of the region, but leaving behind a small oscillation. The velocity field is now flat near the center of the domain while the changes in the density and pressure are subtler. With the original flux the density is slightly depressed near the center, with the modification the density is slightly elevated.


The scientist is not a person who gives the right answers, he’s one who asks the right questions.

― Claude Lévi-Strauss

I view these results are purely preliminary and promising. They need much more investigation to sort out their validity, and the appropriate means of modifying the flux. I believe that the present modification still yields an entropy-satisfying scheme. A couple of questions are worth thinking about moving forward. There are other cases where the sign of the HLL flux is demonstrably wrong, but not where the flux itself is signed in a definite way. This certainly happens with contract discontinuities, but existing methods exist to modify HLL to preserve contacts better [HLLEM]. Does this problem go beyond the case of contacts? Higher order truncation error terms produce both dissipative and anti-dissipative effect. How do these effects influence solution? In artificial viscosity, the method turns off dissipation in expansion. How would this type of approach work with Riemann solvers?

Judge a man by his questions rather than by his answers.

― Voltaire

[Godunov] Godunov, Sergei Konstantinovich. “A difference method for numerical calculation of discontinuous solutions of the equations of hydrodynamics.” Matematicheskii Sbornik 89, no. 3 (1959): 271-306.

[HLL] Harten, Amiram, Peter D. Lax, and Bram van Leer. “On upstream differencing and Godunov-type schemes for hyperbolic conservation laws.” SIAM review 25, no. 1 (1983): 35-61.

[HLLE] Einfeldt, Bernd. “On Godunov-type methods for gas dynamics.” SIAM Journal on Numerical Analysis 25, no. 2 (1988): 294-318.

[HLLEM] Einfeldt, Bernd, Claus-Dieter Munz, Philip L. Roe, and Björn Sjögreen. “On Godunov-type methods near low densities.” Journal of computational physics 92, no. 2 (1991): 273-295.

[Quirk] Quirk, James J. “A contribution to the great Riemann solver debate.” International Journal for Numerical Methods in Fluids 18, no. 6 (1994): 555-574.