A general symbolic PDE solver generator: Beyond explicit schemes

This paper presents an extension of our Mathematica- and MathCode-based symbolic-numeric framework for solving a variety of partial differential equation (PDE) problems. The main features of our earlier work, which implemented explicit finite-difference schemes, include the ability to handle (1) arbitrary number of dependent variables, (2) arbitrary dimensionality, and (3) arbitrary geometry, as well as (4) developing finite-difference schemes to any desired order of approximation. In the present paper, extensions of this framework to implicit schemes and the method of lines are discussed. While C++ code is generated, using the MathCode system for the implicit method, Modelica code is generated for the method of lines. The latter provides a preliminary PDE support for the Modelica language. Examples illustrating the various aspects of the solver generator are presented.

[1]  Peter Fritzson,et al.  Transforming Systems of PDEs for Efficient Numerical Solution , 1999 .

[2]  Peter Fritzson,et al.  The Open Source Modelica Project , 2002 .

[3]  H. Kreiss,et al.  Time-Dependent Problems and Difference Methods , 1996 .

[4]  Peter A. Fritzson,et al.  Principles of object-oriented modeling and simulation with Modelica 2.1 , 2004 .

[5]  Min Oh Modelling and simulation of combined lumped and distributed processes , 1995 .

[6]  Peter Fritzson,et al.  Extending Modelica for Partial Differential Equations , 2002 .

[7]  John R. Rice,et al.  Solving elliptic problems using ELLPACK , 1985, Springer series in computational mathematics.

[8]  Peter Fritzson,et al.  A general symbolic PDE solver generator: Explicit schemes , 2003, Sci. Program..

[9]  Michael Thuné,et al.  Object-Oriented Software Tools for the Construction of Preconditioners , 1997, Sci. Program..

[10]  R. Schreiber Numerical Methods for Partial Differential Equations , 1999 .

[11]  Peter Fritzson,et al.  MathModelica - An Extensible Modeling and Simulation Environment with Integrated Graphics and Literate Programming , 2002 .

[12]  George Yankovsky,et al.  Basic computational mathematics , 1979 .

[13]  Peter Fritzson,et al.  An integrated Modelica environment for modeling, documentation and simulation , 1998 .

[14]  Hans Petter Langtangen,et al.  Computational Partial Differential Equations - Numerical Methods and Diffpack Programming , 1999, Lecture Notes in Computational Science and Engineering.