Many mathematical models of computational fluid dynamics involve transport of conserved quantities, which must lie in a certain range to be physically meaningful. The analytical or numerical solution u of a scalar conservation law is said to be bound-preserving if global bounds u∗ and u∗ exist such that u∗≤u≤u∗ holds in the domain of definition. These bounds must be known a priori. To enforce such inequality constraints at least for element averages in the context of discontinuous Galerkin (DG) methods, the numerical fluxes must be defined and constrained in an appropriate manner. In this work, we introduce a general framework for calculating fluxes that produce non-oscillatory DG approximations and preserve relevant global bounds for element averages even if the analytical solution of the PDE violates them due to modeling errors. The proposed methodology is based on a combination of flux and slope limiting. The (optional) slope limiter adjusts the gradients to impose local bounds on pointwise values of the high-order DG solution, which is used to calculate the fluxes. The flux limiter constrains changes of element averages so as to prevent violations of global bounds. Since manipulations of the target flux may introduce a consistency error, it is essential to guarantee that physically admissible fluxes remain unchanged. We propose two kinds of flux limiters, which meet this requirement. The first one is of monolithic type and its time-implicit version requires the iterative solution of a nonlinear problem. Only a fully converged solution is provably bound-preserving. The time-explicit version of this limiter is subject to a time step restriction, which we derive in this article. The second limiter is an iterative version of the multidimensional flux-corrected transport (FCT) algorithm and works as postprocessed correction scheme. This fractional step limiting approach guarantees that each iterate is bound-preserving but avoidable consistency errors may occur if the iterative process is terminated too early. Each iterate depends only on local information of the previous iterate. This concept of limiting the numerical fluxes is also applicable to finite volume methods. Practical applicability of the proposed flux limiters as well as the benefits of using an optional slope limiter are demonstrated by numerical studies for the advection equation (hyperbolic, linear) and the Cahn–Hilliard equation (parabolic, nonlinear) for first-order polynomials. While both flux limiters work for arbitrary order polynomials, we discuss the construction of bound-preserving slope limiters, and show numerical studies only for first-order polynomials.
Read full abstract