J. Besson et R. Foerch, LARGE-SCALE OBJECT-ORIENTED FINITE-ELEMENT CODE DESIGN, Computer methods in applied mechanics and engineering, 142(1-2), 1997, pp. 165-187
This paper discusses the aspects of object-oriented finite element des
ign which become relevant as the project size increases. A simple core
library is described which aids program development by isolating repe
titive tasks into optimized classes. This library addresses particular
ly the mathematical entities which appear in mechanics. Several object
-oriented class idioms are given as well, with implementation syntax i
n C++. The classes address the reduction of interdependence in the cod
e project, and facility expandability in the long term. Application of
these abstract programming techniques are given within the context of
a complete, working FEM code design which employs the object techniqu
es thoroughly on every level of the computation. Furthermore, suggesti
ons are given on how to reformulate problems in an object-oriented fas
hion in order to plan on expandability. Results for CPU performance ar
e given with respect to a Fortran code.