z-logo
Premium
Object oriented matrix classes for use in a finite element code using C++
Author(s) -
Zeglinski Gordon W.,
Han Ray P. S.,
Aitchison Peter
Publication year - 1994
Publication title -
international journal for numerical methods in engineering
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 1.421
H-Index - 168
eISSN - 1097-0207
pISSN - 0029-5981
DOI - 10.1002/nme.1620372210
Subject(s) - object oriented programming , computer science , programming language , finite element method , matrix (chemical analysis) , hierarchy , fortran , generic programming , theoretical computer science , computational science , structural engineering , engineering , economics , materials science , market economy , composite material
This paper presents a new method of writing finite element programs using the programming approach known as object oriented programming (OOP). More specifically, the C++ language is used to illustrate the key OOP concepts. In addition to the OOP finite element examples, a detailed discussion of OOP techniques in the creation of a generalized matrix library is presented. The C++ language is used in this paper because it is more suited to numerical programs than a pure OOP language such as Smalltalk. The efficiency, flexibility and maintainability of the C++ program are shown to be superior to a comparable version written in a non‐OOP language, such as FORTRAN. The matrix library contains a number of matrix objects that are useful for specific types of matrix related problems. Different sparse storage schemes are implemented for each different type of matrix. A large number of functions are provided for each matrix type in order to implement many common matrix operations. In applications, the OOP paradigm allows the functions to be used in a very simple way that is common to all the matrix types. The sample finite element code included in this paper is primarily intended to illustrate the key concepts of OOP style. This paper explains how to set up a finite element hierarchy, material hierarchy and how to integrate this with the matrix hierarchy (library). Thus, a completely object oriented finite element program can be written.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here