An Object-Oriented Implementation of the Finite Element Method for Coupled problems
Keywords:
coupled problems, piezoelectricity, object-oriented programming, C , command interpreterAbstract
Recent advances in computational hardware allow us to consider solving complex phenomena (e.g., coupled problems, large non linearities, optimization, etc.). Complexity of problems to be analyzed is constantly increasing due to cu"ent industrial demands that pose severe constraints to software developers. Object-oriented programming has emerged as a solution to manage complexity. In this paper, we describe aspects in the development of a finite element pro gram written in C++. Particular aspects of the fonnulation, as the concepts of partition and tools for the decomposition of the problem into several sub-parts, are introduced. Examples illustrating applications to the solution of piezoelectric motor modeling and of shape optimization are shown.
Downloads
References
[AMM91] L. AMMERAAL, C++ for Programmers. John Wiley & Sons, 1991.
[BN94] J. BARrON, L. NACKMAN, Scientific and Engineering C++. Addison
esley, 1994.
[Boo94] G. BOOCH, Object Oriented Analysis and Design. 1994.
[CKG94] A. CARDONA, I. KLAPKA, M. GERADIN, Design of a new finite element
programming environment. Engineering Computations, 11:365-381, 1994.
[ CY91] P. COAD, E. YOURDON, Object-Oriented Design. Yourdon Press Computing
Series, 1991.
[DEVL0094] P.R.B. DEVLOO, Efficiency issues in an object-oriented programming
environment. Artificial Intelligence and Object-Oriented Approaches for Structural
Engineering, Civil-Comp Press, pages 147-151, 1994.
[DF92] P.R.B. DEVLOO, J.S. RODRIGUES ALVES FILHO, An object-oriented
approach to finite element programming: a system independent windowing environment
for developing interactive scientific programs. Advances in Engineering
Software, 14:41-46, 1992.
[DLN+94] J. DONGARRA, A. LUMDSDAINE, X. NIU, R. POZO, K. REMING-
DN, Sparse matrix libraries in C++ for high performance architectures. In Proceedings
of the Second Annual Object-Oriented Numerics Conference ( OON-SKI'94 ),
pages 122-138, April24-27, 1994.
[DPB90] Y DUBOIS-PELERIN, P. BOMME, T. ZIMMERMAN, Application de
Ia programmation orientee objet a Ia methode des elements finis - developpement
d'un logiciel pilote en Small talk. /REM- rapport interne 90/5, Ecole Polytechnique
Federate de Lausanne, 1990.
[FD91] J.S. RODRIGUES ALVES FILHO, P.R.B. DEVLOO, Object-oriented programming
in scientific computations: the beginning of a new era. Engineering
Computations, 8:81-87, 1991.
[FFS90] B.WR. FORDE, R.O. FOSCHI, S.F. STIEMER, Object-oriented finite element
analysis. Computers and Structures, 34:355-374, 1990.
[FR91] C. FARHAT, F.X.ROUX, A method of finite element tearing and interconnecting
and its parallel solution algorithm. International Journal for Numerical
Methods in Engineering, 1205-1227, 1991.
[DS83] J.E.DENNIS, R.B.SCHNABEL, Numerical Methods for Unconstrained Optimization
and Non-linear Equations. Prentice Hall Series, 1983.
[MAc92] R.I MACJKIE, Object oriented programming of the finite element method.
International Journal for Numerical Methods in Engineering, 35:425-436, 1992.
[MIL91] G.R. MILLER, An object-oriented approach to structural analysis and design.
Computers and Structures, 40:75-82, 1991.
[MR90] M. METCALF, J. REID, Fortran 90 Explained. Oxford Science Publications,
[OBR90] N. OLHOFF, M.P. BENDSOE, J.RASMUSSEN, On Cad-integrated structural
topology and design optimization. Report No 27, Inst. of Mech Eng, Aalborg
University, Denmark, 1990.
[ROBISON96A] Arch D. ROBISON, The abstraction penalty for small objects in
C++. In POOMA'96: The Parallel Object-Oriented Methods and Applications
Conference, February 28- March I 1996. Santa Fe, New Mexico.
[RuM91] James RUMBAUGH, Object Oriented Modeling and Design. 1991.
[STR91] Bjarne STROUSTRUP, The C++ programming language. Addison W:sley,
nd Edition, 1991.
[VEL95] Todd VELDHUIZEN, Using C++ template metaprograms. C++ Report,
(4):36-43, May, 1995.
[ZDP91] T. ZIMMERMAN, Y DUBOIS-PELERIN, Object-oriented finite element
programming, i. governing principles; ii. a prototype program in Small talk. l.SC -
internal report 9112, Ecole Polytechnique Federate de Lausanne, 1991.
[ZDP92] T. ZIMMERMAN, Y DUBOIS-PELERIN, The object-oriented approach to
finite elements: concepts and implementations. Proceedings of the First European
Conference on Numerical Methods in Engineering, Brussels, pages 865-870, 1992.
[ZH94] G.W ZEGLINSKI, R.P.S. HAN, Object-oriented matrix classes for use in a
finite element code using C++. International Journal for Numerical Methods in
Engineering, 37:3921-3937, 1994.