摘要

The Riemann problem, and the associated generalized Riemann problem, are increasingly seen as the important building blocks for modern higher order Godunov-type schemes. In the past, building a generalized Riemann problem solver was seen as an intricately mathematical task because the associated Riemann problem is different for each hyperbolic system of interest. This paper changes that situation. The HLLI Riemann solver is a recently-proposed Riemann solver that is universal in that it is applicable to any hyperbolic system, whether in conservation form or with nonconservative products. The HLLI Riemann solver is also complete in the sense that if it is given a complete set of eigenvectors, it represents all waves with minimal dissipation. It is, therefore, very attractive to build a generalized Riemann problem solver version of the HLLI Riemann solver. This is the task that is accomplished in the present paper. We show that at second order, the generalized Riemann problem version of the HLLI Riemann solver is easy to design. Our GRP solver is also complete and universal because it inherits those good properties from original HLLI Riemann solver. We also show how our GRP solver can be adapted to the solution of hyperbolic systems with stiff source terms. Our generalized HLLI Riemann solver is easy to implement and performs robustly and well over a range of test problems. All implementation-related details are presented. Results from several stringent test problems are shown. These test problems are drawn from many different hyperbolic systems, and include hyperbolic systems in conservation form; with non-conservative products; and with stiff source terms. The present generalized Riemann problem solver performs well on all of them.