A Language for Describing PDE Problems
PDESpec is an object-based language for describing partial differential equation-based mathematical problems and their solutions. The language uses the syntax of the MACSYMA computer algebra system's language, and is implemented using MAXIMA, a derivation of MACSYMA.
The input definition can be decomposed into four basic components: the system of PDEs describing the governing equations of the mathematical model, the domains of definition, the boundary conditions and the initial conditions. The problem solution consists of a sequence of steps, each of which tranforms one or more problem components in some way. The output results are components that describe the computed solution or performance data which will be used for analysis of the PDE problem or its method of solution.
PDESpec refers to each of these components as objects. The equation, domain, time_domain, boundary_conditions, and initial_conditions objects are the basic components used to define the problem.
An algorithm object describes the solution methodology. It represents a function that is applied to set of parameters, where each parameter is a PDESpec object. A particular call to the algorithm with its associated object parameters is a solve object. The solve object represents the complete problem that is to be solved by the PDEPack solvers. The computed solution and related functional data are represented by a solution object.
The syntax and semantics of PDESpec are defined by specifying the syntax and semantics of each one of these objects, and by defining the relationships and interactions between them.
Most of the currently available PDE solving systems were studied during the //ELLPACK research project, and the experience gained from these studies was used to make the scope of definition for each object as broad as possible. The stated goal of the PDESpec language is to be able to represent any instance of these problem specification objects. As a result, this language could represent the required input and generated output for any PDE-solving system software.
Thus, PDESpec becomes the universal representation for specifying PDE problems, and can be used as the mechanism for interfacing all PDE-solving systems together.
For further information contact pdelab@cs.purdue.edu