BURGERS
40 Solutions of the Burgers Equation


BURGERS is a set of solutions to the time-dependent Burgers equation in one dimension.

The Burgers equation has the form:

ut + u   ux = nu   uxx

The Burgers equations is sometimes called "the poor man's Navier Stokes equation"; it can be regarded as a cousin of that equation, which still includes nonlinearity controlled by the magnitude of a viscosity parameter nu, and whose solution exhibits wave-like behavior.

Each solution in this dataset contains data evaluated at 41 equally spaced nodes in the interval from 0.0 to 1.0; successive solutions represent snapshots of the data at 40 equally spaced times from 0 to 1.

The initial condition is a square wave which is equal to 1 from 0 to 1/2, and to 0 from 1/2 to 1. As time progresses, the wave travels and smooths out.

This data was computed, and graciously supplied, by Professor Hyung-Chun Lee of Ajou University, Korea.

Related Data and Programs:

PLTMG_SINGLE is a FORTRAN77 finite element program which includes a test program to compute solutions of the Burgers equation.

SVD_BASIS can be used to read in the solutions and extract an orthonormal basis. By truncating the basis early, a reduced order model can be constructed. SVD_BASIS is available in a C++ version and a FORTRAN90 version.

SVD_BASIS_WEIGHT is an executable FORTRAN90 program which can be used to read in the solutions, and a weight vector, and extract an orthonormal basis. By truncating the basis early, a reduced order model can be constructed. By giving some solutions more weight, the output model can be forced to favor those directions.

The TABLE format is used for the datasets.

TABLE_COLUMNS is an FORTRAN90 executable program that can be used to extract a single column from the full table file, and store it as a "snapshot". A script to create such snapshot files is available in make_snapshots.csh.

Datasets:

The full data set is available in a single file of 41 rows and 40 columns, which is awkward to read, but good for loading into MATLAB with a single load statement: burgers_full.txt.

MATLAB can be used to display the full data set using commands like

        data = load ( 'burgers_full.txt' );
        [ t, x ] = meshgrid ( 1:40, 1:41 );
        surf ( t, x, data );
        shading interp
      
The results of such a series of commands can be viewed in burgers_full.png, which is a PNG image.

The data is also available as one X coordinate file, and 40 "snapshots" of the solution at a sequence of times.

You can go up one level to the DATASETS directory.


Last revised on 22 September 2006.