JOVANA
Explore Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

Conservation Laws and the Birth of Shocks

A scalar conservation law is just bookkeeping — stuff in a region changes only through its flux at the ends. Yet that innocent ledger, once the flux is nonlinear, drives smooth data to steepen and break in finite time. We watch a shock be born and see why it is unavoidable.

A ledger, not a force law

In the previous guide we met first-order hyperbolic systems and learned to read information off their characteristic speeds. Now we narrow to the single most instructive case — one unknown, one space dimension — and ask where the equation itself comes from. The answer is humbler than a force law: it is accounting. Pick any stretch of road, river, or wire between x = a and x = b. The total amount of some conserved quantity inside that stretch can change for exactly one reason: stuff flows in at one end and out at the other. Nothing is created or destroyed in the interior.

Write u(x, t) for the density — how much stuff sits per unit length at position x and time t — and write f for the flux, the rate at which that stuff streams past a point. The bookkeeping says: the time-rate of change of the total amount in [a, b] equals what enters at a minus what leaves at b. Shrink the interval to a point and that integral statement collapses into the differential scalar conservation law u_t + f(u)_x = 0. This is the conservation-law origin of a huge family of PDEs, and the form u_t + (something)_x = 0 is the fingerprint to recognise.

integral (truthful) form:   d/dt  integral_a^b u dx  =  f(u(a,t)) - f(u(b,t))

shrink [a,b] to a point:    u_t + f(u)_x = 0          (scalar conservation law)

chain rule, smooth u:       u_t + f'(u) u_x = 0       (quasilinear transport)

examples:                   transport   f(u) = c u      f'(u) = c   (constant speed)
                            Burgers     f(u) = u^2/2    f'(u) = u   (speed = value)
                            traffic     f(u) = u(1 - u)  f'(u) = 1 - 2u
The same law in three dresses: integral ledger, conservation form, and the quasilinear transport form that the characteristics see.

The flux carries its own speed

As long as u stays smooth, the chain rule turns the conservation law into u_t + f'(u) u_x = 0. Compare this to the plain transport equation u_t + c u_x = 0 from the first-order rung, whose solution simply slides the initial profile rightward at the fixed speed c. The only difference is that the constant c has been replaced by f'(u) — a speed that depends on the value being carried. That one substitution is the entire source of the drama ahead.

Run the method of characteristics and the picture is vivid. Along the curve dx/dt = f'(u) the value u is carried unchanged, so each characteristic is a straight line whose slope-speed is set by the value it starts with. For Burgers' equation f(u) = u^2/2 the speed is literally f'(u) = u, so a tall part of the profile moves fast and a short part moves slow. The roads no longer run parallel: they tilt at different angles according to the cargo they carry.

Compression: the moment the roads collide

Here is the mechanism, drawn entirely in the geometry of those tilted roads. Suppose the data falls — a high state behind, a low state ahead, joined by a smooth downhill ramp. The high values throw fast characteristics, the low values throw slow ones, so the fast lines from behind lean into the slow lines in front. Two roads that start apart and converge must eventually meet. The instant the first pair of characteristics touches, two different remembered values of u arrive at the same point, and a single-valued function can no longer honour both.

Watch the profile itself, not just the road map. Because the back of the ramp travels faster than its front, the ramp steepens — the way the back of an ocean swell overtakes its face until the wave stands vertical and curls. The height u stays perfectly bounded the whole time; what runs away to infinity is the slope u_x. This is gradient blow-up: bounded value, infinite gradient. The two failure modes — the value exploding versus the gradient exploding — are different animals, and here it is strictly the gradient that goes.

The honest and slightly startling fact is that breakdown happens at a definite finite time, not gradually. Up to that instant the solution is genuinely smooth and classical; one tick later it does not exist in the classical sense at all. The sign of the data decides the fate: a falling ramp compresses and breaks, while a rising ramp lets the characteristics fan apart and stays smooth forever (the spreading case is a rarefaction, which we save for the Riemann problem). Compression makes shocks; expansion never does.

Reading the breaking time straight off the data

We can pin the catastrophe to a number. The characteristic leaving the point x0 is the straight line x = x0 + f'(u0(x0)) t, carrying the value u0(x0). Two neighbouring characteristics collide when their fan first focuses, and a one-line differentiation along them gives the spatial slope's growth law. The slope blows up exactly where neighbouring lines converge fastest — where the characteristic speed is decreasing most steeply as you move to the right.

Let a(x0) = f'(u0(x0)) be the characteristic speed launched from x0. Differentiating along the fan gives u_x = u0'(x0) / (1 + a'(x0) t), which blows up the instant 1 + a'(x0) t = 0. That can only happen where a'(x0) < 0 — where the launched speeds are decreasing as you move right — and the earliest such collision is the breaking time t* = -1 / min over x0 of a'(x0). For Burgers a = u, so a' = u0' and the formula reduces to the clean t* = -1 / min(u0'), taken over the points where the initial slope is negative.

Notice what the formula refuses to let you cheat on. If the characteristic speed is non-decreasing everywhere — a'(x0) at least zero for all x0 — the denominator never vanishes, t* is infinite, and no shock ever forms. Shock formation is therefore not bad luck; it is forced by, and only by, regions where the characteristic speed decreases downstream. That is the precise, checkable meaning of 'the data is compressive,' and it tells you in advance whether a given initial profile is doomed to break.

After the break: a solution must be reborn

At t* the differential equation u_t + f(u)_x = 0 quietly stops making sense, because u_x no longer exists at the forming jump. But the integral ledger we started from never asked for u_x in the first place — it only ever talked about totals and fluxes, and it is perfectly content with a discontinuous u. So the way past the catastrophe is to step back to the truthful integral form and demand only that. A function that may carry jumps yet still satisfies the conservation law in this tested, integrated sense is a weak solution.

Allowing the jump is liberating but not free, and the next three guides spell out the price. The integral bookkeeping does not let the new front travel at any speed it pleases: conservation across the jump fixes its speed, which is the Rankine-Hugoniot condition of guide 3. Worse, once jumps are permitted the weak solution turns out to be non-unique — several discontinuous functions can all satisfy the law — so guide 4 imposes an entropy condition to select the single physical one, and guide 5 assembles these pieces into the Riemann problem and reads the answer off as a limit of crossing characteristics smoothed by vanishing viscosity.