Lably
Skip to content

Godunov's scheme

  • 3 min read
  • 3 chapters

Related on Lably

Through Numerical analysis and Conservation law

Basic scheme

Following the classical finite volume method framework, we seek to track a finite set of discrete unknowns, Qin=1Δx∫xi−1/2xi+1/2q(tn,x)dx where the xi−1/2=xlow+(i−1/2)Δx and tn=nΔt form a discrete set of points for the hyperbolic problem: qt+(f(q))x=0, where the indices t and x indicate the derivatives in time and space, respectively. If we integrate the hyperbolic problem over a control volume [xi−1/2,xi+1/2], we obtain a method of lines (MOL) formulation for the spatial cell averages: ∂∂tQi(t)=−1Δx(f(q(t,xi+1/2))−f(q(t,xi−1/2))), which is a classical description of the first order, upwinded finite volume method.

Exact time integration of the above formula from time t=tn to time t=tn+1 yields the exact update formula: Qin+1=Qin−1Δx∫tntn+1(f(q(t,xi+1/2))−f(q(t,xi−1/2)))dt.

Godunov's method replaces the time integral of each ∫tntn+1f(q(t,xi−1/2))dt with a forward Euler method which yields a fully discrete update formula for each of the unknowns Qin. That is, we approximate the integrals with ∫tntn+1f(q(t,xi−1/2))dt≈Δtf↓(Qi−1n,Qin), where f↓(ql,qr) is an approximation to the exact solution of the Riemann problem. For consistency, one assumes that f↓(ql,qr)=f(ql) if ql=qr, and that f↓ is increasing in the first argument, and decreasing in the second argument. For scalar problems where f′(q)>0, one can use the simple Upwind scheme, which defines f↓(ql,qr)=f(ql).

The full Godunov scheme requires the definition of an approximate, or an exact Riemann solver, but in its most basic form, is given by: Qin+1=Qin−λ(f^i+1/2n−f^i−1/2n),λ=ΔtΔx,f^i−1/2n=f↓(Qi−1n,Qin)

Sign in to keep reading

2 more chapters are free with a Lably account.

More in Physics