Hostname: page-component-77c89778f8-cnmwb Total loading time: 0 Render date: 2024-07-22T06:54:07.591Z Has data issue: false hasContentIssue false

Concepts—An Object-Oriented Software Package for Partial Differential Equations

Published online by Cambridge University Press:  15 October 2002

Philipp Frauenfelder
Affiliation:
Seminar for Applied Mathematics, Swiss Federal Institute of Technology, 8092 Zürich, Switzerland. pfrauenf@math.ethz.ch.
Christian Lage
Affiliation:
372 Funston Avenue, San Francisco, CA 94118, USA. cl@numiracle.com.
Get access

Abstract

Object oriented design has proven itself as a powerful tool in the field of scientific computing. Several software packages, libraries and toolkits exist, in particular in the FEM arena that follow this design methodology providing extensible, reusable, and flexible software while staying competitive to traditionally designed point tools in terms of efficiency. However, the common approach to identify classes is to turn data structures and algorithms of traditional implementations into classes such that the level of abstraction is essentially not raised. In this paper we discuss an alternative way to approach the design challenge which we call “concept oriented design”. We apply this design methodology to Petrov-Galerkin methods leading to a class library for both, boundary element methods (BEM) and finite element methods (FEM). We show as a particular example the implementation of hp-FEM using the library with special attention to the handling of inconsistent meshes.

Type
Research Article
Copyright
© EDP Sciences, SMAI, 2002

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

S. Balay, K. Buschelman, W.D. Gropp, D. Kaushik, L.C. McInnes and B.F. Smith, PETSc home page. http://www.mcs.anl.gov/petsc (2001).
S. Balay, W.D. Gropp, L.C. McInnes and B.F. Smith, Efficient management of parallelism in object oriented numerical software libraries, in Modern Software Tools in Scientific Computing, E. Arge, A.M. Bruaset and H.P. Langtangen Eds., Birkhauser Press (1997) 163-202.
S. Balay, W.D. Gropp, L.C. McInnes and B.F. Smith, PETSc users manual. Technical Report ANL-95/11 - Revision 2.1.0, Argonne National Laboratory (2001).
G. Booch, Object-Oriented Analysis and Design with Applications. Addison-Wesley Object Technology Series. Addison Wesley Longman, Inc., 2nd ed. (1994).
Concepts Development Team. Concepts. Internet (2001). http://www.math.ethz.ch/~concepts/
M. Fiedler, Tensor product of matrices. Compound matrices, in Special matrices and their applications in numerical mathematics, Martinus Nijhoff Publishers, Dordrecht, The Netherlands and SNTL--Publishers of Technical Literature, Prague, Czechoslovakia (1986) p. 136.
GNU Project. GNU Compiler Collection. Internet (2001). http://www.gnu.org/software/gcc/
GNU Project. GNU is Not Unix and the Free Software Foundation. Internet (2001). http://www.gnu.org/
C. Lage, Softwareentwicklung zur Randelementmehtode: Analyse und Entwurf effizienter Techniken. Ph.D. thesis, Christian-Albrechts-Universität, Kiel (1995).
C. Lage, Concept oriented design of numerical software. Technical Report 98-07, Seminar for Applied Mathematics, Swiss Federal Institute of Technology, Zürich (1998).
A. Larsson, J. Henstridge et al., Dia. Internet (2001). http://www.lysator.liu.se/~alla/dia/
A.-M. Matache, Spectral and p -Finite Elements for problems with microstructure. Ph.D. thesis, Swiss Federal Institute of Technology, Zürich (2000).
Object Management Group, Inc., Framingham, USA. OMG Unified Modeling Language Specification, 1.3 ed. (1999). http://www.rational.com/uml/resources/documentation/
B. Stroustrup, The C++ Programming Language. Addison Wesley Longman, Inc., 3rd ed. (1997).
S. Sutanthavibul, B.V. Smith and P. King, Xfig. Internet (2001). http://epb.lbl.gov/xfig/