Computational & Technology Resources
an online resource for computational,
engineering & technology publications
Civil-Comp Proceedings
ISSN 1759-3433
CCP: 33
DEVELOPMENTS IN COMPUTATIONAL TECHNIQUES FOR STRUCTURAL ENGINEERING
Edited by: B.H.V. Topping
Paper V.2

Object Oriented Finite Element Analysis (I) Matrix Operations

M.N. Zaher, A.Y. Akl and H.M. Emam

Faculty of Engineering, Cairo University, Cairo, Egypt

Full Bibliographic Reference for this paper
M.N. Zaher, A.Y. Akl, H.M. Emam, "Object Oriented Finite Element Analysis (I) Matrix Operations", in B.H.V. Topping, (Editor), "Developments in Computational Techniques for Structural Engineering", Civil-Comp Press, Edinburgh, UK, pp 173-186, 1995. doi:10.4203/ccp.33.5.2
Abstract
The objective of this research is to study the application of the object oriented programming technique in the field of finite element analysis programming. A computer module, called OFELEA, is written in C++. It is divided into two main chunks of code.

  1. 1 The matrix operations library
  2. 2 The finite element procedure

This paper includes the discussion of the matrix operations library, while the finite element procedure is discussed in Zaher et al.

The Usage of the object oriented concepts, such as user-defined types and operator overloading, enables writing more readable, extendible, and reusable matrix operations library. The current implementation includes three different user-defined classes: the vector, the matrix, and the bmatrix. Both the vector and the matrix classes are extended versions of Sholz classes. This extension allows redimensioning of vectors and matrices at runtime.

The bmatrix type is an implementation of a square, symmetric matrix which is stored in a half-banded form. (e.g. a typical stiffness matrix). The banded matrix is treated as if it is completely stored (i.e. when referring to a certain element, it is indexed as if the matrix is completely stored, and not banded). This leads to a more extendible code, since the program source lines used to send and retrieve elements of the structure stiffness matrix are not dependent on the storage scheme of the matrix.

Also, while implementing the library a complete dynamic allocation technique is adopted which leads to the most efficient use of memory.

purchase the full-text of this paper (price £20)

go to the previous paper
go to the next paper
return to the table of contents
return to the book description
purchase this book (price £78 +P&P)