Skip to main content

First-order implicit non-linear kinematic wave

Short answer

Backward time and backward space at new time level yield: (Δt/Δx)Q_{i+1}^{n+1} + α(Q_{i+1}^{n+1})^0.6 = (Δt/Δx)Q_i^{n+1} + α(Q_{i+1}^n)^0.6 + Δt q̄, where α=(nP^{2/3}/√S₀)^{0.6}. Solved iteratively by Newton-Raphson.

Derive the first order accurate implicit finite difference equation for the kinematic wave model in the non-linear form.

Starting equations

Continuity with lateral inflow qq: ∂A∂t+∂Q∂x=q\dfrac{\partial A}{\partial t}+\dfrac{\partial Q}{\partial x}=q. The kinematic approximation Sf=S0S_f=S_0 with Manning's equation gives the unique relation

A=αQβ,α=(nP2/3S01/2)0.6,β=0.6A=\alpha Q^{\beta},\qquad \alpha=\left(\frac{nP^{2/3}}{S_0^{1/2}}\right)^{0.6},\quad \beta=0.6

so that the non-linear kinematic wave equation is

∂(αQβ)∂t+∂Q∂x=q\frac{\partial(\alpha Q^\beta)}{\partial t}+\frac{\partial Q}{\partial x}=q

Grid and differences

 t
 n+1 :  (i,n+1) o-----------o (i+1,n+1)
                |           * unknown
 n   :          .           o (i+1,n)
              i          i+1        --> x

The equation is written at the point (i+1, n+1)(i+1,\ n+1), using

  • a backward difference in time: ∂A∂t≈Ai+1n+1−Ai+1nΔt\dfrac{\partial A}{\partial t}\approx\dfrac{A_{i+1}^{n+1}-A_{i+1}^n}{\Delta t}
  • a backward difference in space, evaluated at the new time level n+1n+1: ∂Q∂x≈Qi+1n+1−Qin+1Δx\dfrac{\partial Q}{\partial x}\approx\dfrac{Q_{i+1}^{n+1}-Q_i^{n+1}}{\Delta x}
  • q≈qˉq\approx\bar q (average lateral inflow per unit length over the step).

Both differences have errors O(Δt)O(\Delta t) and O(Δx)O(\Delta x), so the scheme is first-order accurate. Because the spatial difference uses new-time values it is implicit and unconditionally stable.

Finite difference equation

α(Qi+1n+1)β−α(Qi+1n)βΔt+Qi+1n+1−Qin+1Δx=qˉ\frac{\alpha\left(Q_{i+1}^{n+1}\right)^{\beta}-\alpha\left(Q_{i+1}^{n}\right)^{\beta}}{\Delta t}+\frac{Q_{i+1}^{n+1}-Q_i^{n+1}}{\Delta x}=\bar q

Multiplying by Δt\Delta t and putting the unknown Qi+1n+1Q_{i+1}^{n+1} on the left:

ΔtΔx Qi+1n+1+α(Qi+1n+1)β=ΔtΔx Qin+1+α(Qi+1n)β+Δt qˉ\frac{\Delta t}{\Delta x}\,Q_{i+1}^{n+1}+\alpha\left(Q_{i+1}^{n+1}\right)^{\beta}=\frac{\Delta t}{\Delta x}\,Q_i^{n+1}+\alpha\left(Q_{i+1}^{n}\right)^{\beta}+\Delta t\,\bar q

The right side contains only known values (Qin+1Q_i^{n+1} from the upstream point at the new time, Qi+1nQ_{i+1}^n from the previous time).

Solution (Newton-Raphson)

Let x=Qi+1n+1x=Q_{i+1}^{n+1} and define

f(x)=ΔtΔxx+αxβ−[ΔtΔxQin+1+α(Qi+1n)β+Δt qˉ]=0f(x)=\frac{\Delta t}{\Delta x}x+\alpha x^\beta-\left[\frac{\Delta t}{\Delta x}Q_i^{n+1}+\alpha\left(Q_{i+1}^n\right)^\beta+\Delta t\,\bar q\right]=0 xk+1=xk−f(xk)f′(xk),f′(x)=ΔtΔx+αβxβ−1x_{k+1}=x_k-\frac{f(x_k)}{f'(x_k)},\qquad f'(x)=\frac{\Delta t}{\Delta x}+\alpha\beta x^{\beta-1}

Start with x0=Qi+1nx_0=Q_{i+1}^n and iterate until the change is negligible. The calculation proceeds from the upstream boundary (i=1i=1) down the channel for each time step.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Computational Techniques in Civil Engineering chapter 5 questions →