Computer Programs

NAME OR DESIGNATION OF PROGRAM, COMPUTER, DESCRIPTION OF PROGRAM OR FUNCTION, METHODS, RESTRICTIONS, CPU, FEATURES, RELATED OR AUXILIARY PROGRAMS, STATUS, REFERENCES, REQUIREMENTS, LANGUAGE, OPERATING SYSTEM, OTHER RESTRICTIONS, NAME AND ESTABLISHMENT OF AUTHORS, MATERIAL, CATEGORIES

[ top ]

[ top ]

To submit a request, click below on the link of the version you wish to order. Rules for end-users are
available here.

Program name | Package id | Status | Status date |
---|---|---|---|

LSOIBT | USCD1226/01 | Tested | 23-SEP-2005 |

Machines used:

Package ID | Orig. computer | Test computer |
---|---|---|

USCD1226/01 | IBM PC | PC Windows |

[ top ]

3. DESCRIPTION OF PROGRAM OR FUNCTION

LSOIBT is a set of general-purpose FORTRAN routines solver for the initial value problem for ordinary differential equation systems. It is suitable for both stiff and nonstiff systems. LSOIBT treat systems in the linearly implicit form A(t,y) dy/dt = g(t,y), A = a square matrix, i.e. with the derivative dy/dt implicit, but linearly so. It allows A to be singular, in which case the system is a differential-algebraic equation (DAE) system. In that case, the user must be very careful to supply a well-posed problem with consistent initial conditions. LSOIBT, written jointly with C. S. Kenney, solves linearly implicit systems in which the matrices involved are all assumed to be block-tridiagonal. Linear systems are solved by the LU method. The LSOIBT source is commented extensively to facilitate modification. Both a single-precision version and a double-precision version are available.

LSOIBT is a set of general-purpose FORTRAN routines solver for the initial value problem for ordinary differential equation systems. It is suitable for both stiff and nonstiff systems. LSOIBT treat systems in the linearly implicit form A(t,y) dy/dt = g(t,y), A = a square matrix, i.e. with the derivative dy/dt implicit, but linearly so. It allows A to be singular, in which case the system is a differential-algebraic equation (DAE) system. In that case, the user must be very careful to supply a well-posed problem with consistent initial conditions. LSOIBT, written jointly with C. S. Kenney, solves linearly implicit systems in which the matrices involved are all assumed to be block-tridiagonal. Linear systems are solved by the LU method. The LSOIBT source is commented extensively to facilitate modification. Both a single-precision version and a double-precision version are available.

[ top ]

4. METHODS

This program solves a semi-discretized form of the following system of three PDEs (each similar to a Burgers equation):

u(i) = -(u(1)+u(2)+u(3)) u(i) + eta(i) u(i) (i=1,2,3),

t x xx

on the interval -1 .le. x .le. 1, and with time t .ge. 0.

The diffusion coefficients are eta(*) = .1, .02, .01.

The boundary conditions are u(i) = 0 at x = -1 and x = 1 for all i.

The initial profile for each u(i) is a square wave:

u(i) = 0 on 1/2 .lt. abs(x) .le. 1

u(i) = amp(i)/2 on abs(x) = 1/2

u(i) = amp(i) on 0 .le. abs(x) .lt. 1/2

where the amplitudes are amp(*) = .2, .3, .5.

A simplified Galerkin treatment of the spatial variable x is used, with piecewise linear basis functions on a uniform mesh of 100 intervals. The result is a system of ODEs in the discrete values u(i,k) approximating u(i) (i=1,2,3) at the interior points (k = 1,...,99).

The ODEs are:

(u'(i,k-1) + 4 u'(i,k) + u'(i,k+1))/6 =

-(1/6dx) (c(k-1)dul(i) + 2c(k)(dul(i)+dur(i)) + c(k+1)dur(i))

+ (eta(i)/dx**2) (dur(i) - dul(i)) (i=1,2,3, k=1,...,99),

where

c(j) = u(1,j)+u(2,j)+u(3,j), dx = .02 = the interval size,

dul(i) = u(i,k) - u(i,k-1), dur(i) = u(i,k+1) - u(i,k).

Terms involving boundary values (subscripts 0 or 100) are dropped from the equations for k = 1 and k = 99 above.

This program solves a semi-discretized form of the following system of three PDEs (each similar to a Burgers equation):

u(i) = -(u(1)+u(2)+u(3)) u(i) + eta(i) u(i) (i=1,2,3),

t x xx

on the interval -1 .le. x .le. 1, and with time t .ge. 0.

The diffusion coefficients are eta(*) = .1, .02, .01.

The boundary conditions are u(i) = 0 at x = -1 and x = 1 for all i.

The initial profile for each u(i) is a square wave:

u(i) = 0 on 1/2 .lt. abs(x) .le. 1

u(i) = amp(i)/2 on abs(x) = 1/2

u(i) = amp(i) on 0 .le. abs(x) .lt. 1/2

where the amplitudes are amp(*) = .2, .3, .5.

A simplified Galerkin treatment of the spatial variable x is used, with piecewise linear basis functions on a uniform mesh of 100 intervals. The result is a system of ODEs in the discrete values u(i,k) approximating u(i) (i=1,2,3) at the interior points (k = 1,...,99).

The ODEs are:

(u'(i,k-1) + 4 u'(i,k) + u'(i,k+1))/6 =

-(1/6dx) (c(k-1)dul(i) + 2c(k)(dul(i)+dur(i)) + c(k+1)dur(i))

+ (eta(i)/dx**2) (dur(i) - dul(i)) (i=1,2,3, k=1,...,99),

where

c(j) = u(1,j)+u(2,j)+u(3,j), dx = .02 = the interval size,

dul(i) = u(i,k) - u(i,k-1), dur(i) = u(i,k+1) - u(i,k).

Terms involving boundary values (subscripts 0 or 100) are dropped from the equations for k = 1 and k = 99 above.

[ top ]

[ top ]

USCD1226/01

At the NEA-DB the demonstration program included in this package ran on a PC Windows Xeon in a few seconds.[ top ]

[ top ]

8. RELATED OR AUXILIARY PROGRAMS

This program is part of the ODEPACK (USCD1232) collection of Fortran solvers for the initial value problem for ordinary differential equation systems. It consists of nine solvers, namely a basic solver called LSODE (USCD1223) and eight variants of it: LSODES (USCD1229), LSODA (USCD1227), LSODAR (USCD1228), LSODPK (USCD1231), LSODKR (USCD1230), LSODI (USCD1224), LSOIBT (USCD1226), and LSODIS (USCD1225) which are distributed by the Computer Program Service of the NEA Data Bank.

This program is part of the ODEPACK (USCD1232) collection of Fortran solvers for the initial value problem for ordinary differential equation systems. It consists of nine solvers, namely a basic solver called LSODE (USCD1223) and eight variants of it: LSODES (USCD1229), LSODA (USCD1227), LSODAR (USCD1228), LSODPK (USCD1231), LSODKR (USCD1230), LSODI (USCD1224), LSOIBT (USCD1226), and LSODIS (USCD1225) which are distributed by the Computer Program Service of the NEA Data Bank.

[ top ]

10. REFERENCES

[1] A. C. Hindmarsh, "ODEPACK, A Systematized Collection of ODE Solvers," in Scientific Computing, R. S. Stepleman et al. (eds.), North-Holland, Amsterdam, 1983 (vol. 1 of IMACS Transactions on Scientific Computation), pp. 55-64.

[2] P. N. Brown and A. C. Hindmarsh, "Reduced Storage Matrix Methods in Stiff ODE Systems," J. Appl. Math. & Comp., 31 (1989), pp.40-91. 11.

[1] A. C. Hindmarsh, "ODEPACK, A Systematized Collection of ODE Solvers," in Scientific Computing, R. S. Stepleman et al. (eds.), North-Holland, Amsterdam, 1983 (vol. 1 of IMACS Transactions on Scientific Computation), pp. 55-64.

[2] P. N. Brown and A. C. Hindmarsh, "Reduced Storage Matrix Methods in Stiff ODE Systems," J. Appl. Math. & Comp., 31 (1989), pp.40-91. 11.

[ top ]

USCD1226/01

Compiling, loading, and executing the demonstration program required a minimum main storage of 6 Mbytes.[ top ]

[ top ]

[ top ]

USCD1226/01

LSOIBT.inf this info fileDouble precision files:

DLSOIBT_MAIN.exe Executable file

DLSOIBT_MAIN.f Test Source file

DLSOIBT_OUT.aut Authors output file

DLSOIBT_OUT.nea NEA output file

opkda1.f Fortran source file

opkda2.f Fortran source file

opkdmain.f Fortran source file

Single precision files:

opksa1.f Fortran source file

opksa2.f Fortran source file

opksmain.f Fortran source file

SLSOIBT_MAIN.exe Executable file

SLSOIBT_MAIN.f Test source file

SLSOIBT_OUT.nea NEA output file

Keywords: algorithms, initial-value problems, numerical solution, ordinary differential equations.