Abstract
Many significant real-life applications, e.g., air-craft design and environmental modelling, involve simulations based on the numerical solution of systems of time-dependent partial differential equations. In general, the computational domain has a complicated geometry, and the computations demand high-performance computers. The present paper lays a foundation for an expressive notation for this kind of application. By an object-oriented analysis concepts are identified, that can be combined flexibly enough to allow a programmer to express real computational problems (as opposed to model problems). The resulting concepts have been implemented as classes in C++. In a sense, this class library (referred to as Cogito/Solver) will specialize C++ into a language for the application domain under consideration. However, the aim is to use Cogito/Solver as a basis for higher-level interfaces. As a first attempt in this direction, an object-oriented database for Cogito/Solver objects has been implemented. Through an interface to this database, a programmer can compose an executable object (a Numerical Experiment), from various smaller objects, related to the different Cogito/Solver concepts.
The work presented here was supported by a grant from TFR, the Swedish Research Council for Engineering Sciences.
Chapter PDF
Similar content being viewed by others
References
G. Booch, Object-Oriented Analysis and Design with Applications, Benjamin/Cummings, 1994. Object-Oriented Analysis and Design with Applications.
P. Fritzson et al., Industrial Application of Object-Oriented Mathematical Modeling and Computer Algebra in Mechanical Analysis. In Proceedings of the 7:th International Conference on Technology of Object-Oriented Languages and Systems: TOOLS EUROPE'92, Prentice-Hall.
W. Gropp, B. Smith, Scalable, extensible, and portable numerical libraries. In Proceedings of the Scalable Parallel Libraries Conference, pp. 87–93, IEEE, 1994.
J. Häuser et al., Parallel computing in aerospace using multi-block grids. Part 1: Applications to grid generation. Concurrency, 4 (1992), pp. 357–376.
W. D. Henshaw et al., Private communication.
I. Jacobsson et al., Object-Oriented Software Engineering—A Use Case Driven Approach, Addison-Wesley, 1994.
J. F. Karpovich et al., A parallel object-oriented framework for stencil algorithms. In Proceedings of the Second International Symposium on High-Performance Distributed Computing, pp. 34–41, 1993.
M. Lemke, D. Quinlan, P++, a parallel C++ array class library for archi-tecture-independent development of structured grid applications. ACM SIGPLAN Notes, 28 (1993), pp. 21–23.
J. Rantakokko, Object-oriented software tools for composite-grid methods on parallel computers. Report 165, Dept. of Scientific Computing, Uppsala University, Uppsala, 1995.
J. V. W. Reynders et al., POOMA: a framework for scientific simulation on parallel architectures. Available on Internet, http://www.acl.lanl.gov/PoomaFramework/
J. Rumbaugh et al., Object-Oriented Modeling and Design, Prentice-Hall, Englewood Cliffs, NJ, 1991.
V. Singhal, S. Kakkad, P. R. Wilson, Texas: An efficient, portable persisitent store. Dept. of Computer Sciences, Univ. Texas at Austin, Austin, Texas.
O. Strandberg, Persistent objects in Cogito. Internal Report No. 95-11, Dept. of Scientific Computing, Uppsala University, Uppsala, 1995.
M. Thune, Object-oriented software tools for parallel PDE solvers. Invited paper at the International Conference on Parallel Algorithms (ICPA '95), Wuhan University, October 16–19, 1995.
R. D. Williams, DIME++: A language for parallel PDE solvers. Report CCSF-29-92, CCSF, Caltech, Pasadena, 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Thuné, M., Åhlander, K. (1996). Towards an expressive language for PDE solvers. In: Nielson, H.R. (eds) Programming Languages and Systems — ESOP '96. ESOP 1996. Lecture Notes in Computer Science, vol 1058. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61055-3_49
Download citation
DOI: https://doi.org/10.1007/3-540-61055-3_49
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61055-7
Online ISBN: 978-3-540-49942-8
eBook Packages: Springer Book Archive