Computational & Technology Resources
an online resource for computational,
engineering & technology publications
Civil-Comp Proceedings
ISSN 1759-3433
CCP: 84
PROCEEDINGS OF THE FIFTH INTERNATIONAL CONFERENCE ON ENGINEERING COMPUTATIONAL TECHNOLOGY
Edited by: B.H.V. Topping, G. Montero and R. Montenegro
Paper 110

Object Oriented Platform for Analysis of Three Dimensional Building Structures

S. Astarlioglu and A. Scanlon

Department of Civil and Environmental Engineering, The Pennsylvania State University, University Park, United States of America

Full Bibliographic Reference for this paper
S. Astarlioglu, A. Scanlon, "Object Oriented Platform for Analysis of Three Dimensional Building Structures", in B.H.V. Topping, G. Montero, R. Montenegro, (Editors), "Proceedings of the Fifth International Conference on Engineering Computational Technology", Civil-Comp Press, Stirlingshire, UK, Paper 110, 2006. doi:10.4203/ccp.84.110
Keywords: finite elements, object-oriented programming.

Summary
The development of a finite element analysis program named Snaps3D (Seismic Nonlinear Analysis of Precast Structures) for nonlinear analysis of three dimensional building structures under seismic loads is described. The advantages of object oriented programming approach using the Microsoft .NET Framework [1] and C# programming language, which are used to develop to source code, over traditional procedure-based FORTRAN finite elements in terms of maintainability and extensibility of software is discussed.

Extending a procedure-based finite element code requires modifications in a global scale and thus may require the researcher who is responsible for adding the new feature to have an understanding of the entire program. When object-oriented programming is used, the researcher only needs to know an existing class which has similar features to the one he or she intends to develop.

Since .NET Framework or the C# programming language does not contain out-of-the-box numerical libraries, the classes for matrix and vector operations are developed and packaged in an assembly named Snaps3D.Algebra. Included in this assembly are: DoubleMatrix, DoubleVector, ObjectMatrix, ObjectVector, DiagonalDoubleMatrix, DiagonalObjectMatrix classes.

The finite element concepts such as nodes, elements, solvers, and loads are abstracted into C# types (classes and interfaces) and packaged in an assembly named Snaps3D.Core. Included in this assembly are specialized classes to model precast concrete members (shell element to model wall panels and floors, beam element to model beams, columns, and horizontal connections) and their behavior (elastic material to model the response of precast members and nonlinear materials to model the connections). New material models, elements, solvers can be developed and incorporated into the program either by implementing the appropriate interface (IElement interface to add a new element class) or by inheriting from an existing class with similar behavior (Inherit from Solid class to develop Shell element). Neither case would require the existing program to be modified.

The nonlinear dynamic analysis of a simple two-story structure has been performed to illustrate the ability of the computer program to model response of three dimensional panel type structures under seismic load.

References