BURGERS_SOLUTION
Exact Solutions of Time Dependent 1D Viscous Burgers Equation
BURGERS_SOLUTION
is a C++ library which
evaluates exact solutions of the timedependent 1D viscous Burgers equation.
The form of the Burgers equation considered here is:
du du d^2 u
 + u *  = nu * 
dt dx dx^2
for 1.0 < x < +1.0, and 0.0 < t.
Licensing:
The computer code and data files described and made available on this
web page are distributed under
the GNU LGPL license.
Languages:
BURGERS_SOLUTION is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
a Python version.
Related Data and Programs:
BURGERS,
a dataset directory which
contains 40 solutions of the Burgers equation in one space dimension and time,
at equally spaced times from 0 to 1, with values
at 41 equally spaced nodes in [0,1];
FD1D_BURGERS_LAX,
a C++ program which
applies the finite difference method and the LaxWendroff method
to solve the nonviscous Burgers equation
in one spatial dimension and time.
FD1D_BURGERS_LEAP,
a C++ program which
applies the finite difference method and the leapfrog approach
to solve the nonviscous Burgers equation in one spatial dimension and time.
Reference:

Claude Basdevant, Michel Deville, Pierre Haldenwang, J Lacroix,
J Ouazzani, Roger Peyret, Paolo Orlandi, Anthony Patera,
Spectral and finite difference solutions of the Burgers equation,
Computers and Fluids,
Volume 14, Number 1, 1986, pages 2341.
Source Code:
Examples and Tests:

burgers_solution_test.cpp,
a sample calling program.

burgers_solution_test.txt,
the output file.

burgers_solution_test01.txt,
a data file of solution #1 values for 1 <= x <= +1,
0 <= t <= 3/pi, using 11 grid points in x and in t.

burgers_solution_test02.txt,
a data file of solution #1 values for 1 <= x <= +1,
0 <= t <= 3/pi, using 41 grid points in x and in t.

burgers_solution_test03.txt,
a data file of solution #2 values for 0 <= x <= 2 Pi,
0 <= t <= 1, using 11 grid points in x and in t.

burgers_solution_test04.txt,
a data file of solution #2 values for 0 <= x <= 2 Pi,
0 <= t <= 1, using 41 grid points in x and in t.
List of Routines:

BURGERS_VISCOUS_TIME_EXACT1 evaluates solution #1 to the Burgers equation.

BURGERS_VISCOUS_TIME_EXACT1 evaluates solution #2 to the Burgers equation.

HERMITE_EK_COMPUTE computes a GaussHermite quadrature rule.

IMTQLX diagonalizes a symmetric tridiagonal matrix.

R8_ABS returns the absolute value of an R8.

R8_EPSILON returns the R8 roundoff unit.

R8_MAX returns the maximum of two R8's.

R8_MIN returns the minimum of two R8's.

R8_SIGN returns the sign of an R8.

R8MAT_PRINT prints an R8MAT.

R8MAT_PRINT_SOME prints some of an R8MAT.

R8MAT_WRITE writes an R8MAT file.

R8VEC_EVEN_NEW returns an R8VEC of values evenly spaced between ALO and AHI.

R8VEC_PRINT prints an R8VEC.

TIMESTAMP prints the current YMDHMS date as a time stamp.
You can go up one level to
the C++ source codes.
Last revised on 26 September 2015.