The Lax–Friedrichs method, named after Peter Lax and Kurt O. Friedrichs, is a numerical method for the solution of hyperbolic partial differential equations based on finite differences. The method can be described as the FTCS (forward in time, centered in space) scheme with a numerical dissipation term of 1/2. One can view the Lax–Friedrichs method as an alternative to Godunov's scheme, where one avoids solving a Riemann problem at each cell interface, at the expense of adding artificial viscosity.
Consider a one-dimensional, linear hyperbolic partial differential equation for
u(x,t)
If one discretizes the domain
(b,c) x (0,d)
\Deltax
x
\Deltat
t
\tildeu
u
Or, rewriting this to solve for the unknown
n+1 | |
u | |
i |
,
Where the initial values and boundary nodes are taken from
A nonlinear hyperbolic conservation law is defined through a flux function
f
In the case of
f(u)=au
u
m
This method is conservative and first order accurate, hence quite dissipative. It can, however be used as a building block for building high-order numerical schemes for solving hyperbolic partial differential equations, much like Euler time steps can be used as a building block for creating high-order numerical integrators for ordinary differential equations.
We note that this method can be written in conservation form:where
Without the extra terms
n | |
u | |
i |
n | |
u | |
i-1 |
n | |
\hat{f} | |
i-1/2 |
This method is explicit and first order accurate in time and first order accurate in space (
O(\Deltat)+O({\Deltax2}/{\Deltat}))
u0(x),ub(t),uc(t)
(A von Neumann stability analysis can show the necessity of this stability condition.) The Lax–Friedrichs method is classified as having second-order dissipation and third order dispersion. For functions that have discontinuities, the scheme displays strong dissipation and dispersion; see figures at right.