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 -FEM using the library with special attention to the handling of inconsistent meshes.
Keywords: object oriented design, concept oriented design, $hp$-FEM, adaptivity
@article{M2AN_2002__36_5_937_0, author = {Frauenfelder, Philipp and Lage, Christian}, title = {Concepts-An object-oriented software package for partial differential equations}, journal = {ESAIM: Mod\'elisation math\'ematique et analyse num\'erique}, pages = {937--951}, publisher = {EDP-Sciences}, volume = {36}, number = {5}, year = {2002}, doi = {10.1051/m2an:2002036}, zbl = {1032.65128}, language = {en}, url = {http://www.numdam.org/articles/10.1051/m2an:2002036/} }
TY - JOUR AU - Frauenfelder, Philipp AU - Lage, Christian TI - Concepts-An object-oriented software package for partial differential equations JO - ESAIM: Modélisation mathématique et analyse numérique PY - 2002 SP - 937 EP - 951 VL - 36 IS - 5 PB - EDP-Sciences UR - http://www.numdam.org/articles/10.1051/m2an:2002036/ DO - 10.1051/m2an:2002036 LA - en ID - M2AN_2002__36_5_937_0 ER -
%0 Journal Article %A Frauenfelder, Philipp %A Lage, Christian %T Concepts-An object-oriented software package for partial differential equations %J ESAIM: Modélisation mathématique et analyse numérique %D 2002 %P 937-951 %V 36 %N 5 %I EDP-Sciences %U http://www.numdam.org/articles/10.1051/m2an:2002036/ %R 10.1051/m2an:2002036 %G en %F M2AN_2002__36_5_937_0
Frauenfelder, Philipp; Lage, Christian. Concepts-An object-oriented software package for partial differential equations. ESAIM: Modélisation mathématique et analyse numérique, Volume 36 (2002) no. 5, pp. 937-951. doi : 10.1051/m2an:2002036. http://www.numdam.org/articles/10.1051/m2an:2002036/
[1] PETSc home page. http://www.mcs.anl.gov/petsc (2001).
, , , , and ,[2] 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. | Zbl
, , and ,[3] PETSc users manual. Technical Report ANL-95/11 - Revision 2.1.0, Argonne National Laboratory (2001).
, , and ,[4] Object-Oriented Analysis and Design with Applications. Addison-Wesley Object Technology Series. Addison Wesley Longman, Inc., 2nd ed. (1994).
,[5] Concepts Development Team. Concepts. Internet (2001). http://www.math.ethz.ch/~concepts/
[6] 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. | MR
,[7] GNU Project. GNU Compiler Collection. Internet (2001). http://www.gnu.org/software/gcc/
[8] GNU Project. GNU is Not Unix and the Free Software Foundation. Internet (2001). http://www.gnu.org/
[9] Softwareentwicklung zur Randelementmehtode: Analyse und Entwurf effizienter Techniken. Ph.D. thesis, Christian-Albrechts-Universität, Kiel (1995).
,[10] Concept oriented design of numerical software. Technical Report 98-07, Seminar for Applied Mathematics, Swiss Federal Institute of Technology, Zürich (1998).
,[11] Dia. Internet (2001). http://www.lysator.liu.se/~alla/dia/
, et al.,[12] Spectral and -Finite Elements for problems with microstructure. Ph.D. thesis, Swiss Federal Institute of Technology, Zürich (2000).
,[13] Object Management Group, Inc., Framingham, USA. OMG Unified Modeling Language Specification, 1.3 ed. (1999). http://www.rational.com/uml/resources/documentation/
[14] The C++ Programming Language. Addison Wesley Longman, Inc., 3rd ed. (1997). | Zbl
,[15] Xfig. Internet (2001). http://epb.lbl.gov/xfig/
, and ,Cited by Sources: