fd1d_burgers_lax


fd1d_burgers_lax, a MATLAB code which solves the nonviscous time-dependent Burgers equation using finite differences and the Lax-Wendroff method.

The function u(x,t) is to be solved for in the equation:

du/dt + u * du/dx = 0
for a <= x <= b and t_init <= t <= t_last.

Problem data includes an initial condition for u(x,t_init), and the boundary value functions u(a,t) and u(b,t).

The non-viscous Burgers equation can develop shock waves or discontinuities.

Usage:

fd1d_burgers_lax
runs the program.

Licensing:

The computer code and data files described and made available on this web page are distributed under the MIT license

Languages:

fd1d_burgers_lax is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

burgers, a dataset directory which contains some solutions to the viscous Burgers equation.

burgers_solution, a MATLAB code which evaluates an exact solution of the time-dependent 1D viscous Burgers equation.

burgers_steady_viscous, a MATLAB code which solves the steady (time-independent) viscous Burgers equation using a finite difference discretization of the conservative form of the equation, and then applying Newton's method to solve the resulting nonlinear system.

burgers_time_viscous, a MATLAB code which solves the time-dependent viscous Burgers equation using a finite difference discretization of the conservative form of the equation.

fd1d_advection_lax, a MATLAB code which applies the finite difference method to solve the time-dependent advection equation ut = - c * ux in one spatial dimension, with a constant velocity, using the Lax method to treat the time derivative.

fd1d_burgers_lax_test

fd1d_burgers_leap, a MATLAB code which applies the finite difference method and the leapfrog approach to solve the non-viscous time-dependent Burgers equation in one spatial dimension.

fd1d_bvp, a MATLAB code which applies the finite difference method to a two point boundary value problem (BVP) in one spatial dimension.

fd1d_heat_explicit, a MATLAB code which uses the finite difference method and explicit time stepping to solve the time dependent heat equation in 1D.

fd1d_heat_implicit, a MATLAB code which uses the finite difference method and implicit time stepping to solve the time dependent heat equation in 1D.

fd1d_heat_steady, a MATLAB code which uses the finite difference method to solve the steady (time independent) heat equation in 1D.

fd1d_predator_prey, a MATLAB code which implements a finite difference algorithm for predator-prey system with spatial variation in 1D.

fd1d_wave, a MATLAB code which applies the finite difference method to solve the time-dependent wave equation in one spatial dimension.

Reference:

  1. Daniel Zwillinger,
    Handbook of Differential Equations,
    Academic Press, 1997,
    ISBN: 0127843965,
    LC: QA371.Z88.

Source Code:


Last revised on 13 January 2019.