Object oriented design philosophy for scientific computing
ESAIM: Mathematical Modelling and Numerical Analysis - Modélisation Mathématique et Analyse Numérique, Volume 36 (2002) no. 5, p. 793-807
This contribution gives an overview of current research in applying object oriented programming to scientific computing at the computational mechanics laboratory (LABMEC) at the school of civil engineering - UNICAMP. The main goal of applying object oriented programming to scientific computing is to implement increasingly complex algorithms in a structured manner and to hide the complexity behind a simple user interface. The following areas are current topics of research and documented within the paper: hp-adaptive finite elements in one-, two- and three dimensions with the development of automatic refinement strategies, multigrid methods applied to adaptively refined finite element solution spaces and parallel computing.
DOI : https://doi.org/10.1051/m2an:2002041
Classification:  65M60,  65G20,  65M55,  65Y99,  65Y05
Keywords: finite element method, object oriented programming, adaptivity, multigrid, substructuring
@article{M2AN_2002__36_5_793_0,
     author = {Devloo, Philippe R. B. and Longhin, Gustavo C.},
     title = {Object oriented design philosophy for scientific computing},
     journal = {ESAIM: Mathematical Modelling and Numerical Analysis - Mod\'elisation Math\'ematique et Analyse Num\'erique},
     publisher = {EDP-Sciences},
     volume = {36},
     number = {5},
     year = {2002},
     pages = {793-807},
     doi = {10.1051/m2an:2002041},
     zbl = {1024.65110},
     language = {en},
     url = {http://www.numdam.org/item/M2AN_2002__36_5_793_0}
}
Devloo, Philippe R. B.; Longhin, Gustavo C. Object oriented design philosophy for scientific computing. ESAIM: Mathematical Modelling and Numerical Analysis - Modélisation Mathématique et Analyse Numérique, Volume 36 (2002) no. 5, pp. 793-807. doi : 10.1051/m2an:2002041. http://www.numdam.org/item/M2AN_2002__36_5_793_0/

[1] Ivo Babuska Ahmed K. Noor, Quality assessment and control of finite element solutions. Finite Eleme. Anal. Des. 3 (1987) 1-26. | Zbl 0608.73072

[2] W. Bangerth, Using modern features of C++ for adaptive finite element methods: Dimension-independent programming in deal.II, in Proceedings of the 16th IMACS World Congress 2000, Lausanne, Switzerland, 2000, M. Deville and R. Owens Eds. (2000). Document Sessions/118-1.

[3] R. Barrett, M. Berry, T.F. Chan, F. Demmel, J. Donato, J. Dongarra, V. Eijkhout, R. Pozo, C. Romine and H. Van Der Vorst, Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods. SIAM (1994). | MR 1247007 | Zbl 0814.65030

[4] C.M.A.A. Bravo, Sobre a implementação da técnica hp-adaptativa tri-dimensional para elementos finitos. Ph.D. thesis, Faculdade de Engenharia Mecânica, UNICAMP (2000).

[5] C.M.A.A. Bravo, P.R.B. Devloo and R. Pavanello, Sobre a implementação do refinamento h-p in CILAMCE99 Congresso Ibero Latino Americano de Metodos Computacionais para Engenharia (1999) 1-21.

[6] B. Cockburn, G. Kanschat, I. Perugia and D. Schötzau, Superconvergence of the local discontinuous galerkin method for elliptic problems on cartesian grids. Technical Report 2000/71 (2000). | MR 1860725 | Zbl 1041.65080

[7] L. Demkowicz, P.R.B. Devloo and J.T. Oden, On an h-type mesh refinement strategy based on minimization of interpolation errors. Comput. Methods Appl. Mech. Engrg. 1-2 (1986) 63-87. | Zbl 0723.73074

[8] P.R.B. Devloo, A three-dimensional adaptive finite element strategy. Comput. Structures 38 (1991) 121-130. | Zbl 0825.73695

[9] P.R.B. Devloo, On the development of a finite element program based on the object oriented programming philosophy, in Proc. First Annual Object-Oriented Numerics Conference, Corvallis, OR, USA (1993) 183-203. Object Oriented Numerics Conference, Rogue Wave Software, Inc.

[10] P.R.B. Devloo, PZ: An object oriented environment for scientific programming. Comput. Methods Appl. Mech. Engrg. 150 (1997) 133-153. | Zbl 0907.65115

[11] P.R.B. Devloo and J.S.R.F. Alves, On the development of a finite element program based on the object oriented programming filosophy, in Numer. Methods Engrg. '92, Ch. Hirsch, O.C. Zienkiewicz and E. Oñate Eds., Elsevier, Brussels, Belgium (1992) 39-42. First European Conference on Numerical Methods in Engineering, Elsevier.

[12] P.R.B. Devloo, J.T. Oden and P. Pattani, An hp-adaptive finite element method for the numerical simulation of compressible flow. Comput. Methods Appl. Mech. Engrg. 70 (1988) 203-235. | Zbl 0636.76064

[13] P.R.B. Devloo and E.C. Rylo, Implementação da técnica de subestruturação no ambiente de elementos finitos pz. XXII Iberian Latin-American Congress on Computational Methods in Engineering (2001).

[14] B.W.R. Forde, R.O. Foschi and S.F. Stiemer, Object-oriented finite element analysis. Comput. Structures 34 (1990) 355-374. | Zbl 0724.73216

[15] T.J. Liszka, C.A.M. Duarte and O.N. Hamzeh, Hp-meshes method for dynamic fracture propagation. The computational Mechanics Company, Inc. (COMCO) (1999).

[16] G.C. Longhin and Ph.R.B. Devloo, An object oriented multi-threaded multi-frontal solver. XXII Iberian Latin-American Congress on Computational Methods in Engineering (2001).

[17] R.I. Mackie, Object oriented programming of the finite element method. Internat. J. Numer. Methods Engrg. 35 (1992) 425-436. | Zbl 0768.73075

[18] M.M.L. Santana and P.R.B. Devloo, Object oriented matrix classes. AIMETA Joint conference of Italian group of Comput. mech. CILAMCE (1996) 325-328.

[19] T. Zimmermann and Y. Dubois-Pelerin, The object-oriented approach to finite elements: concepts and implementations. Proc. of the First European Conference on Numer. Methods Engrg., Brussels (1992) 865-870.