Table of Contents Author Guidelines Submit a Manuscript
Scientific Programming
Volume 14, Issue 2, Pages 111-139
http://dx.doi.org/10.1155/2006/393058

Reusable Object-Oriented Solutions for Numerical Simulation of PDEs in a High Performance Environment

Andrea Lani,1 Tiago Quintino,1,2 Dries Kimpe,2,3 Herman Deconinck,1 Stefan Vandewalle,2 and Stefaan Poedts3

1Von Karman Institute, Aerospace Dept., Chaussee de Waterloo 72, B-1640 Sint-Genesius-Rode, Belgium
2Catholic University Leuven, Computer Science Department, Celestijnenlaan 200A, B-3001 Leuven, Belgium
3Catholic University Leuven, Center for Plasma-Astrophysics, Celestijnenlaan 200B, B-3001 Leuven, Belgium

Received 7 December 2006; Accepted 7 December 2006

Copyright © 2006 Hindawi Publishing Corporation. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

Object-oriented platforms developed for the numerical solution of PDEs must combine flexibility and reusability, in order to ease the integration of new functionalities and algorithms. While designing similar frameworks, a built-in support for high performance should be provided and enforced transparently, especially in parallel simulations. The paper presents solutions developed to effectively tackle these and other more specific problems (data handling and storage, implementation of physical models and numerical methods) that have arisen in the development of COOLFluiD, an environment for PDE solvers. Particular attention is devoted to describe a data storage facility, highly suitable for both serial and parallel computing, and to discuss the application of two design patterns, Perspective and Method-Command-Strategy, that support extensibility and run-time flexibility in the implementation of physical models and generic numerical algorithms respectively.