Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

In this chapter we study the generalization of the front-tracking algorithm to systems of conservation laws, and how this generalization generates a convergent sequence of approximate weak solutions. We shall then proceed to show that the limit is a weak solution. Thus we shall study the initial value problem

$$\displaystyle u_{t}+f(u)_{x}=0,\quad u|_{t=0}=u_{0},$$
(6.1)

where \(f\colon\mathbb{R}^{n}\to\mathbb{R}^{n}\) and u 0 is a function in \(L^{1}(\mathbb{R})\).

In doing this, we are in the setting of Lax’s theorem (Theorem 5.17); we have a system of strictly hyperbolic conservation laws, where each characteristic field is either genuinely nonlinear or linearly degenerate, and the initial data are close to a constant. This restriction is necessary, since the Riemann problem may fail to have a solution for initial states far apart, which is analogous to the appearance of a ‘‘vacuum’’ in the solution of the shallow-water equations.

The convergence part of the argument follows the traditional method of proving compactness in the context of conservation laws, namely, via Kolmogorov’s compactness theorem or Helly’s theorem.

Again, the basic ingredient in front tracking is the solution of Riemann problems, or in this case, the approximate solution of Riemann problems. Therefore, we start by defining these approximations.

6.1 Front Tracking for Systems

Nisi credideritis, non intelligetis. — Saint Augustine, De Libero Arbitrio Footnote 1(387/9)

In order for us to define front tracking in the scalar case, the solution of the Riemann problem had to be a piecewise constant function. For systems, this is possible only if all waves are shock waves or contact discontinuities. Consequently, we need to approximate the continuous parts of the solution, the rarefaction waves, by functions that are piecewise continuous in \(x/t\).

There are, of course, several ways to make this approximation. We use the following: Let δ be a small parameter. For the rest of this chapter, δ will always denote a parameter that controls the accuracy of the approximation. We start with the system of conservation laws (6.1), and the Riemann problem

$$\displaystyle u(x,0)=\begin{cases}u_{l}&\text{for $x<0$,}\\ u_{r}&\text{for $x\geq 0$.}\end{cases}$$
(6.2)

We have seen (Theorem 5.17) that the solution of this Riemann problem consists of at most \(n+1\) constant states, separated by either shock waves, contact discontinuities, or rarefaction waves. We wish to approximate this solution by a piecewise constant function in \(\left(x/t\right)\).

When the solution has shocks or contact discontinuities, it is already a step function for some range of \(\left(x/t\right)\), and we set the approximation equal to the exact solution u for such x and t.

Thus, if the jth wave is a shock or a contact discontinuity, we let

$$\displaystyle u^{\delta}_{j,\epsilon_{j}}(x,t)=u_{j,\epsilon_{j}}(x,t),\qquad\text{$t\sigma_{j}^{+}<x<t\sigma_{j+1}^{-}$},$$

where the right-hand side is given by (5.137).

A rarefaction wave is a smooth transition between two constant states, and we will replace this by a step function whose ‘‘steps’’ are no farther apart than δ and lie on the correct rarefaction curve R j . The discontinuity between two steps is defined to move with a speed equal to the characteristic speed of the left state.

More precisely, let the solution to (6.2) be given by (5.137). Assume that the jth wave is a rarefaction wave; that is, the solutions u and \(u_{m_{j}}\) lie on the jth rarefaction curve \(R_{j}\left(u_{m_{j-1}}\right)\) through \(u_{m_{j-1}}\), or

$$\displaystyle u(x,t)=u_{j,\epsilon_{j}}\left(x,t\,;\,u_{m_{j}},u_{m_{j-1}}\right),\qquad\text{for $t\sigma^{-}_{j}\leq x\leq t\sigma^{+}_{j}$}.$$

Let \(k=\mathrm{rnd}\left(\epsilon_{j}/\delta\right)\) for the moment, where \(\mathrm{rnd}\left(z\right)\) denotes the integer closestFootnote 2 to z, and let \(\hat{\delta}=\epsilon_{j}/k\). The step values of the approximation are now defined as

$$\displaystyle u_{j,l}=R_{j}\bigl(l\hat{\delta}\,;\,u_{m_{j-1}}\bigr),\qquad\text{for $l=0,\dots,k$.}$$
(6.3)

We have that \(u_{j,0}=u_{m_{j-1}}\) and \(u_{j,k}=u_{m_{j}}\). We set the speed of the steps equal to the characteristic speed to the left, and hence the piecewise constant approximation we make is the following:

$$\displaystyle u^{\delta}_{j,\epsilon_{j}}(x,t):=u_{j,0}+\sum_{l=1}^{k}\left(u_{j,l}-u_{j,l-1}\right)H\left(x-\lambda_{j}\left(u_{j,l-1}\right)t\right),$$
(6.4)

where H now denotes the Heaviside function. Equation (6.4) is to hold for \(t\sigma_{j}^{+}<x<\sigma_{j+1}^{-}t\). Loosely speaking, we step along the rarefaction curve with steps of size at most δ. Observe that the discontinuities that occur as a result of the approximation of the rarefaction wave will not satisfy the Rankine–Hugoniot condition, and hence the function will not be a weak solution. However, we will prove that \(u^{\delta}\) converges to a weak solution as \(\delta\to 0\). Fig. 6.1 illustrates this in phase space and in \((x,t)\)-space.

Fig. 6.1
figure 1

An approximated rarefaction wave in phase space and in \((x,t)\)-space

The approximate solution to the Riemann problem is then found by inserting a superscript δ at the appropriate places in (5.137), resulting in

$$\displaystyle u^{\delta}(x,t)=\begin{cases}u_{l}&\text{for $x\leq\sigma_{1}^{-}t$},\\ u^{\delta}_{1,\epsilon_{1}}(x/t;u_{m_{1}},u_{l})&\text{for $\sigma_{1}^{-}t\leq x\leq\sigma_{1}^{+}t$},\\ u_{m_{1}}&\text{for $\sigma_{1}^{+}t\leq x\leq\sigma_{2}^{-}t$},\\ u^{\delta}_{2,\epsilon_{2}}(x/t;u_{m_{2}},u_{m_{1}})&\text{for $\sigma_{2}^{-}t\leq x\leq\sigma_{2}^{+}t$},\\ u_{m_{2}}&\text{for $\sigma_{2}^{+}t\leq x\leq\sigma_{3}^{-}t$},\\ \vdots\\ u^{\delta}_{n,\epsilon_{n}}(x/t;u_{r},u_{m_{n-1}})&\text{for $\sigma_{n}^{-}t\leq x\leq\sigma_{n}^{+}t$},\\ u_{r}&\text{for $x\geq\sigma_{n}^{+}t$.}\end{cases}$$
(6.5)

It is clear that \(u^{\delta}\) converges pointwise to the exact solution given by (5.137). Indeed,

$$\displaystyle\left|u^{\delta}(x,t)-u(x,t)\right|=\mathcal{O}\left(\delta\right).$$

Therefore, we also have that \({\left\|u^{\delta}(t)-u(t)\right\|}_{L^{1}}=\mathcal{O}\left(\delta\right)\), since \(u^{\delta}\) and u are equal outside a finite interval in x.

Now we are ready to define the front-tracking procedure to (approximately) solve the initial value problem (6.1).

Our first step is to approximate the initial function u 0 by a piecewise constant function \(u_{0}^{\delta}\) (we let δ denote this approximation parameter as well) such that

$$\displaystyle\lim_{\delta\to 0}{\left\|u_{0}^{\delta}-u_{0}\right\|}_{L^{1}}=0.$$
(6.6)

We then generate approximations, given by (6.5), to the solutions of the Riemann problems defined by the discontinuities of \(u_{0}^{\delta}\). Already here we see one reason why we must assume \(\mathrm{T.V.}\left(u_{0}\right)\) to be small: The initial Riemann problems must be solvable. Therefore, we assume our initial data u 0, as well as the approximation \(u_{0}^{\delta}\), to be in some small neighborhood D of a constant \(\bar{u}\). Without loss of generality, \(\bar{u}\) can be chosen to be zero.

Since the initial discontinuities interact at some later time, we can solve the Riemann problems defined by the states immediately to the left and right of the collisions. These solutions are then replaced by approximations, and we may continue to propagate the front-tracking construction until the next interaction.

However, as in the scalar case, it is not obvious that this procedure will take us up to any predetermined time. A priori, it is not even clear whether the number of discontinuities will blow up at some finite time, that is, that the collision times will converge to some finite time. This problem is much more severe in the case of a system of conservation laws than in the scalar case, since a collision of two discontinuities generically will result in at least \(n-2\) new discontinuities. So for n > 2, the number of discontinuities seems to be growing without bound as t increases. As in the scalar case, the key to the solution of these problems lies in the study of interactions of discontinuities. To keep the number of waves finite, we shall eliminate small waves emanating from Riemann problems. However, there is a trade-off: The more waves we eliminate, the easier it is to prove convergence, but the less likely it is that the limit is a solution of the differential equation.

The method we shall use to eliminate discontinuities is taken from 9; . Let \(\nu> 0\) be some small number whose precise value will be determined later, cf. (6.36 ). Henceforth, we shall call all discontinuities in the approximate Riemann solution fronts. The family of a front separating states u L and u R is the unique number j such that

$$\displaystyle u_{R}\in W_{j}(u_{L}),$$

where, as in Chapt. 5, \(W_{j}\left(u\right)\) denotes the jth wave curve through the point u. These are parameterized as in Theorem 5.16. (Observe that we still have this relation for fronts approximating a rarefaction wave.) The strength of a front is ϵ, where we have

$$\displaystyle u_{R}=W_{j,\epsilon}u_{L}.$$

Note that the total strength of a rarefaction wave remains unchanged in the front-tracking approximation.

If a front of strength \(\epsilon_{l}\) collides from the left with a front from the right of strength \(\epsilon_{r}\), and \(\left|\epsilon_{l}\epsilon_{r}\right|\leq\nu\), then we shall not use the approximate Riemann solver given by (6.5), but the following construction.

Let \(\hat{l}\) denote the family of the front \(\epsilon_{l}\) and \(\hat{r}\) the family of \(\epsilon_{r}\). Let the state to the left of the collision be u l and the state to the right be u r . Observe that since we have a collision, \(\hat{l}\geq\hat{r}\). If \(\hat{l}> \hat{r}\), define the states \(u_{m}^{\prime}\) and \(u_{r}^{\prime}\) by

$$\displaystyle u_{m}^{\prime}=W_{\hat{r},\epsilon_{r}}u_{l},\ \ u_{r}^{\prime}=W_{\hat{l},\epsilon_{l}}u_{m}^{\prime}.$$
(6.7)

If \(\hat{l}=\hat{r}\), then we define

$$\displaystyle u_{r}^{\prime}=W_{\hat{r},\epsilon_{l}+\epsilon_{r}}u_{l}.$$
(6.8)

The piecewise constant approximation to the Riemann problem defined by the collision of a left front \(\epsilon_{l}\) and right front \(\epsilon_{r}\) consists of two fronts if \(\hat{l}> \hat{r}\) and of one front if \(\hat{l}=\hat{r}\). We define the front-tracking approximation to this problem to be the piecewise constant approximation to the Riemann problem defined by u l and \(u_{r}^{\prime}\), followed by a discontinuity traveling at a fixed speed \(\Lambda> \max_{u}\left|\lambda_{n}(u)\right|\) separating \(u_{r}^{\prime}\) and u r . This front we call a ghost front. Other fronts we call physical fronts. Regarding ghost fronts, we label these \(\epsilon_{g}\), and define the strength of a ghost front \(\epsilon_{g}\) to be \(\epsilon_{g}=\left|u_{r}^{\prime}-u_{r}\right|\). If N physical fronts, \(\gamma_{1},\ldots,\gamma_{N}\), interact at the same point, then we use an analogous construction if

$$\displaystyle\sum_{\substack{i,j\\ i\leq j}}\left|\gamma_{i}\gamma_{j}\right|\leq\nu,$$

so that the result of this interaction will not be more than N physical fronts of the same families as the incoming fronts, followed by a ghost front. More specifically, we use the following construction. First observe that since the fronts are colliding, their families are nonincreasing from left to right. We sum the strengths of fronts belonging to the same family, i.e., \(\tilde{\gamma}_{k}=\sum_{j,\hat{\jmath}=k}\gamma_{j}\) for \(k=1,\dots,n\). If the kth family is absent, the corresponding \(\tilde{\gamma}_{k}\) vanishes. Next we construct the new states after the collision, starting from the left. We define \(u_{m_{1}}^{\prime}=W_{1,\tilde{\gamma}_{1}}u_{l}\). Next we let \(u_{m_{2}}^{\prime}=W_{2,\tilde{\gamma}_{2}}u_{m_{1}}^{\prime}\), and so on until \(u_{r}^{\prime}=u_{m_{n}}^{\prime}=W_{n,\tilde{\gamma}_{n}}u_{m_{n-1}}^{\prime}\). The strength of the ghost front will be \(\varepsilon_{g}=|u_{r}-u_{r}^{\prime}|\).

Two ghost fronts will never interact, since they travel at the same speed. In order to complete our description of the front-tracking algorithm, we must define how a collision between a ghost front and a physical front is resolved. If a ghost front separating states \(u_{l}^{\prime}\) and u l collides with a physical front \(\epsilon_{r}\) separating u l and u r , we define

$$\displaystyle u_{r}^{\prime}=W_{\hat{r},\epsilon_{r}}u_{l}^{\prime}.$$

Then the solution consists of a physical front of family \(\hat{r}\) and strength \(\epsilon_{r}\), followed by a ghost front separating \(u_{r}^{\prime}\) and u r , traveling at speed Λ. In particular, note that the strength of a physical front is not changed if it collides with a ghost front. See Fig. 6.2.

Fig. 6.2
figure 2

a A collision producing a ghost front. b Collision between a ghost front and a physical front

If a ghost front interacts with several physical fronts, \(\gamma_{1},\ldots,\gamma_{N}\) at some point \((x_{c},t_{c})\), we define \(u_{r}^{\prime}=W_{1,\tilde{\gamma}_{1}}\circ\cdots\circ W_{n,\tilde{\gamma}_{n}}u_{l}^{\prime}\),Footnote 3 where is \(\tilde{\gamma}_{k}\) is as above. Then we solve the Riemann problem with left state \(u_{l}^{\prime}\) and right state \(u_{r}^{\prime}\) by the general procedure. If \(\sum_{i\leq j}\left|\gamma_{i}\gamma_{j}\right|> \nu\), we use the full solution of the Riemann problem to define the fronts. If \(\sum_{i\leq j}\left|\gamma_{i}\gamma_{j}\right|\leq\nu\), we should solve the Riemann problem using the middle states \(u_{m_{k}}^{\prime}=W_{k,\tilde{\gamma}_{k}}u^{\prime}_{m_{k-1}}\) for \(k=1,\dots,n\), with \(u_{m_{0}}^{\prime}=u^{\prime}_{l}\) followed by a ghost front separating \(u_{r}^{\prime}\) and u r . Note that this solution equals the one we would have obtained if we had let the ghost front first interact with the leftmost of the interacting fronts, \(\gamma_{N}\), then let the resulting ghost front interact with \(\gamma_{N-1}\) and so on, until the interaction between a ghost front and the rightmost front \(\gamma_{1}\), and after this, resolve the collision between \(\gamma_{N},\dots,\gamma_{1}\). Thus, a collision between a ghost front and several physical fronts can be viewed as a succession of collisions, first between the ghost front and each physical front, and then between the physical fronts. For an illustration of this, see Fig. 6.3. This perspective will be useful when we obtain interaction estimates, cf. (6.25).

Fig. 6.3
figure 3

a A collision between a ghost front and several physical fronts. b How this collision is resolved by considering a sequence of collisions

Since ghost fronts have a speed larger than that of other fronts, we define them to be of family \(n+1\).

Front tracking in a box (systems)

  1. (i)

    Given a one-dimensional strictly hyperbolic system of conservation laws,

    $$\displaystyle u_{t}+f(u)_{x}=0,\quad u|_{t=0}=u_{0},$$
    (6.9)

    where u 0 has small total variation.

  2. (ii)

    Approximate the initial data u 0 by a piecewise constant function \(u_{0}^{\delta}\).

  3. (iii)

    Approximate the solution of each Riemann problem by a piecewise constant function by sampling points at distance δ apart on the rarefaction curve and using the exact shocks and contact discontinuities.

  4. (iv)

    Track fronts (discontinuities).

  5. (v)

    Solve new Riemann problems as in (iii), or if \(\left|\epsilon_{l}\epsilon_{r}\right|\leq\nu\) or one of the colliding fronts is a ghost front, use (6.7)–(6.8).

  6. (vi)

    Continue to solve Riemann problems approximately as in (v). Denote an approximate solution by \(u^{\delta}\).

  7. (vii)

    The function \(u^{\delta}\) is well defined, and as \(\delta\to 0\), the approximate solution \(u^{\delta}\) will converge to u, the solution of (6.9 ).Footnote 4

We wish to estimate the strengths of the fronts resulting from a collision in terms of the strengths of the colliding fronts. With some abuse of notation we shall refer to both the front itself and its strength by \(\epsilon_{i}\).

Consider therefore once more N physical fronts \(\gamma_{N},\dots,\gamma_{1}\) interacting at a single point as in Fig. 6.4. We will have to keep track of the associated family of each front. As before, we denote by \(\hat{{\imath}}\) the family of wave \(\gamma_{i}\). Thus if \(\gamma_{1},\dots,\gamma_{4}\) all come from the first family, we have \(\hat{1}=\cdots=\hat{4}=1\). Since the speed of \(\gamma_{j}\) is greater than the speed of \(\gamma_{i}\) for \(j> i\), we have \(\hat{{\jmath}}\geq\hat{{\imath}}\). We label the waves resulting from the collision \(\beta_{1},\dots,\beta_{n}\).

Fig. 6.4
figure 4

A collision of N physical fronts

Let β denote the vector of waves in solution of the Riemann problem, defined by the collision of \(\gamma_{1},\dots,\gamma_{N}\), i.e., \(\beta=\left(\beta_{1},\dots,\beta_{n}\right)\), and let

$$\displaystyle\alpha=\Big(\,\sum_{\hat{{\imath}}=1}\gamma_{i}\,,\,\sum_{\hat{{\imath}}=2}\gamma_{i}\,,\,\dots,\,\sum_{\hat{{\imath}}=n}\gamma_{i}\,\Big).$$

For simplicity, also set \(\gamma=\left(\gamma_{1},\dots,\gamma_{N}\right)\). Note that β is a function of γ, that is, \(\beta=\beta(\gamma)\). For \(i<j\) we define

$$\displaystyle\beta_{i,j}\left(\sigma,\tau\right):=\frac{\partial^{2}\beta}{\partial\gamma_{i}\partial\gamma_{j}}\left(\gamma_{1},\dots,\gamma_{i-1},\sigma\gamma_{i},0,\dots,0,\tau\gamma_{j},0,\dots,0\right).$$

Then

$$\gamma_{i}\gamma_{j} \int_{0}^{1}\int_{0}^{1}\beta_{i,j}(\sigma,\tau)\,d\sigma\,d\tau$$
(6.10)
$$ =\beta\left(\gamma_{1},\dots,\gamma_{i},0,\dots,0,\gamma_{j},0,\dots,0\right)+\beta\left(\gamma_{1},\dots,\gamma_{i-1},0,\dots,0\right)$$
$$ \quad-\beta\left(\gamma_{1},\dots,\gamma_{i},0,\dots,0\right)-\beta\left(\gamma_{1},\dots,\gamma_{i-1},0,\dots,0,\gamma_{j},0,\dots,0\right).$$

Furthermore,

$$\displaystyle\beta\left(0,\dots,0,\gamma_{k},0,\dots,0\right)=\left(0,\dots,0,\gamma_{k},0,\dots,0\right),$$
(6.11)

where \(\gamma_{k}\) on the right is at the \(\hat{k}\)th place, since in this case we have no collision. Summing (6.10) for all \(i<j\), we obtain

$$\sum_{i<j}^{N}\gamma_{i}\,\gamma_{j} \int_{0}^{1}\int_{0}^{1}\beta_{i,j}(\sigma,\tau)\,d\sigma\,d\tau$$
$$ =\beta\left(\gamma_{1},\dots,\gamma_{N}\right)-\sum_{i=1}^{N}\beta\left(0,\dots,0,\gamma_{i},0,\dots,0\right)=\beta-\alpha.$$
(6.12)

By the solution of the general Riemann problem, see Lax’s theorem 5.17, we have that \(\beta_{i,j}\) is bounded; hence

$$\displaystyle\left|\beta-\alpha\right|\leq\mathcal{O}\left(1\right)\sum_{i,j;i<j}^{N}\left|\gamma_{i}\gamma_{j}\right|,$$
(6.13)

or

$$\displaystyle\beta=\alpha+\mathcal{O}\left(1\right)\sum_{\substack{i,j\\ i<j}}^{N}\left|\gamma_{i}\gamma_{j}\right|.$$
(6.14)

Note that if the incoming fronts \(\gamma_{k}\) are small, then the fronts resulting from the collision will be very small for those families that are not among the incoming fronts.

If we have a collision between a ghost front \(\epsilon_{g}\), separating states \(u_{l}^{\prime}\) and u l , and a physical front with strength ϵ of family j separating states u r and u r , the result will be a physical front of strength ϵ separating states \(u_{l}^{\prime}\) and \(u_{r}^{\prime}\), and a ghost front \(\epsilon_{g}^{\prime}\) separating \(u_{r}^{\prime}\) and u r ; see the right part of Fig. 6.2. Since \(u_{r}^{\prime}=W_{j,\epsilon}u_{l}^{\prime}\) and \(u_{r}=W_{j,\epsilon}u_{l}\),

$$\begin{aligned}\displaystyle u_{r}-u_{r}^{\prime}&\displaystyle=W_{j,\epsilon}u_{l}-W_{j,\epsilon}u_{l}^{\prime}\\ \displaystyle&\displaystyle=u_{l}-u_{l}^{\prime}+\int_{0}^{\epsilon}\frac{\partial}{\partial\xi}\left(W_{j,\xi}u_{l}-W_{j,\xi}u_{l}^{\prime}\right)\,d\xi\\ \displaystyle&\displaystyle=u_{l}-u_{l}^{\prime}+\int_{0}^{\epsilon}\Bigl(\frac{\partial W_{j,\xi}}{\partial\xi}(u_{l})-\frac{\partial W_{j,\xi}}{\partial\xi}(u_{l}^{\prime})\Bigr)\,d\xi\\ \displaystyle&\displaystyle=u_{l}-u_{l}^{\prime}+\mathcal{O}\left(1\right)\left|\epsilon\right|\left|u_{l}-u_{l}^{\prime}\right|.\end{aligned}$$

Therefore

$$\displaystyle\left|\epsilon_{g}^{\prime}\right|\leq\left|\epsilon_{g}\right|+K\left|\epsilon\right|\left|\epsilon_{g}\right|.$$
(6.15)

⋄ Example 6.1 (Higher-order estimates)

The estimate (6.13) is enough for our purposes, but we can extract some more information from (6.12) by considering higher-order terms. Firstly, note that

$$\displaystyle\beta=\alpha+\sum_{i<j}\gamma_{i}\gamma_{j}\beta_{i,j}(0,0)+\mathcal{O}\left(1\right)\sum_{i<j}\left|\gamma_{i}\gamma_{j}\right|\left|\gamma\right|.$$
(6.16)

Therefore, we evaluate \(\beta_{i,j}(0,0)\). To do this, observe that

$$\displaystyle u_{r}=\mathcal{R}_{\beta(\gamma)}\,u_{l}=\mathcal{R}_{\gamma_{N}}\circ\mathcal{R}_{\gamma_{N-1}}\circ\cdots\circ\mathcal{R}_{\gamma_{1}}\,u_{l},$$
(6.17)

where \(\mathcal{R}_{\beta}\) is defined as in (5.141), and u l and u r are the states to the left and right of the collision, respectively. If we define

$$\displaystyle\beta_{\gamma_{j}}:=\frac{\partial\beta}{\partial\gamma_{j}},$$

(6.11) implies

$$\displaystyle\beta_{\gamma_{j}}(0,\dots,0)=e_{\hat{{\jmath}}},$$

where e k denotes the kth standard basis vector in \(\mathbb{R}^{n}\). Also note that

$$\displaystyle\frac{\partial}{\partial\gamma_{i}}\mathcal{R}_{\beta(\gamma)}=\nabla_{\beta}\mathcal{R}_{\beta}\cdot\beta_{\gamma_{i}}.$$

Furthermore, from Lemma 5.18 and (5.141), we have that

$$\displaystyle\nabla_{\beta}\mathcal{R}_{\beta}=\left(\dots,r_{k}+\sum_{j=1}^{n}\beta_{j}D_{r_{\min(j,k)}}r_{\max(j,k)},\dots\right)+\mathcal{O}\left(\left|\beta\right|^{2}\right).$$

Here the first term on the right-hand side is the \(n\times n\) matrix with the kth column equal to \(r_{k}+\sum_{j=1}^{n}\beta_{j}D_{r_{\min(j,k)}}r_{\max(j,k)}\). Consequently,Footnote 5

$$\displaystyle\frac{\partial}{\partial\gamma_{j}}\nabla_{\beta}\mathcal{R}_{(0,\dots,0)}=\left(D_{r_{1}}r_{\hat{{\jmath}}},D_{r_{2}}r_{\hat{{\jmath}}},\dots,D_{r_{\hat{{\jmath}}}}r_{\hat{{\jmath}}},D_{r_{\hat{{\jmath}}}}r_{\hat{{\jmath}}+1},\dots,D_{r_{\hat{{\jmath}}}}r_{n}\right)$$

evaluated at u l . Differentiating (6.17) with respect to \(\gamma_{i}\), we obtain

$$\displaystyle\left(\nabla_{\beta}\mathcal{R}_{\beta}\cdot\beta_{\gamma_{i}}\right)|_{\gamma=\left(0,\dots,0,\gamma_{j},0\dots,0\right)}(u_{l})=r_{\hat{{\imath}}}\left(\mathcal{R}_{\gamma_{j}}u_{l}\right)$$

for \(j> i\). Differentiating this with respect to \(\gamma_{j}\), we obtain

$$\displaystyle\left(\frac{\partial}{\partial\gamma_{j}}\nabla_{\beta}\mathcal{R}_{\beta}\right)|_{\gamma=(0,\dots,0)}e_{\hat{{\jmath}}}+\nabla_{\beta}\mathcal{R}_{(0,\dots,0)}\beta_{i,j}(0,0)=D_{r_{\hat{{\jmath}}}}r_{\hat{{\imath}}}\left(u_{l}\right).$$

Inserting this in (6.16 ), we finally obtain

$$\displaystyle\beta=\alpha+\sum_{i<j}^{N}\gamma_{i}\gamma_{j}\left(\nabla_{\beta}\mathcal{R}_{\beta}\right)^{-1}\left(D_{r_{\hat{{\jmath}}}}r_{\hat{{\imath}}}-D_{r_{\hat{{\imath}}}}r_{\hat{{\jmath}}}\right)+\mathcal{O}\left(1\right)\sum_{i<j}\left|\gamma_{i}\gamma_{j}\right|\left|\gamma\right|,$$
(6.18)

which we call the interaction estimate. One can also use (6.12) to obtain estimates of higher order.

In passing, we note that if the integral curves of the eigenvectors form a coordinate system near M, then

$$\displaystyle\left(D_{r_{j}}r_{i}-D_{r_{i}}r_{j}\right)=0$$

for all i and j, and we obtain a third-order estimate. The estimate (6.13) will prove to be the key ingredient in our analysis of front tracking.

For the reader with knowledge of differential geometry, the estimate (6.18 ) is no surprise. Assume that only two fronts collide, \(\epsilon_{l}\) and \(\epsilon_{r}\), separating states u L , u M , and u R . Let the families of the two fronts be l and r, respectively. The states u L , u M , and u R are almost connected by the integral curves of r l and r r , respectively. If we follow the integral curve of r l a (parameter) distance \(-\epsilon_{l}\) from u R , and then follow the integral curve of r r a distance \(-\epsilon_{r}\), we end up with, up to third order in \(\epsilon_{l}\) and \(\epsilon_{r}\), half the Lie bracket of \(\epsilon_{l}r_{l}\) and \(\epsilon_{r}r_{r}\) away from u L . This Lie bracket is given by

$$\displaystyle\left[\epsilon_{l}r_{l},\epsilon_{r}r_{r}\right]:=\epsilon_{l}\epsilon_{r}\left(D_{r_{l}}r_{r}-D_{r_{r}}r_{l}\right).$$

This means that if we start from u L and follow r r a distance \(\epsilon_{r}\), and then r l a distance \(\epsilon_{l}\), we finish a distance \(\mathcal{O}\left(\left[\epsilon_{l}r_{l},\epsilon_{r}r_{r}\right]\right)\) away from u R . Consequently, up to \(\mathcal{O}\left(\left[\epsilon_{l}r_{l},\epsilon_{r}r_{r}\right]\right)\), the solution of the Riemann problem with right state u R and left state u L is given by a wave of family r of strength \(\epsilon_{r}\), followed by a wave of family l of strength \(\epsilon_{l}\). While not a formal proof, these remarks illuminate the mechanism behind the calculation leading up to (6.18). See Fig. 6.5.  ⋄

Fig. 6.5
figure 5

An interaction in \((x,t)\)-space and in phase space

Before we proceed further, we introduce some notation. Front tracking will produce a piecewise constant function labeled \(u^{\delta}(x,t)\) that has, at least initially, some finite number N of fronts. These fronts have strengths \(\epsilon_{i}\), \(i=1,\dots,N\). We will refer to the ith front by its strength \(\epsilon_{i}\), and label the left and right states \(u_{l_{i}}\) and \(u_{r_{i}}\), respectively. The position of \(\epsilon_{i}\) is denoted by \(x_{i}(t)\), and with a slight abuse of notation we have that

$$\displaystyle x_{i}(t)=x_{i}+s_{i}\left(t-t_{i}\right),$$
(6.19)

where s i is the speed of the front, and \((x_{i},t_{i})\) is the position and time it originated. In this notation, \(u^{\delta}\) can be written

$$\displaystyle u^{\delta}(x,t)=u_{l_{1}}+\sum_{i=1}^{N}\left(u_{r_{i}}-u_{l_{i}}\right)H\left(x-x_{i}(t)\right).$$
(6.20)

The interaction estimate (6.13 ) shows that the ‘‘amount of change’’ produced by a collision is proportional to the product of the strengths of the colliding fronts. Therefore, in order to obtain some estimate of what will happen as fronts collide, we define the interaction potential Q. The idea is that Q should (over)estimate the amount of change in \(u^{\delta}\) caused by all future collisions. Hence by (6.13 ), Q should involve terms of type \(\left|\epsilon_{l}\epsilon_{r}\right|\). We say that two fronts are approaching if the front to the left has a larger family than the front to the right, or if both fronts are of the same family and at least one of the fronts is a shock wave. Note that this means that a ghost front is approaching all physical fronts to its right. We collect all pairs of approaching fronts in the approaching set \(\mathcal{A}\), that is,

$$\displaystyle\mathcal{A}:=\left\{\left(\epsilon_{i},\epsilon_{j}\right)\ \text{such that $\epsilon_{i}$ and $\epsilon_{j}$ are approaching}\right\}.$$
(6.21)

The set \(\mathcal{A}\) will, of course, depend on time. All future collisions will now involve two fronts from \(\mathcal{A}\) due to the hyperbolicity of the equation. Observe that two approximate rarefaction waves of the same family never collide unless there is another front between, all colliding at the same point \((x,t)\). Therefore, we define Q as

$$\displaystyle Q:=\sum_{\mathcal{A}}\left|\epsilon_{i}\epsilon_{j}\right|.$$
(6.22)

For scalar equations we saw that the total variation of the solution of the conservation law was not greater than the total variation of the initial data. From the solution of the Riemann problem, we know that this is not true for systems. Nevertheless, we shall see that if the initial total variation is small enough, the total variation of the solution is bounded. To measure the total variation we use another time-dependent functional T defined by

$$\displaystyle T:=\sum_{i=1}^{N}\left|\epsilon_{i}\right|,$$
(6.23)

where N is the number of fronts. Lax’s theorem (Theorem 5.17) implies that T is equivalent to the total variation as long as the total variation is small.

Let t 1 denote the first time two fronts collide. At this time we will have another Riemann problem, which can be solved up to the next collision time t 2, etc. In this way we obtain an increasing sequence of collision times t i , \(i\in\mathbb{N}\). To show that front tracking is well defined, we need to show that the sequence \(\left\{t_{i}\right\}\) is finite, or if infinite, not convergent. In the scalar case we saw that indeed this sequence is finite.

Fig. 6.6
figure 6

A collision of N fronts

We will analyze more closely the changes in Q and T when fronts collide. Clearly, they change only at collisions. Let t c be some fixed collision time.

Assume then that the situation is as in Fig. 6.6: N fronts \(\epsilon_{1},\dots,\epsilon_{N}\) are colliding at some point \(\left(x_{c},t_{c}\right)\), giving \(N^{\prime}\) fronts \(\epsilon_{1}^{\prime},\dots,\epsilon_{N^{\prime}}^{\prime}\). Observe that if one of the colliding fronts is a ghost front, then it must be the leftmost one, \(\epsilon_{N}\). Furthermore, if \(\epsilon_{N}\) is a ghost front, then this collision can be viewed as a sequence of collisions between the ghost front and each physical front \(\epsilon_{N-1},\ldots,\epsilon_{1}\), followed by the interaction of \(\epsilon_{N-1},\ldots,\epsilon_{1}\) as depicted in Fig. 6.3. Thus for interaction estimates, we can assume that if \(\epsilon_{N}\) is a ghost front, then there are only two fronts colliding; \(\epsilon_{2}\) (the ghost front) and \(\epsilon_{1}\) (the physical front).

Let I be a small interval containing x c , and let J be the complement of I. Then we may write \(Q=Q(I)+Q(J)+Q(I,J)\), where \(Q(I)\) and \(Q(J)\) indicate that the summation is restricted to those pairs of fronts that both lie in I and that both lie in J, respectively. Similarly, \(Q(I,J)\) means that the summation is over those pairs where one front is in I and the other in J. Let \(\tau_{1}<t_{c}<\tau_{2}\) be two times, chosen such that no other collisions occur in the interval \(\left[\tau_{1},\tau_{2}\right]\), and such that no fronts other than \(\epsilon_{1},\dots,\epsilon_{N}\) are crossing the interval I at time \(\tau_{1}\), and only waves emanating from the collision at t c , i.e., waves denoted by \(\epsilon^{\prime}_{1},\dots,\epsilon^{\prime}_{n}\), cross I at time \(\tau_{2}\). Let Q i and T i denote the values of Q and T at time \(\tau_{i}\). By construction, \(Q_{2}(I)=0\) and \(Q_{2}(J)=Q_{1}(J)\), and hence

$$\displaystyle Q_{2}-Q_{1}=Q_{2}(I,J)-Q_{1}(I,J)-Q_{1}(I).$$
(6.24)

We now want to bound the increase in \(Q(I,J)\) from time \(\tau_{1}\) to \(\tau_{2}\). More precisely, we want to prove that

$$\displaystyle Q_{2}(I,J)\leq Q_{1}(I,J)+\mathcal{O}\left(1\right)Q_{1}(I)T_{1}(J).$$
(6.25)

Let \(\left|\epsilon\epsilon^{\prime}_{i}\right|\) be a term in \(Q_{2}(I,J)\), i.e., \((\epsilon,\epsilon^{\prime}_{i})\in\mathcal{A}\) at time \(\tau_{2}\). This means that \(\epsilon_{i}^{\prime}<0\) or \(\epsilon<0\). With a slight abuse of notation we denote the family of \(\epsilon_{i}^{\prime}\) by i. Let \(\mathcal{I}_{i}\) be the set of indices of the colliding fronts in I at time \(\tau_{1}\) with family i, i.e.,

$$\displaystyle\mathcal{I}_{i}=\left\{j\mid\hat{\jmath}=i,\quad j=1,\ldots,N\right\}.$$

Now the interaction estimate (6.14) reads

$$\displaystyle\epsilon_{i}^{\prime}=\sum_{j\in\mathcal{I}_{i}}\epsilon_{j}+\mathcal{O}(1)Q_{1}(I).$$

To prove (6.25) we study different cases. First we consider the three possibilities that can occur if neither \(\epsilon_{i}^{\prime}\) nor ϵ is a ghost front:

  1. (a)

    The family of ϵ is not i. In this case, \((\epsilon_{j},\epsilon)\in\mathcal{A}\) at time \(\tau_{1}\) for all \(j\in\mathcal{I}_{i}\). Therefore

    $$\displaystyle\left|\epsilon_{i}^{\prime}\epsilon\right|\leq\sum_{\overset{\hat{\jmath}=i}{(\epsilon_{j},\epsilon)\in\mathcal{A}}}\left|\epsilon_{j}\epsilon\right|+\mathcal{O}\left(1\right)Q_{1}(I)\left|\epsilon\right|.$$
    (6.26)
  2. (b)

    The family of ϵ is i, and \(\epsilon<0\). In this case, since \((\epsilon_{i}^{\prime},\epsilon)\in\mathcal{A}\) at time \(\tau_{2}\), also \((\epsilon_{j},\epsilon)\in\mathcal{A}\) at time \(\tau_{1}\) for all \(j\in\mathcal{I}_{i}\). Hence (6.26) holds.

  3. (c)

    The family of ϵ is i, and \(\epsilon> 0\). Since \((\epsilon_{i}^{\prime},\epsilon)\in\mathcal{A}\), we infer that \(\epsilon_{i}^{\prime}<0\). Let \(\mathcal{I}_{i,-}=\left\{k\in\mathcal{I}_{i}\mid\varepsilon_{k}<0\right\}\). Then

    $$\displaystyle\left|\epsilon_{i}^{\prime}\right|=\sum_{j\in\mathcal{I}_{i,-}}\left|\epsilon_{j}\right|-\sum_{j\in\mathcal{I}_{i}\setminus\mathcal{I}_{i,-}}\left|\epsilon_{j}\right|+\mathcal{O}(1)Q_{1}(I).$$

    Also, for \(j\in\mathcal{I}_{i}\), \((\epsilon_{j},\epsilon)\in\mathcal{A}\) if and only if \(j\in\mathcal{I}_{i,-}\). Hence (6.26) holds also in this case.

Next we consider the situation when either \(\epsilon_{i}^{\prime}\) or ϵ is a ghost front.

  1. (d)

    ϵ is a ghost front. In this case ϵ must be to the left of I since \((\epsilon_{i}^{\prime},\epsilon)\in\mathcal{A}\). Thus \((\epsilon_{j},\epsilon)\in\mathcal{A}\) for all \(j\in K\) and (6.26) holds.

  2. (e)

    \(\epsilon_{i}^{\prime}\) is a ghost front. Then ϵ must be to the right of I for \((\epsilon_{i}^{\prime},\epsilon)\) to be in \(\mathcal{A}\). This situation is depicted in Fig. 6.2. In the right case, \(\epsilon_{i}\) is a ghost front, and in the left case, \(\epsilon_{i}^{\prime}=\mathcal{O}\left(1\right)Q_{1}(I)\) and there were no ghost fronts in I at \(\tau_{1}\). In the latter case, clearly (6.26) holds. If \(\epsilon_{i}\) is a ghost front, then there are only two fronts colliding in I. By (6.15), \(\left|\epsilon_{i}^{\prime}\right|\leq\left|\epsilon_{i}\right|+\mathcal{O}\left(1\right)\left|\epsilon_{i}\right|T_{1}(I)\) and \((\epsilon_{i},\epsilon)\in\mathcal{A}\). Thus (6.26) holds.

Therefore, for all pairs \((\epsilon_{i}^{\prime},\epsilon_{k})\in\mathcal{A}\) with \(\epsilon_{k}\) in J, (6.26) holds. Summing over i and k gives (6.25).

Inserting (6.25) into (6.24), using the constant K to replace the order symbol, we obtain

$$\displaystyle Q_{2}-Q_{1}\leq KQ_{1}(I)T_{1}-Q_{1}(I)=Q_{1}(I)\left(KT_{1}-1\right)\leq-\frac{1}{2}Q_{1}(I)$$
(6.27)

if T 1 is smaller than \(1/(2K)\). By the estimate (6.15), (6.27) holds also for collisions involving a ghost front. We summarize the above discussion in the following lemma.

Lemma 6.2

Assume that \(T_{1}\leq 1/(2K)\). Then

$$\displaystyle Q_{2}-Q_{1}\leq-\frac{1}{2}Q_{1}(I)$$

for every δ and ν.

We will use this lemma to deduce that the total variation remains bounded if it initially is sufficiently small, or in other words, if the initial data are sufficiently close to a constant state.

Lemma 6.3

If T is sufficiently small at t = 0, then there is some constant c independent of δ such that

$$\displaystyle G=T+c\,Q$$

is nonincreasing. We call G the Glimm functional. Consequently, T and \(\mathrm{T.V.}\left(u^{\delta}\right)\) are bounded independently of δ and ν.

Proof

Let T n and Q n denote the values of T and Q, respectively, before the nth collision of fronts at t n , with \(0<t_{1}<t_{2}<\cdots\). Using the interaction estimate (6.13), we first infer that

$$\displaystyle T_{n+1}=\sum_{j}\left|\epsilon^{\prime}_{j}\right|\leq T_{n}+KQ_{n}(I).$$
(6.28)

Let \(c\geq 2K\) and assume that \(T_{1}+cT_{1}^{2}\leq 1/(2K)\). Assume furthermore that \(T+c\,Q\) is nonincreasing for all t less than t n , and that \(T_{n}\leq 1/(2K)\). Lemma 6.2 and (6.28) imply that

$$\begin{aligned}\displaystyle T_{n+1}+c\,Q_{n+1}&\displaystyle\leq T_{n}+KQ_{n}(I)+c\,Q_{n}-\frac{c}{2}Q_{n}(I)\\ \displaystyle&\displaystyle=T_{n}+c\,Q_{n}+\left(K-\frac{c}{2}\right)Q_{n}(I)\\ \displaystyle&\displaystyle\leq T_{n}+c\,Q_{n},\end{aligned}$$

since \(K-\frac{c}{2}\leq 0\). Consequently,

$$\displaystyle T_{n+1}\leq T_{n+1}+c\,Q_{n+1}\leq\dots\leq T_{1}+c\,Q_{1}\leq T_{1}+c\,T_{1}^{2}\leq 1/(2K),$$

which by induction proves the result.  □

We still have not shown that the front-tracking approximation can be continued up to any desired time. Now, however, this is clear. Since only collisions between physical fronts that have strengths \(\epsilon_{l}\) and \(\epsilon_{r}\) such that \(\left|\epsilon_{l}\epsilon_{r}\right|> \nu\) will produce new fronts, and Q decreases by at least \(\left|\epsilon_{l}\epsilon_{r}\right|/2\) in such a collision, there can be at most \(2Q(0)/\nu\) collisions producing new nonghost fronts. Since fronts of each family will travel in a wedge in the \((x,t)\)-plane, eventually all physical fronts of different families will have interacted. After this time, two rarefaction fronts (fronts approximating rarefaction waves) of the same family will not collide, and the collision of two shock fronts of the same family will produce a single shock front of the same family and a ghost front. Thus in such collisions the number of physical fronts decreases by at least one. Therefore, there can be only a finite number of this type of collision. Since ghost fronts all have the same speed, they will not interact among themselves. Therefore, for fixed δ and ν, there will be only a finite number of interactions for all t > 0. Hence the front-tracking approximation is well defined, and we can calculate the approximation \(u^{\delta}(x,t)\) for all t > 0 using a finite number of steps. Thus front tracking for systems is also a hyperfast method.

Summing up our results so far, we have proved the following result.

Theorem 6.4

Let \(f_{j}\in C^{2}(\mathbb{R}^{n})\), \(j=1,\dots,n\). Let D be a domain in \(\mathbb{R}^{n}\) and consider the strictly hyperbolic equation \(u_{t}+f(u)_{x}=0\) in D. Assume that f is such that each wave family is either genuinely nonlinear or linearly degenerate. Assume also that the function \(u_{0}(x)\) has sufficiently small total variation.

Then the front-tracking approximation \(u^{\delta}(x,t)\), defined by (6.5), (6.6) and constructed by the front-tracking procedure described above, is well defined. Furthermore, the method is hyperfast, i.e., it requires only a finite number of computations to define \(u^{\delta}(x,t)\) for all t. The total variation of \(u^{\delta}\) is uniformly bounded, and there is a constant C such that

$$\displaystyle\mathrm{T.V.}\left(u^{\delta}(\,\cdot\,,t)\right)\leq C,$$

for all \(t\geq 0\) and all \(\delta> 0\) and all \(\nu> 0\).

6.2 Convergence

The Devil is in the details. — English proverb

At this point we could proceed, as in the scalar case, by showing that front tracking is stable with respect to L 1 perturbations of the initial data. This would then imply that the sequence of approximations \(\left\{u^{\delta}\right\}\) has a unique limit as \(\delta\to 0\). For systems, however, this analysis is rather complicated. In this section we shall instead prove that the sequence \(\left\{u^{\delta}\right\}\) is compact and that every (there is really only one) limit is a weak solution. The reader willing to accept this, or primarily interested in front tracking, may skip ahead to the next chapter.

To show that a subsequence of the sequence \(\{u^{\delta}\}_{\delta> 0}\) converges in \(L^{1}_{\mathrm{loc}}(\mathbb{R}\,{\times}\,[0,T])\), we use Theorem A.11 from Appendix A.1. We have already shown that \(u^{\delta}(x,t)\) is bounded, and we have that

$$\displaystyle\int_{\mathbb{R}}\left|u^{\delta}(x+\rho,t)-u^{\delta}(x,t)\right|\,dx\leq\rho\,\mathrm{T.V.}\left(u^{\delta}(\,\cdot\,,t)\right)\leq C\rho,$$

for some C independent of δ. Hence, by Theorem A.11, to conclude that a subsequence of \(\left\{u^{\delta}\right\}\) converges, we must show that

$$\displaystyle\int_{-R}^{R}\left|u^{\delta}(x,t)-u^{\delta}(x,s)\right|\,dx\leq C(t-s),$$

where \(t\geq s\geq 0\), for every R > 0 and for some C independent of δ. Since \(u^{\delta}\) is bounded, we have that Λ (the speed of the ghost fronts) is bounded, and (recall that \(\lambda_{1}<\cdots<\lambda_{n}\))

$$\displaystyle\Lambda> \max_{\left|u\right|\leq\sup\left|u^{\delta}\right|}\left\{\left|\lambda_{n}(u)\right|,\left|\lambda_{1}(u)\right|\right\}.$$

Let t i and \(t_{i+1}\) be two consecutive collision times. For \(t\in(t_{i},t_{i+1}]\) we write \(u^{\delta}\) in the form

$$\displaystyle u^{\delta}(x,t)=u_{1}+\sum_{k=1}^{N_{i}}\left(u_{k}^{i}-u^{i}_{k-1}\right)H\left(x-x_{k}^{i}(t)\right),$$
(6.29)

where \(x_{k}^{i}(t)\) denotes the position of the kth front from the left, and H the Heaviside function. Here \(u^{\delta}(x,t)=u^{i}_{k}\) for x between \(x^{i}_{k}\) and \(x^{i}_{k+1}\). Assume now that \(t\in[t_{i},t_{i+1}]\) and \(s\in[t_{j},t_{j+1}]\), where \(j\leq i\) and \(s\leq t\). Then

$$\displaystyle\begin{aligned}\displaystyle\int_{\mathbb{R}}\bigl|u^{\delta}(x,t)-u^{\delta}&\displaystyle\left(x,t_{i}\right)\bigr|\,dx\\ \displaystyle&\displaystyle=\int_{\mathbb{R}}\Bigl|\int_{t_{i}}^{t}\frac{d}{d\tau}u^{\delta}(x,\tau)\,d\tau\Bigr|\,dx\\ \displaystyle&\displaystyle\leq\int_{\mathbb{R}}\int_{t_{i}}^{t}\sum_{k=1}^{N_{i}}\left|u^{i}_{k-1}-u^{i}_{k}\right|\left|{x^{i}_{k}}^{\prime}(\tau)\right|\left|H^{\prime}\left(x-x_{k}^{i}(\tau)\right)\right|\,d\tau\,dx\\ \displaystyle&\displaystyle\leq\Lambda\int_{t_{i}}^{t}\sum_{k=1}^{N_{i}}\left|u^{i}_{k-1}-u^{i}_{k}\right|\int_{\mathbb{R}}\left|H^{\prime}\left(x-x_{k}^{i}(\tau)\right)\right|\,dx\,d\tau\\ \displaystyle&\displaystyle\leq\Lambda\left(t-t_{i}\right)\mathrm{T.V.}\left(u^{\delta}(\,\cdot\,,t)\right)\\ \displaystyle&\displaystyle\leq\Lambda C\left(t-t_{i}\right),\\ \displaystyle\end{aligned}$$

since \(\left|{x^{i}_{k}}^{\prime}\right|\leq\Lambda\). Similarly, we show that

$$\displaystyle\int_{\mathbb{R}}\left|u^{\delta}\left(x,t_{i}\right)-u^{\delta}\left(x,t_{j+1}\right)\right|\,dx\leq\Lambda C\left(t_{i}-t_{j+1}\right)\quad\text{if $j+1<i$,}$$

and

$$\displaystyle\int_{\mathbb{R}}\left|u^{\delta}\left(x,t_{j+1}\right)-u^{\delta}\left(x,s\right)\right|\,dx\leq\Lambda C\left(t_{j+1}-s\right).$$

Therefore,

$$\displaystyle{\left\|u^{\delta}(\,\cdot\,,t)-u^{\delta}(\,\cdot\,,s)\right\|}_{L^{1}}\leq C\left|t-s\right|,$$

for some constant C independent of t and δ. Hence, we can use Theorem A.11 to conclude that there exist a function \(u(x,t)\) and a subsequence \(\left\{\delta_{j}\right\}\subset\left\{\delta\right\}\) such that \(u^{\delta_{j}}\to u(x,t)\) in \(L^{1}_{\mathrm{loc}}\) as \(j\to\infty\).

As in the scalar case, it is by no means obvious that the limit function \(u(x,t)\) is a weak solution of the original initial value problem (6.1). For a single conservation law, this was not difficult to show, using that the approximations were weak solutions of approximate problems. This is not so in the case of systems, so we must analyze how close the approximations are to being weak solutions.

There are three sources of error in the front-tracking approximation. Firstly, the initial data are approximated by a step function. Secondly, there is the approximation of rarefaction waves by step functions, and finally, ghost fronts are not weak solutions locally.

In the following, the next lemma will be useful.

Lemma 6.5

Let the sequence \(\left\{a_{i}\right\}_{i=1}^{\infty}\) be defined by

$$\displaystyle a_{1}=1,\quad a_{m}=\sum_{j=1}^{m-1}a_{m-j}a_{j},\quad m=2,3,\dots.$$
(6.30)

Then

$$\displaystyle a_{m}=2\,\frac{(2m-3)!}{m!(m-2)!}=\mathcal{O}\left(1\right)4^{m}m^{-1/2}.$$

Proof

We use the notation

$$\displaystyle\binom{1/2}{m}=\frac{\frac{1}{2}\cdot(\frac{1}{2}-1)\cdots(\frac{1}{2}-m+1)}{m!}.$$

Define the function

$$\displaystyle y(x)=\sum_{m=1}^{\infty}a_{m}x^{m}.$$

Then, using (6.30),

$$\displaystyle y^{2}=\sum_{m=2}^{\infty}\left(\sum_{j=1}^{m-1}a_{m-j}a_{j}\right)x^{m}=y-x,$$

and we infer that (recall that \(y(0)=0\))

$$\displaystyle y(x)=\frac{1}{2}\left(1-\sqrt{1-4x}\,\right)=\sum_{m=1}^{\infty}(-1)^{m+1}\binom{1/2}{m}2^{2m-1}x^{m},$$

which implies

$$\displaystyle a_{m}=(-1)^{m+1}\binom{1/2}{m}2^{2m-1}.$$

We may rewrite this as

$$\displaystyle a_{m}=2\,\frac{(2m-3)!}{m!(m-2)!}.$$

To estimate a m as \(m\to\infty\), we apply Stirling’s formula 188; , p. 253

$$\displaystyle n!=\sqrt{2\pi}\exp\Bigg(\Big(n-\frac{1}{2}\Big)\ln(n+1)-(n+1)+\frac{\theta}{12(n+1)}\Bigg),$$

for \(0\leq\theta\leq 1\). We obtain

$$\displaystyle\begin{aligned}\displaystyle a_{m}=2\frac{(2m-3)!}{m!(m-2)!}&\displaystyle=\mathcal{O}\left(1\right)4^{m}\,m^{-1/2}.\end{aligned}$$

 □

We begin the error analysis by estimating how much we ‘‘throw away’’ by the ghost fronts. To do this, it is useful to introduce the concept of the generation of a front. We say that each initial front starting at t = 0 belongs to the first generation. Consider two first-generation fronts of families l and r, respectively, that collide. The resulting fronts of families l and r will still belong to the first generation, while all the remaining fronts resulting from this collision will be called second-generation fronts. More generally, if a front of family l and generation m interacts with a front of family r and generation n, the resulting fronts of families l and r are still assigned generations m and n, respectively, while the remaining fronts resulting from this collision are given generation \(n+m\). If k fronts, of generations \(\breve{1},\ldots,\breve{k}\) and families \(\hat{1},\ldots,\hat{k}\) collide, then the resulting fronts of family \(\hat{\imath}\) have generation \(\breve{\imath}\), while resulting fronts of families not in the set \(\left\{\hat{1},\ldots,\hat{k}\right\}\) will have generation \(\min_{i,j}\left\{\breve{\imath}+\breve{\jmath}\right\}\). The motivation behind this concept is that fronts of high generations will have small strength.

For fixed δ and ν, there will be only a finite number of fronts in \(u^{\delta}(x,t)\). We can use Lemma 6.5 to estimate the number of fronts of generation m. If we let G m denote this number, we have that

$$\displaystyle G_{m+1}\leq(n-2)\frac{T}{\delta}\sum_{j=1}^{m}G_{m+1-j}G_{j},\ \ m\geq 1,\ \ G_{1}=N\leq\mathcal{O}\left(1\right)\frac{T}{\delta}.$$
(6.31)

This holds since there will be at most \((n-2)\) waves of new generations at each collision, each of which can consist of at most \(T/\delta\) rarefaction fronts.

Set \(C=(n-2)T/\delta\) and

$$\displaystyle a_{m}=\frac{G_{m}}{C^{m-1}}.$$

Then a m satisfies

$$\begin{aligned}\displaystyle a_{m+1}&\displaystyle=\frac{G_{m+1}}{C^{m}}\\ \displaystyle&\displaystyle\leq\frac{1}{C^{m-1}}\sum_{j=1}G_{m+1-j}G_{j}\\ \displaystyle&\displaystyle=\frac{1}{C^{m-1}}\sum_{j=1}^{m}a_{m+1-j}a_{j}C^{m+1-j-1}K^{j-1}\\ \displaystyle&\displaystyle=\sum_{j=1}^{m}a_{m+1-j}a_{j}.\end{aligned}$$

We can use Lemma 6.5 and conclude that

$$G_{m} \leq\mathcal{O}\left(1\right)\left(\frac{(n-2)T}{\delta}\right)^{m-1}(4N)^{m}m^{-1/2}$$
$$ \leq\mathcal{O}\left(1\right)\frac{4^{m}(n-2)^{m-1}T^{2m-1}}{\delta^{2m-1}m^{1/2}}.$$
(6.32)

We also need to estimate the total variation of the fronts belonging to a given generation. Let \(\mathcal{G}_{m}\) denote the set of all fronts of generation m, and let \(\mathcal{T}_{m}\) denote the sum of the strengths of fronts of generation m. Thus

$$\displaystyle\mathcal{T}_{m}(t)=\sum_{\epsilon_{j}\in\mathcal{G}_{m}}\left|\epsilon_{j}\right|.$$

Since there are no fronts of generation more than N (see the discussion of Theorem 6.4),

$$\displaystyle T(t)=\sum_{m=1}^{N}\mathcal{T}_{m}(t).$$

Lemma 6.6

We have that

$$\displaystyle\mathcal{T}_{m}(t)\leq C(4KT(t))^{m}$$

for some constant C.

Proof

Using the interaction estimate, we obtain

$$\begin{aligned}\displaystyle\mathcal{T}_{m+1}&\displaystyle=\sum_{j=1}^{m}\sum_{\epsilon_{l}\in\mathcal{G}_{m+1-j}}\sum_{\epsilon_{r}\in\mathcal{G}_{j}}\mathcal{O}\left(\left|\epsilon_{l}\right|\left|\epsilon_{r}\right|\right)\\ \displaystyle&\displaystyle\leq K\sum_{j=1}^{m}\sum_{\epsilon_{l}\in\mathcal{G}_{m+1-j}}\sum_{\epsilon_{r}\in\mathcal{G}_{j}}\left|\epsilon_{l}\right|\left|\epsilon_{r}\right|\\ \displaystyle&\displaystyle=K\sum_{j=1}^{m}\mathcal{T}_{m+1-j}\mathcal{T}_{j}.\end{aligned}$$

By introducing \(\tilde{T}_{m}(t)=\mathcal{T}_{m}(t)/(T(t)^{m}K^{m-1})\), we see that \(\tilde{T}_{m}(t)\) satisfies

$$\displaystyle\tilde{T}_{m+1}(t)\leq\sum_{j=1}^{m}\tilde{T}_{m+1-j}(t)\tilde{T}_{j}(t),$$

with \(\tilde{T}_{1}(t)\leq 1\). Now we can use Lemma 6.5 to conclude that

$$\displaystyle\tilde{T}_{m}\leq C4^{m}m^{-1/2},$$

and thus

$$\displaystyle\mathcal{T}_{m}\leq C\frac{\left(4KT\right)^{m}}{\sqrt{m}},$$
(6.33)

and the lemma follows.  □

Next we must estimate the change in the strength of a ghost front as it collides with other fronts. We denote the strength of the ghost front after colliding with m other fronts by \(\epsilon_{m}\). First we claim that

$$\displaystyle\left|\epsilon_{0}\right|\leq K\nu.$$
(6.34)

To see this, assume that a front \(\epsilon_{l}\) of family \(\hat{l}\) and a front \(\epsilon_{r}\) of family \(\hat{r}\) collide and produce a ghost front; see Fig. 6.2. If \(\hat{l}> \hat{r}\), then (6.7) holds, and if \(\hat{l}=\hat{r}\), (6.8) holds. If we solve the Riemann problem exactly, obtaining n waves of strengths \(\epsilon^{\prime}_{1},\ldots,\epsilon^{\prime}_{n}\), we have that

$$\displaystyle u_{r}=W_{n,\epsilon^{\prime}_{n}}\circ W_{n-1,\epsilon^{\prime}_{n-1}}\circ W_{1,\epsilon^{\prime}_{1}}u_{l},$$

as well as the interaction estimate

$$\displaystyle\epsilon^{\prime}_{i}=\delta_{i,\hat{l}}\epsilon_{l}+\delta_{i,\hat{r}}\epsilon_{r}+\mathcal{O}\left(1\right)\left|\epsilon_{l}\epsilon_{r}\right|.$$

With a slight abuse of notation, write

$$\displaystyle W(\epsilon_{1},\epsilon_{2},\ldots,\epsilon_{n})u_{l}:=W_{n,\epsilon_{n}}\circ W_{n-1,\epsilon_{n-1}}\circ W_{1,\epsilon_{1}}u_{l},$$

so that

$$\displaystyle u_{r}=W(\epsilon_{1}^{\prime},\epsilon_{2}^{\prime},\ldots,\epsilon^{\prime}_{n})u_{l}$$

and

$$\displaystyle u_{r}^{\prime}=W(0,\ldots,0,\epsilon_{r},0,\ldots,0,\epsilon_{l},0,\ldots,0)u_{l}.$$

The function W has bounded derivatives with respect to all its arguments, whence

$$\begin{aligned}\displaystyle\left|\epsilon_{0}\right|&\displaystyle=\left|u_{r}^{\prime}-u_{r}\right|\leq K\sum_{i=1}^{n}\left|\epsilon_{i}^{\prime}-\delta_{i,\hat{l}}\epsilon_{l}-\delta_{i,\hat{r}}\epsilon_{r}\right|\\ \displaystyle&\displaystyle\leq K\left|\epsilon_{l}\epsilon_{r}\right|\leq K\nu,\end{aligned}$$

and (6.34) holds. The proof of (6.34) if several fronts interact to produce a ghost front is analogous.

To estimate how the strength of a ghost front evolves as it collides with physical fronts, we use the interaction estimate (6.15),

$$\displaystyle\left|\epsilon_{m+1}\right|\leq(1+K\left|\epsilon_{r}\right|)\left|\epsilon_{m}\right|,$$

after the next collision with a front \(\epsilon_{r}\). Using this repeatedly, after collisions with \(\epsilon_{r,1},\ldots,\epsilon_{r,m}\), yields

$$\begin{aligned}\displaystyle\left|\epsilon_{m}\right|&\displaystyle\leq(1+K\left|\epsilon_{r,1}\right|)\,\cdots\,(1+K\left|\epsilon_{r,m}\right|)\left|\epsilon_{0}\right|\\ \displaystyle&\displaystyle\leq\left|\epsilon_{0}\right|\exp\Bigl(K\sum_{k=1}^{m}\left|\epsilon_{r,k}\right|\Bigr).\end{aligned}$$

Assume that the ghost front started at \((x_{0},t_{0})\), and let \(Y(x)\) be the curve coinciding with the trajectory of the ghost front for \(t> t_{0}\) and t 0 otherwise, i.e.,

$$\displaystyle Y(x)=\begin{cases}t_{0}&x\leq x_{0},\\ t_{0}+\frac{x-x_{0}}{\Lambda}&x> x_{0}.\end{cases}$$

Then we have that

$$\displaystyle\sum_{k=1}^{m}\left|\epsilon_{r,k}\right|\leq T\Bigm|_{Y(x)^{-}}\leq G(t_{0})\leq T(0)+cT(0)^{2}\leq\frac{1}{2K},$$

since \(Y(x)\) is ‘‘spacelike.’’ Hence, for all ghost fronts,

$$\displaystyle\left|\epsilon\right|\leq K\nu e^{1/2},$$
(6.35)

since their initial strength is by definition bounded by \(K\nu\).

Now we can finally determine ν. Let \(\mathcal{G}\) denote the set of all ghost fronts. We want to choose ν such that the variation of \(u^{\delta}\) across the ghost fronts vanishes as δ becomes small. Let T g denote this variation. We have that

$$\begin{aligned}\displaystyle T_{g}&\displaystyle=\sum_{g\in\mathcal{G}}\left|\epsilon_{g}\right|\\ \displaystyle&\displaystyle=\sum_{\breve{g}=1}^{k_{0}-1}\left|\epsilon_{g}\right|+\sum_{\breve{g}\geq k_{0}}\left|\epsilon_{g}\right|\\ \displaystyle&\displaystyle\leq Ke^{1/2}\nu\sum_{k=1}^{k_{0}-1}G_{k}+\sum_{k\geq k_{0}}C\left(4KT\right)^{k},\end{aligned}$$

where G k is the total number of fronts of generation k, and T is the total variation over all fronts. Now we assume that \(T(0)\) is so small that

$$\displaystyle 4KT(t)\leq\kappa<1.$$

By (6.32),

$$\displaystyle G_{k}\leq C(C/\delta)^{2k-1}.$$

Using this, we have that

$$\displaystyle T_{g}\leq C\nu\sum_{k=1}^{k_{0}-1}\Bigl(\frac{C}{\delta}\Bigr)^{2k-1}+C\frac{\kappa^{k_{0}}}{1-\kappa}.$$

Now we first choose k 0 such that

$$\displaystyle C\frac{\kappa^{k_{0}}}{1-\kappa}\leq\frac{\delta}{2},$$

and then choose ν such that

$$\displaystyle C\nu\sum_{k=1}^{k_{0}-1}\Bigl(\frac{C}{\delta}\Bigr)^{2k-1}\leq\frac{\delta}{2}.$$
(6.36)

Thus \(T_{g}\leq\delta\), and the total strength of the ghost fronts is small.

Now we can estimate how far \(u^{\delta}\) is from being a weak solution. Recall that shock fronts are local weak solutions, while we are making errors across fronts approximating rarefaction waves and across ghost fronts.

To bound the error coming from a ghost front, we use

$$\displaystyle\left|f(u_{l})-f(u_{r})-\Lambda(u_{l}-u_{r})\right|\leq C\left|u_{l}-u_{r}\right|.$$
(6.37)

This follows from the Lipschitz continuity of f.

To bound the error coming from a rarefaction front separating u l and u r , we note that \(u_{r}=W_{j,\epsilon}u_{l}\) for some \(\epsilon\leq\delta\), and we shall need to estimate

$$\begin{aligned}\displaystyle\phi(\epsilon)&\displaystyle=f(u_{r})-f(u_{l})-\lambda_{j}(u_{l})(u_{r}-u_{l})\\ \displaystyle&\displaystyle=f\left(W_{j,\epsilon}u_{l}\right)-f(u_{l})-\lambda(u_{l})\left(W_{j,\epsilon}u_{l}-u_{l}\right).\end{aligned}$$

We have that \(\phi(0)=0\) and that

$$\displaystyle\phi^{\prime}(0)=df(u_{l})r_{j}(u_{l})-\lambda_{j}(u_{l})r_{j}(u_{l})=0.$$

Hence, \(\phi(\epsilon)=\mathcal{O}\left(\epsilon^{2}\right)\), or

$$\displaystyle\left|f(u_{r})-f(u_{l})-\lambda_{j}(u_{l})(u_{r}-u_{l})\right|\leq C\delta^{2},$$
(6.38)

if u l and u r are the left and right states of a rarefaction front.

By construction, if u l and u r are the states to the left and right of a shock front traveling with a speed σ, then

$$\displaystyle f(u_{r})-f(u_{l})-\sigma(u_{r}-u_{l})=0.$$

For a fixed time, we have that \(u^{\delta}\) is piecewise constant in x, and that the discontinuities of \(u^{\delta}\) are located at x i and move with speed \(\sigma_{i}\) for \(i=1,\ldots,N\). This holds for all times t that are not collision times. Using this, we can write

$$\begin{aligned}\displaystyle u^{\delta}(x,t)&\displaystyle=u_{L}+\sum_{i}H\left(x-x_{i}(t)\right)[\![u]\!]_{i},\\ \displaystyle f\left(u^{\delta}\right)&\displaystyle=f\left(u_{L}\right)+\sum_{i}H\left(x-x_{i}(t)\right)[\![f(u)]\!]_{i},\end{aligned}$$

where H denotes the Heaviside function and \([\![u]\!]_{i}=u_{r}-u_{l}\) if u r is the state to the right of the discontinuity, and u l the state to the left. Thus in the distributional sense,

$$\displaystyle\begin{aligned}\displaystyle u^{\delta}_{t}(x,t)&\displaystyle=-\sum_{i}\sigma_{i}[\![u]\!]_{i}\,\delta_{x_{i}(t)}(x),\\ \displaystyle f\left(u^{\delta}(x,t)\right)_{x}&\displaystyle=\sum_{i}[\![f(u)]\!]_{i}\,\delta_{x_{i}(t)}(x),\end{aligned}$$
(6.39)

where \(\delta_{x_{i}(t)}\) denotes the Dirac delta distribution located at \(x_{i}(t)\).

We can use this to estimate how far \(u^{\delta}\) is from a being a weak solution. Recall that u is a weak solution of (6.1) if

$$\displaystyle\int_{0}^{\infty}\!\int_{\mathbb{R}}\big(u\varphi_{t}+f(u)\varphi_{x}\big)\,dx\,dt+\int_{\mathbb{R}}u(x,0)\varphi(x,0)\,dx=0.$$

Since \(u=\lim_{\delta\to 0}u^{\delta}\), we need to show that

$$\displaystyle 0=\lim_{\delta\to 0}\Bigl(\int_{0}^{\infty}\!\int_{\mathbb{R}}\big(u^{\delta}\varphi_{t}+f(u^{\delta})\varphi_{x}\big)\,dx\,dt+\int_{\mathbb{R}}u^{\delta}(x,0)\varphi(x,0)\,dx\Bigr),$$
(6.40)

for all test functions \(\varphi\). We have constructed the initial data \(u^{\delta}(x,0)\) such that the last integral in the limit approaches \(\int\!u_{0}\varphi(x,0)\,dx\). Regarding the double integral, using the representation of \(u^{\delta}\) as a sum of Heaviside functions and (6.39), we have

$$\begin{aligned}\displaystyle\int_{0}^{\infty}\!\int_{\mathbb{R}}&\displaystyle\big(u^{\delta}\varphi_{t}+f(u^{\delta})\varphi_{x}\big)\,dx\,dt\\ \displaystyle&\displaystyle=-\int_{0}^{T}\sum_{i}\left(\sigma_{i}[\![u]\!]_{i}-[\![f(u)]\!]_{i}\right)\varphi(x_{i}(t),t)\,dt\\ \displaystyle&\displaystyle=-\sum_{i\in\mathcal{S}}\int_{0}^{T}\left(\sigma_{i}[\![u]\!]_{i}-[\![f(u)]\!]_{i}\right)\varphi(x_{i}(t),t)\,dt\\ \displaystyle&\displaystyle\quad-\sum_{i\in\mathcal{R}}\int_{0}^{T}\left(\sigma_{i}[\![u]\!]_{i}-[\![f(u)]\!]_{i}\right)\varphi(x_{i}(t),t)\,dt\\ \displaystyle&\displaystyle\quad-\sum_{i\in\mathcal{G}}\int_{0}^{T}\left(\sigma_{i}[\![u]\!]_{i}-[\![f(u)]\!]_{i}\right)\varphi(x_{i}(t),t)\,dt,\end{aligned}$$

where \(\mathcal{S}\) denotes the set of shock fronts, \(\mathcal{R}\) the set of rarefaction fronts, and \(\mathcal{G}\) the set of ghost fronts. Here, T is chosen so that \(\varphi\) is zero for t > 0. We have that

$$\begin{aligned}\displaystyle\sum_{i\in\mathcal{S}}\int_{0}^{T}\left(\sigma_{i}[\![u]\!]_{i}-[\![f(u)]\!]_{i}\right)\varphi(x_{i}(t),t)\,dt&\displaystyle=0,\\ \displaystyle\Bigl|\sum_{i\in\mathcal{R}}\int_{0}^{T}\left(\sigma_{i}[\![u]\!]_{i}-[\![f(u)]\!]_{i}\right)\varphi(x_{i}(t),t)\,dt\Bigr|&\displaystyle\leq C\sum_{i\in\mathcal{R}}\left|[\![u]\!]_{i}\right|^{2}\leq C\delta,\\ \displaystyle\Bigl|\sum_{i\in\mathcal{G}}\int_{0}^{T}\left(\sigma_{i}[\![u]\!]_{i}-[\![f(u)]\!]_{i}\right)\varphi(x_{i}(t),t)\,dt\Bigr|&\displaystyle\leq C\sum_{i\in\mathcal{G}}\left|[\![u]\!]_{i}\right|\leq C\delta.\end{aligned}$$

Thus the limit is a weak solution.

We can actually extract some more information about the limit u by examining the approximate solutions \(u^{\delta}\). More precisely, we would like to show that isolated jump discontinuities of u satisfy the Lax entropy condition

$$\displaystyle\lambda_{m}\left(u_{l}\right)\geq\sigma\geq\lambda_{m}\left(u_{r}\right)$$
(6.41)

for some m between 1 and n, where σ is the speed of the discontinuity, and

$$\displaystyle u_{l}=\lim_{y\to x-}u(y,t)\quad\text{and}\quad u_{r}=\lim_{y\to x+}u(y,t).$$

To show this, we assume that u has an isolated discontinuity at \((x,t)\), with left and right limits u l and u r . We can enclose \((x,t)\) by a trapezoid \(E_{\delta}\) with corners defined as follows. Start by finding points

$$\displaystyle x^{k}_{\delta,l}\to x-,\quad x^{k}_{\delta,r}\to x+,\quad t^{1}_{\delta}\uparrow t,\quad t^{2}_{\delta}\downarrow t,$$

for k = 1,2 as \(\delta\to 0\). We let \(E_{\delta}\) denote the trapezoid with corners \((x^{1}_{\delta,l},t^{1}_{\delta})\), \((x^{1}_{\delta,r},t^{1}_{\delta})\), \((x^{2}_{\delta,r},t^{2}_{\delta})\), \((x^{2}_{\delta,l},t^{2}_{\delta})\). Recall that convergence in \(L^{1}_{\mathrm{loc}}\) implies pointwise convergence almost everywhere, so we choose these points such that

$$\displaystyle\left.\begin{matrix}u^{\delta}(x^{1}_{\delta,l},t^{1}_{\delta})\\ u^{\delta}(x^{2}_{\delta,l},t^{2}_{\delta})\end{matrix}\right\}\to u_{l}\quad\text{and}\quad\left.\begin{matrix}u^{\delta}(x^{1}_{\delta,r},t^{1}_{\delta})\\ u^{\delta}(x^{2}_{\delta,r},t^{2}_{\delta})\end{matrix}\right\}\to u_{r}$$

as \(\delta\to 0\). We can also choose points such that the diagonals of \(E_{\delta}\) have slopes not too different from σ; precisely,

$$\displaystyle\left|\frac{x^{1}_{\delta,l}-x^{2}_{\delta,r}}{t^{1}_{\delta}-t^{2}_{\delta}}-\sigma\right|\leq\varepsilon(\delta)\quad\text{and}\quad\left|\frac{x^{1}_{\delta,l}-x^{2}_{\delta,r}}{t^{1}_{\delta}-t^{2}_{\delta}}-\sigma\right|\leq\varepsilon(\delta),$$
(6.42)

where \(\varepsilon(\delta)\to 0\) as \(\delta\to 0\). Next for k = 1,2, set

$$\displaystyle M^{k}_{\delta}=\frac{\sum\left|\epsilon_{i}\right|}{x^{k}_{\delta,r}-x^{k}_{\delta,l}},$$

where the sum is over all rarefaction fronts in the interval \(\big[x^{k}_{\delta,l},x^{k}_{\delta,r}\big]\). If \(M^{k}_{\delta}\) is unbounded as \(\delta\to 0\), then u contains a centered rarefaction wave at \((x,t)\), i.e., a rarefaction wave starting at \((x,t)\). In this case the discontinuity will not be isolated, and hence \(M^{k}_{\delta}\) remains bounded as \(\delta\to 0\). Next observe that

$$\displaystyle\begin{aligned}\displaystyle\frac{\left|u^{\delta}(x^{k}_{\delta,l},t^{k}_{\delta})-u^{\delta}(x^{k}_{\delta,r},t^{k}_{\delta})\right|}{x^{k}_{\delta,r}-x^{k}_{\delta,l}}&\displaystyle\leq C\frac{\sum\left|\text{rarefaction fronts}\right|+\sum\left|\text{shock fronts}\right|}{x^{k}_{\delta,r}-x^{k}_{\delta,l}}\\ \displaystyle&\displaystyle=CM^{k}_{\delta}+C\frac{\sum\left|\text{shock fronts}\right|}{x^{k}_{\delta,r}-x^{k}_{\delta,l}}.\end{aligned}$$

Here the sums are over fronts crossing the interval \(\big[x^{k}_{\delta,l},x^{k}_{\delta,r}\big]\). Since the fraction on the left is unbounded as \(\delta\to 0\), there must be shock fronts crossing the top and bottom of \(E_{\delta}\) for all \(\delta> 0\). Furthermore, since the discontinuity is isolated, the total strength of all fronts crossing the left and right sides of \(E_{\delta}\) must tend to zero as \(\delta\to 0\).

Next we define a shock line as a sequence of shock fronts of the same family in \(u^{\delta}\). Assume that a shock line has been defined for \(t<t_{n}\), where t n is a collision time, and in the interval \([t_{n-1},t_{n})\) consists of the shock front ϵ. In the interval \([t_{n},t_{n+1})\), this shock line continues as the front ϵ if ϵ does not collide at t n . If ϵ collides at t n , and the approximate solution of the Riemann problem determined by this collision contains an approximate shock front of the same family as ϵ, then the shock line continues as this front. Otherwise, it stops at t n . Note that we can associate a unique family to each shock line.

From the above reasoning it follows that for all δ there must be shock lines entering \(E_{\delta}\) through the bottom that do not exit \(E_{\delta}\) through the sides; hence such shock lines must exit \(E_{\delta}\) through the top. Assume that the leftmost of these shock lines enters \(E_{\delta}\) at \(y^{1}_{\delta,l}\) and leaves \(E_{\delta}\) at \(y^{2}_{\delta,l}\). Similarly, the rightmost of the shock lines enters \(E_{\delta}\) at \(y^{1}_{\delta,r}\) and leaves \(E_{\delta}\) at \(y^{2}_{\delta,r}\). Set

$$\displaystyle v^{k}_{\delta,l}=u^{\delta}\left(y^{k}_{\delta,l}-,t^{k}_{\delta}\right)\quad\text{and}\quad v^{k}_{\delta,r}=u^{\delta}\left(y^{k}_{\delta,r}+,t^{k}_{\delta}\right).$$

Between \(y^{k}_{\delta,l}\) and \(x^{k}_{\delta,l}\), the function \(u^{\delta}\) varies over rarefaction fronts or over shock lines that must enter or leave \(E_{\delta}\) through the left or right side. Since the discontinuity is isolated, the total strength of such waves must tend to zero as \(\delta\to 0\). Because \(u^{\delta}(x^{k}_{\delta,l},t^{k}_{\delta})\to u_{l}\) as \(\delta\to 0\), we have that \(v^{k}_{\delta,l}\to u_{l}\) as \(\delta\to 0\). Similarly, \(v^{k}_{\delta,r}\to u_{r}\). Since \(\varepsilon\left(\delta\right)\to 0\), by strict hyperbolicity, the family of all shock lines not crossing the left or right side of \(E_{\delta}\) must be the same, say m. The speed of an approximate m-shock front with speed \(\tilde{\sigma}\) and left state \(v^{k}_{\delta,l}\) satisfies

$$\displaystyle\lambda_{m-1}\left(v^{k}_{\delta,l}\right)<\tilde{\sigma}+\mathcal{O}\left(\delta\right)<\lambda_{m}\left(v^{k}_{\delta,l}\right).$$
(6.43)

Similarly, an approximate m-shock front with right state \(v^{k}_{\delta,r}\) and speed \(\hat{\sigma}\) satisfies

$$\displaystyle\lambda_{m}\left(v^{k}_{\delta,r}\right)<\hat{\sigma}+\mathcal{O}\left(\delta\right)<\lambda_{m+1}\left(v^{k}_{\delta,r}\right).$$
(6.44)

Then (6.41) follows by noting that \(\tilde{\sigma}\) and \(\hat{\sigma}\) both tend to σ as \(\delta\to 0\), and then letting \(\delta\to 0\) in (6.43) and (6.44).

To summarize the results of this chapter we have the following theorem:

Theorem 6.7

Consider the strictly hyperbolic system of equations

$$\displaystyle u_{t}+f(u)_{x}=0,\qquad u(x,0)=u_{0}(x),$$

and assume that \(f\in C^{2}\) is such that each characteristic wave family is either linearly degenerate or genuinely nonlinear. If \(\mathrm{T.V.}\left(u_{0}\right)\) is sufficiently small, there exists a global weak solution \(u(x,t)\) to this initial value problem. This solution may be constructed by the front-tracking algorithm described in Sect. 6.1. Furthermore, if u has an isolated jump discontinuity at a point \((x,t)\), then the Lax entropy condition (6.41) holds for some m between 1 and n.

We have seen that for each \(\delta> 0\) there is only a finite number of collisions between the fronts in \(u^{\delta}\) for all t > 0. Hence there exists a finite time \(T_{\delta}\) such that for \(t> T_{\delta}\), the fronts in \(u^{\delta}\) will move apart, and not interact. This has some similarity to the solution of the Riemann problem. One can intuitively make the change of variables \(t\mapsto t/\varepsilon\), \(x\mapsto x/\varepsilon\) without changing the equation, but the initial data is changed to \(u_{0}(x/\varepsilon)\). Sending \(\varepsilon\to 0\), or alternatively \(t\to\infty\), we see that u solves the Riemann problem

$$\displaystyle u_{t}+f(u)_{x}=0,\qquad u(x,0)=\begin{cases}u_{L}&\text{for $x<0$},\\ u_{R}&\text{for $x\geq 0$},\end{cases}$$
(6.45)

where \(u_{L}=\lim_{x\to-\infty}u_{0}(x)\) and \(u_{R}=\lim_{x\to\infty}u_{0}(x)\). Thus in some sense, for very large times, u should solve this Riemann problem. Next, we shall show that this (very imprecise statement) is true, but first we need some more information about \(u^{\delta}\).

For \(t> T_{\delta}\), the function \(u^{\delta}\) will consist of a finite number of constant states, say \(u^{\delta}_{i}\), for \(i=0,\dots,M\). If \(u^{\delta}_{i-1}\) is connected with \(u^{\delta}_{i}\) by a wave of a different family from the one connecting \(u^{\delta}_{i}\) to \(u^{\delta}_{i+1}\), we call \(u^{\delta}_{i}\) a real state, and we let \(\left\{\bar{u}_{i}\right\}_{i=0}^{N}\) be the set of real states of \(u^{\delta}\). Since the discontinuities of \(u^{\delta}\) are moving apart, we must have

$$\displaystyle N\leq n,$$
(6.46)

by strict hyperbolicity. Furthermore, to each pair \(\left(\bar{u}_{i-1},\bar{u}_{i}\right)\) we can associate a family k i such that \(1\leq k_{i}<k_{i+1}\leq n\), and we define \(k_{0}=0\) and \(k_{N+1}=n\). We write the solution of the Riemann problem with left and right data \(\bar{u}_{0}\) and \(\bar{u}_{N}\), respectively, as u, and define \(\epsilon_{j}\), \(j=1,\dots,n\), by

$$\displaystyle\bar{u}_{N}=W_{n}(\epsilon_{n})W_{n-1}(\epsilon_{n-1})\cdots W_{1}(\epsilon_{1})\bar{u}_{0},$$

and define the intermediate states

$$\displaystyle u_{0}=\bar{u}_{0}\quad\text{and}\quad u_{j}=W_{j}(\epsilon_{j})u_{j-1}\quad\text{for $j=1,\dots,n$.}$$

Now we claim that

$$\displaystyle\left|u_{j}-\bar{u}_{i}\right|\leq\mathcal{O}\left(\delta\right),\quad\text{for $k_{i-1}\leq j\leq k_{i}$}.$$
(6.47)

If N = 1, this clearly holds, since in this case \(u^{\delta}\) consists of two states for \(t> T_{\delta}\), and by construction of \(u^{\delta}\), the pair \((\bar{u}_{0},\bar{u}_{1})\) is the solution of the same Riemann problem as u is, but possibly with waves of a high generation ignored.

Now assume that (6.47) holds for some N > 1. We shall show that it holds for \(N+1\) as well. Let v be the solution of the Riemann problem with initial data given by

$$\displaystyle v(x,0)=\begin{cases}\bar{u}_{0}&\text{for $x<0$},\\ \bar{u}_{N}&\text{for $x\geq 0$},\end{cases}$$

and let w be the solution of the Riemann problem with initial data

$$\displaystyle w(x,0)=\begin{cases}\bar{u}_{N}&\text{for $x<0$},\\ \bar{u}_{N+1}&\text{for $x\geq 0$}.\end{cases}$$

We denote the waves in v and w by \(\epsilon_{j}^{v}\) and \(\epsilon_{j}^{w}\), respectively. Then by the induction hypothesis,

$$\displaystyle\begin{gathered}\left|\bar{\epsilon}_{i}-\epsilon_{k_{i}}^{v}\right|\leq\mathcal{O}\left(\delta\right),\qquad\left|\bar{\epsilon}_{N+1}-\epsilon_{k_{N+1}}^{w}\right|\leq\mathcal{O}\left(\delta\right),\\\sum_{i\notin\left\{k_{1},\dots,k_{N}\right\}}\left|\epsilon_{i}^{v}\right|\leq\mathcal{O}\left(\delta\right),\quad\text{and}\quad\sum_{i\neq k_{N+1}}\left|\epsilon_{i}^{w}\right|\leq\mathcal{O}\left(\delta\right),\end{gathered}$$

where \(\bar{\epsilon}_{i}\) denotes the strength of the wave separating \(\bar{u}_{i-1}\) and \(\bar{u}_{i}\). Notice now that u can be viewed as the interaction of v and w; hence by the interaction estimate,

$$\displaystyle\sum_{i}\left|\epsilon_{i}-\epsilon^{v}_{i}\right|\leq\mathcal{O}\left(\delta\right)\quad\text{for}\quad i\leq k_{N},\quad\text{and}\quad\left|\epsilon_{k_{N+1}}-\epsilon_{k_{N+1}}^{w}\right|\leq\mathcal{O}\left(\delta\right).$$

Thus (6.47) holds for \(N+1\) real states, and therefore for every \(N\leq n\). Now we can conclude that for \(u=\lim_{\delta\to 0}u^{\delta}\) the following result holds.

Theorem 6.8

Assume that \(u_{L}=\lim_{x\to-\infty}u_{0}(x)\) and \(u_{R}=\lim_{x\to\infty}u_{0}(x)\) exist. Then as \(t\to\infty\), u will consist of a finite number of states \(\left\{u_{i}\right\}_{i=0}^{N}\), where \(N\leq n\). These states are the intermediate states in the solution of the Riemann problem (6.45), and they will be separated by the same waves as the corresponding states in the solution of the Riemann problem.

Proof

By the calculations preceding the lemma, for \(t> T_{\delta}\) we can define a function \(\bar{u}_{\delta}\) that consists of a number of constant states separated by elementary waves, shocks, rarefactions, or contact discontinuities such that these constant states are the intermediate states in the solution of the Riemann problem defined by \(\lim_{x\to-\infty}u^{\delta}(x,t)\) and \(\lim_{x\to\infty}u^{\delta}(x,t)\), and such that for every bounded interval I,

$$\displaystyle\left\|\bar{u}_{\delta}(\,\cdot\,,t)-u^{\delta}(\,\cdot\,,t)\right\|_{L^{1}(I)}\to 0\quad\text{as $\delta\to 0$.}$$

Then for \(t> T_{\delta}\),

$$\begin{aligned}\displaystyle\left\|u(\,\cdot\,,t)-\bar{u}_{\delta}(\,\cdot\,,t)\right\|_{L^{1}(I)}&\displaystyle\leq\left\|u(\,\cdot\,,t)-u^{\delta}(\,\cdot\,,t)\right\|_{L^{1}(I)}\\ \displaystyle&\displaystyle\quad+\left\|\bar{u}_{\delta}(\,\cdot\,,t)-u^{\delta}(\,\cdot\,,t)\right\|_{L^{1}(I)}.\end{aligned}$$

Set \(t=T_{\delta}+1\), and let \(\delta\to 0\). Then both terms on the right tend to zero, and \(\bar{u}_{0}\to u_{L}\) and \(\bar{u}_{N}\to u_{R}\). Hence the lemma holds. Note, however, that u does not necessarily equal some \(\bar{u}_{\delta}\) in finite time.  □

Remark 6.9

Here is another way to interpret heuristically the asymptotic result for large times. Consider the set

$$\displaystyle\{u^{\delta}(x,t)\mid x\in\mathbb{R}\}$$

in phase space. There is a certain ordering of that set given by the ordering of x. As \(\delta\to 0\), this set will approach some set

$$\displaystyle\{u(x,t)\mid x\in\mathbb{R}\}.$$

Theorem 6.8 states that as \(t\to\infty\) this set approaches the set that consists of the states in the solution of the Riemann problem (6.45) with the same order. No statements are made as to how fast this limit is obtained. In particular, if \(u_{L}=u_{R}=0\), then \(u(x,t)\to 0\) for almost all x as \(t\to\infty\).

6.3 Notes

The fundamental result concerning existence of solutions of the general Cauchy problem is due to Glimm 72; , where the fundamental approach was given, and where all the basic estimates can be found. Glimm’s result for small initial data uses the random choice method. The random element is not really essential to the random choice method, as was shown by Liu in 135; . The existence result has been extended for some \(2\times 2\) systems, allowing for initial data with large total variation; see 144; ; 170; . These systems have the rather special property that the solution of the Riemann problem is translation-invariant in phase space.

Our proof of the interaction estimate (6.13) is a modified version of Yong’s argument 190; .

Front tracking for systems was first used by DiPerna in 60; . In this work a front-tracking process was presented for \(2\times 2\) systems, and shown to be well defined and to converge to a weak solution. Although DiPerna states that ‘‘the method is adaptable for numerical calculation,’’ numerical examples of front tracking were first presented by Swartz and Wendroff in 172; , in which front tracking was used as a component in a numerical code for solving problems of gas dynamics.

The front tracking presented here contains elements from the front-tracking methods of Bressan 21; and, in particular, of Risebro 160; . In 160; the generation concept was not used. Instead, one ‘‘looked ahead’’ to see whether a buildup of collision times was about to occur. In 9; Baiti and Jenssen showed that one does not really need to use the generation concept or look ahead in order to decide which fronts to ignore.

The large-time behavior of u was shown to hold for the limit of the Glimm scheme by Liu in 136; .

The front-tracking method presented in 160; has been used as a numerical method; see Risebro and Tveito 162; ; 163; and Langseth 121; ; 122; for examples of problems in one space dimension. In several space dimensions, front tracking has also been used in conjunction with dimensional splitting with some success for systems; see 92; and 132; .

6.4 Exercises

  1. 6.1

    Assume that \(f\colon\mathbb{R}^{n}\to\mathbb{R}^{n}\) is three-times differentiable, with bounded derivatives. We study the solution of the system of ordinary differential equations

    $$\displaystyle\frac{dx}{dt}=f(x),\quad x(0)=x_{0}.$$

    We write the unique solution as \(x(t)=\exp(tf)x_{0}\).

    1. (a)

      Show that

      $$\displaystyle\exp(\varepsilon f)x_{0}=x_{0}+\varepsilon f\left(x_{0}\right)+\frac{\varepsilon^{2}}{2}df\left(x_{0}\right)f\left(x_{0}\right)+\mathcal{O}\left(\varepsilon^{3}\right).$$
    2. (b)

      If g is another vector field with the same properties as f, show that

      $$\begin{aligned}\displaystyle\exp(\varepsilon g)\exp(\varepsilon f)x_{0}&\displaystyle=x_{0}+\varepsilon\left(f\left(x_{0}\right)+g\left(x_{0}\right)\right)\\ \displaystyle&\displaystyle\quad+\frac{\varepsilon^{2}}{2}\Bigl(df\left(x_{0}\right)f\left(x_{0}\right)+\,dg\left(x_{0}\right)g\left(x_{0}\right)\Bigr)\\ \displaystyle&\displaystyle\quad+\varepsilon^{2}dg\left(x_{0}\right)f\left(x_{0}\right)+\mathcal{O}\left(\varepsilon^{3}\right).\end{aligned}$$
    3. (c)

      The Lie bracket of f and g is defined as

      $$\displaystyle[f,g](x)=dg(x)f(x)-df(x)g(x).$$

      Show that

      $$\displaystyle[f,g]\left(x_{0}\right)=\lim_{\varepsilon\to 0}\frac{1}{\varepsilon^{2}}\biggl(\exp(\varepsilon g)\exp(\varepsilon f)x_{0}-\exp(\varepsilon f)\exp(\varepsilon g)x_{0}\biggr).$$
    4. (d)

      Indicate how this can be used to give an alternative proof of the interaction estimate (6.13).

  2. 6.2

    We study the p system with \(p(u_{1})\) as in Exercise 5.3, and we use the results of Exercise 5.9. Define a front-tracking scheme by introducing a grid in the \((\mu,\tau)\)-plane. We approximate rarefaction waves by choosing intermediate states that are not farther apart than δ in \((\mu,\tau)\). If ϵ is a front with left state \((\mu_{l},\tau_{l})\) and right state \((\mu_{r},\tau_{r})\), define

    $$\displaystyle T(\epsilon)=\begin{cases}\left|[\![\mu]\!]\right|-\left|[\![\tau]\!]\right|&\text{if $\epsilon$ is a\leavevmode\nobreak\ 1-wave,}\\ \left|[\![\tau]\!]\right|-\left|[\![\mu]\!]\right|&\text{if $\epsilon$ is a\leavevmode\nobreak\ 2-wave,}\end{cases}$$

    and define T additively for a sequence of fronts.

    1. (a)

      Define a front-tracking algorithm based on this, and show that

      $$\displaystyle T_{n+1}\leq T_{n},$$

      where T n denotes the T value of the front-tracking approximation between collision times t n and \(t_{n+1}\).

    2. (b)

      Find a suitable condition on the initial data so that the front-tracking algorithm produces a convergent subsequence.

    3. (c)

      Show that the limit is a weak solution.

  3. 6.3

    Assume that the flux function \(f(u)\) admits an entropy/entropy flux pair \((\eta,q)\), that is, η and q are functions from \(\mathbb{R}^{n}\) to \(\mathbb{R}\) such that

    $$\displaystyle\nabla_{u}\eta(u)=\nabla_{u}q(u)df(u).$$

    Assume also that for the solution of the Riemann problem

    $$\displaystyle u_{t}+f(u)_{x}=0,\ \ u(x,0)=\begin{cases}u_{l}&x<0,\\ u_{r}&x> 0,\end{cases}$$

    we have that

    $$\begin{aligned}\displaystyle\eta(u)_{t}+q(u)_{x}&\displaystyle=0\ \text{if the solution is a\leavevmode\nobreak\ rarefaction wave}\\ \displaystyle&\displaystyle\phantom{=0}\ \ \text{or contact discontinuity,}\\ \displaystyle\eta(u)_{t}+q(u)_{x}&\displaystyle<0\ \text{in the distributional sense if the solution is a\leavevmode\nobreak\ shock.}\end{aligned}$$

    Let now \(u=\lim u^{\delta}\), where \(u^{\delta}\) is the front-tracking approximation. Show that

    $$\displaystyle\eta(u)_{t}+q(u)_{x}\leq 0,$$

    in the distributional sense.