Finite Element & Finite Volume Methods

the numerical flux

In the finite volume method, two neighbouring cells each store an average value, and they generally DISAGREE about what the value is at the face between them — there is a jump at the interface. But to update both cells you need a single, agreed-upon flow through that face. The numerical flux is the recipe that takes the two conflicting cell values and produces one consistent flux to use for both sides. It is the single most consequential choice in the whole method.

Formally, the numerical flux at the face between cells i and i+1 is a function F_hat(u_L, u_R) of the left state u_L = u_i and the right state u_R = u_{i+1}. Two requirements make it sound. CONSISTENCY: when the two states agree, F_hat(u, u) must equal the true physical flux f(u). CONSERVATION: the SAME F_hat is used (with opposite sign) for both neighbouring cells, so nothing is created at the interface. Within those rules there is huge freedom. A CENTERED flux averages the two sides, F_hat = (f(u_L) + f(u_R))/2 — accurate for smooth solutions but unstable for advection, producing oscillations. An UPWIND flux instead takes the value from the side the flow is coming FROM (if the wind blows left-to-right, use u_L), which respects the direction information travels and is stable but adds numerical diffusion. For nonlinear conservation laws (gas dynamics) the proper choice is a Riemann solver — exact or approximate (Roe, HLL, Lax-Friedrichs) — that resolves the wave pattern at the interface.

The numerical flux is where physics, accuracy, and stability are all decided at once, and the honesty is a genuine trade-off, not a free lunch. A centered flux is second-order accurate but oscillates near shocks (and can blow up for advection); a first-order upwind flux is rock-stable and shock-capturing but smears sharp fronts with excessive numerical diffusion. You cannot have unlimited accuracy AND guaranteed non-oscillation near a discontinuity by a fixed linear scheme — Godunov's theorem says so. The modern resolution is high-resolution schemes that combine a high-order flux in smooth regions with a low-order upwind flux near shocks, switched by a slope limiter.

For advection at speed a > 0, the upwind flux at the right face of cell i is simply F = a * u_i (take the value from the upwind, left cell), while the unstable centered flux would be F = a * (u_i + u_{i+1})/2. The upwind choice damps oscillations but smears a moving step; the centered choice stays sharp on smooth data but rings near a jump.

Centered = accurate but oscillatory; upwind = stable but diffusive. The flux choice IS the method.

By Godunov's theorem, no fixed LINEAR scheme above first order can avoid oscillations near a discontinuity. High accuracy and non-oscillation are reconciled only by nonlinear high-resolution schemes that switch order via a slope limiter — there is no free lunch.

Also called
flux functionRiemann solver fluxinterface flux通量函數界面通量