Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] acdf_v1_0.gz(10 Kbytes)
Manuscript Title: Program for stability and accuracy analysis of finite difference methods.
Authors: R. Liska
Program title: MODST
Catalogue identifier: ACDF_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 34(1984)175
Programming language: Reduce.
Computer: ICL 4-72.
Operating system: MULTIJOB.
RAM: 350K words
Word size: 32
Peripherals: disc.
Keywords: General purpose, Other numerical, Partial differential Equation, Difference scheme, Modified equation, Order of accuracy, Consistency and, Stability of a Difference scheme, Reduce.
Classification: 4.12, 5.

Nature of problem:
One of the main problems in solving partial differential equations using finite difference methods is the evaluation of various properties of a finite difference algorithm such as order of accuracy, consistency and particularly stability. These problems must almost always be solved by hand. Using the analytical programming language REDUCE 2, the program determines the above properties of finite difference algorithms for simple partial differential equations.

Solution method:
For the solution of the problem the method of modified equations, is applied. The program calculates a modified equation corresponding to a difference scheme which approximates a partial differential equation. The modified equation is derived by expanding each term of the difference scheme in a Taylor series and then eliminating time and mixed derivatives of a higher order than the order of the only time derivative which may occur in the differential equation. From the modified equation, the program determines the order of accuracy and consistency of the difference scheme. For the stability analysis the program uses two methods: the modified equation (Hirt) method and the von Neumann method.

Generally, this very difficult problem is solved only for simple partial differential equations (as specified below), for which an analytically soluble method exists. For computing the modified equation, the differential equation must be in two independent (time and space) variables with one unknown (looked for) function of these variables and must contain only one derivative of this function with respect to the time variable as a linear term. The time order of this derivative must be one and its total order must be the minimum order of all the derivatives appearing in the differential equation. An exact stability analysis using both methods is performed in case the differential equation contains one time derivative of the first order, the different- ial equation is linear with constant coefficients and the difference scheme is two-level (in the time step). An heuristic stability analysis using the modified equation method can be made without the restrictions given above. In addition, the exact von Neumann stability analysis can be made separately (using only the procedure NEUMANN) for all two-level difference schemes approximating linear partial differential equations with constant coefficients.

Unusual features:
The program can be used in an analagous way to the test runs without detailed knowledge of the REDUCE 2 language.

Running time:
Interpretation of the complete program MODST (without execution) for the ICL 4-72 with 350 kbytes takes 75 s (we use the CHKPOINT - RESTORE facility of the LISP language), while with 450 kbytes it takes only 79 s. Execution of test Run No.1 with store 400 kbytes takes 110 s, Run No.2 with 450kbytes takes 45 s and Run No.3 (using only the procedure NEUMANN) with 400 kbytes takes 15 s. The running times depend on the complexity of input and on the given storage.