Slope-limiter schemes for linear hyperbolic equation I want to find a second-order slope-limiter method with the minmod slope limiter for $u_t + a u_x = 0$ where $a \in \mathbb{R}$.
Can someone explain to me how to do this. Im trying to understand the difference between flux limiter/slope limiter. 
 A: Let us assume that $a>0$ (a similar derivation can be made in the case $a<0$). First, we introduce a regular Cartesian grid, such that $u(x_i, t_n) \simeq u_i^n$ with $x_i = i\Delta x$ and $t_n = n\Delta t$. We construct the piecewise linear function $\tilde u^n$ defined by
$$
\tilde u^n (x,t_n) = u_i^n + \sigma_i^n (x-x_i)
$$
over the cell $\mathcal{C}_i = [x_{i-1/2},x_{i+1/2}[$. By definition, the value of $u_i^n$ corresponds to a cell-average $\frac{1}{\Delta x}\int_{\mathcal C_i} \tilde u (x,t_n)\,\text d x$ of $\tilde u^n$. Using the analytical solution of the Cauchy problem, one shows that $\tilde u^n (x,t_{n+1}) = \tilde u^n (x-a\Delta t,t_n)$ for all $x$. Now, we compute the cell averages of $\tilde u$ at $t_{n+1}$ by assuming that the CFL condition $\gamma \leq 1$ is satisfied, where $\gamma = a\Delta t/ \Delta x > 0$ is the Courant number:
\begin{aligned}
u_i^{n+1} 
&= \frac{1}{\Delta x} \int_{\mathcal C_i} \tilde u^n (x-a\Delta t,t_{n})\, \text d x \\
&= \frac{1}{\Delta x} \int_{x_{i-1/2}-a\Delta t}^{x_{i+1/2}-a\Delta t} \tilde u^n (\xi,t_{n})\, \text d \xi \\
&= \gamma \left( u_{i-1}^n + \frac{\Delta x}{2}  (1-\gamma) \sigma_{i-1}^n\right) + \left(1 - \gamma\right) \left( u_{i}^n - \frac{\Delta x}{2} \gamma \sigma_{i}^n\right) ,
\end{aligned}
which gives the time-stepping formula
$$
u_i^{n+1} 
= u_i^n - \gamma (u_i^n - u_{i-1}^n) - \gamma (1-\gamma)\frac{\Delta x}{2} (\sigma_i^n - \sigma_{i-1}^n) \, .
$$
The first terms correspond to the first-order upwind method, while the last term is a higher-order correction depending on the slopes $\sigma_i^n$. The minmod slope-limiter method corresponds to the choice
$$
\sigma_i^n = \text{minmod}\left( \frac{u_i^n - u_{i-1}^n}{\Delta x}, \frac{u_{i+1}^n - u_{i}^n}{\Delta x}\right) ,
$$
where the minmod limiter function is $(a,b)\mapsto \frac{1}{2}(\text{sign}\, a + \text{sign}\, b)\min(|a|,|b|)$ (see Ref. (1), §6.4 p. 106-107 and §6.9 p. 111). It is not exactly second-order accurate, but it has a larger order of accuracy than the upwind method, and it avoids introducing spurious oscillations.

(1) R.J. LeVeque, Finite Volume Methods for Hyperbolic Problems, Cambridge University Press, 2002, doi:10.1017/CBO9780511791253
