Three bottlenecks exist in scientific computing, generating the
effective software for complicated mathematical problems, running the
software on a machine, and interpreting, or visualizing, the large
body of data that is produced by the computation. In computational
fluid dynamics and especially in turbulence research, the time spent
developing effective software can dwarf the actual running time by a
orders of magnitude.
This research focusses on automating the process of synthesizing scientific
software using a high level programming language called SPL. SPL allows
the programmer to indicate continuous objects of interest, like differentiable
functions, distributions, etc. and manipulate them using operations
from arithmetic and calculus as well as to limit their possible values
by using constraints such as algebraic and differential equations.
This specification is then transformed into a more concrete,
executable form via user directed transformations coded in conjunction
with the computer algebra substrate Weyl.
- Divakar Visnawath
- Richard Zippel
- G. Berkooz, P. Chew, J. Cremer, R. Palmer and R. Zippel,
"Generating Spectral method Solvers for Partial Differential Equations",
Advances in Computer Methods for Partial Differential Equations - VII, 1992. pp. 53-59.