Matlab programının doğrusal olmayan deprem analizleri için paralel programlamaya uygunluğunun araştırılması
Applicability of Matlab language to parallel programming for nonlinear seismic analysis of structure
Yazar: FATİH YILDIZ
Danışman: YRD. DOÇ. DR. BARIŞ ERKUŞ
İstanbul Teknik Üniversitesi / Fen Bilimleri Enstitüsü / İnşaat Mühendisliği Ana Bilim Dalı / Yapı Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2017
Konu: İnşaat Mühendisliği = Civil Engineering
Dizin: Bünye denklemleri = Constitutive equations ; Deprem = Earthquake ; Doğrusal olmayan analiz = Nonlinear analysis ; Matlab = Matlab ; Paralel programlama = Parallel programs

Özet:
ÖZET
İnşaat mühendisliğindeki gelişmeler sayesinde yapısal modelleme ve çözümleme farklı şekillerde yapılabilmektedir. Yapısal modelleme sürecinde, yapıyı oluşturan kolon, kiriş, döşeme, perde gibi fiziksel elemanların davranışlarını gözönünde bulundurarak ve davranışları ile ilgili bazı kabuller yaparak, bu elemanlar için matematiksel modeller kullanılır. Fiziksel elemanların yanı sıra, doğrusal olmayan davranışı temsil edecek elemanların matematiksel modelleri de oluşturulur. Bu eleman bazındaki modeller kullanılarak yapısal sistem ( çerçeve sistem, perdeli-çerçeve sistem, kabuklar, kablolu sistemler vb.) ve genel matematiksel model oluşturulur. Modellemesi biten yapıların analiz sürecinde ise toprak, rüzgar ve deprem gibi farklı yükleme durumları için çözümler yapılır.
Bu tez kapsamında, kolon ve kiriş elemanlar için çubuk eleman basitleştirmesi ve doğrusal olmayan elemanlar için de yay kabulü yapılmıştır. Bu çubuk elemanlar ve yaylar, düğüm noktaları yardımıyla birleştirilip çerçeve sistemler oluşturulur. Çubuk elemanların doğrusal, yay elemanların ise doğrusal olmayan davranış sergilediği düşünülerek sistemin doğrusalsızlığı yay elemanlara yoğunlaştırılmıştır. Aynı zamanda Matlab programlama dili yardımıyla doğrusal olmayan deprem analiz programı yazılmıştır. Bu bilgisayar programlarının bize sağladığı işlem kolaylığı ile yay ve çubuk elemanlardan teşkil edilen, istenilen açıklık ve istenilen kat sayısında çerçeve sistemler oluşturulmuş ve bu çerçeve sisteme dinamik yük uygulanarak zaman tanım aralığında analiz yapılmıştır. Dinamik yük olarak çeşitli deprem yer hareket kayıtları çerçeveye yüklenerek artırımlı zaman aralığında, deprem analizi için geliştirilen program çalıştırılmış ve analiz sonucu oluşan ivme, hız ve yerdeğiştirmeler belirlenerek yapının sismik davranışı saptanmıştır.
Günümüzde yaygın olarak kullanılmaya başlanan yüksek katlı ve çok sayıda açıklığı bulunan çerçeve sistemlerin modellenmesi esnasında kolon ve kirişlerin sayısı hatırı sayılır biçimde arttığı için fazlasıyla çubuk eleman göz önünde bulundurulmalıdır. Buna bağlı olarak her çubuk elemanda, doğrusal olmayan davranışı temsil eden yaylar da matematiksel modele entegre edilmelidir. Bu çerçeve sistemin oluşturulması ve özellikle çözülmesi esnasında Matlab programı ile geliştirilen deprem analiz programı fazlasıyla işlem yapmaktadır. Bu işlemlerin fazlalığı analiz için gerekli olan süreyi uzatmakta dolayısıyla vakit kaybı yaşanmakta ve projelerde gecikmeler yaşanabilmektedir.
Analiz sürelerinin uzun olmasının yol açtığı  problemleri çözüme kavuşturabilmek için geleneksel yöntem olan seri hesaplamalardan uzaklaşıp paralel programlama konseptinin kullanılması gerektiği ortaya çıkmıştır. Bilgisayar mimarisindeki değişimler ile ön plana çıkan paralel programlama, farklı avantajları sayesinde bir çok alanda kullanılabilmektedir. Zaman tasarrufu, bilgisayar çekirdeklerini aynı anda kullanım imkanı ve büyük verileri çözme kabiliyeti paralel programlamanın kullanım alanlarını her geçen gün artırmaktadır. Bu tez kapsamında, paralel programlama konsepti ile Matlab programında geliştirilen deprem analiz programının içerisindeki iş yükü küçük parçalara ayrılarak bilgisayarın çekirdeklerine (CPU) gönderilmiş ve eş zamanlı olarak çözümün elde edilmesi beklenmiştir. Bu sayede programların hızlandırılması ve analiz süresinin kısalması hedeflenmiştir.

Abstract:
SUMMARY
The development of civil engineering has facilitated the modeling and analysis of constructions. In the modeling process of constructions, mathematical models are used for physical elements with considering its behaviors and making some assumptions about its behaviors. Some samples of the physical elements forming the building are columns, beams, slabs, shear walls. In addition to physical elements, mathematical model of elements representing nonlinear behavior is created. Using this element-based models, the structural system ( frame system, shear walled frame system, shells, cable system etc.) and general mathematical model are generated. In the analysis process of modeled structures, solutions are made for different loading conditions such as soil, wind and earthquake. 
Within the scope of this thesis, simplification of the rod element for column and beam elements and acceptance of the spring for non-linear elements are made. These rod elements and springs are connected with the node points to form frame systems. The nonlinearity of the system is concentrated on the spring elements, considering that the rod elements exhibit linear behavior and the spring elements exhibit nonlinear behavior. At the same time nonlinear seismic analysis programs were written with the aid of Matlab software language. With the ease of operation provided by the computer program, frame systems with desired number of storey and bay and that constituted by the spring and rod elements are created and the time history analysis are made by applying dynamic load to this frame system. Various earthquake ground motion records were loaded as a dynamic load on the frame, seismic analysis programs were run in the incremental time interval and the seismic behavior was discovered by determining the acceleration, speed and displacements that occurred after the analysis.
The number of columns and beams is considerably increased during the modeling of frame systems which have a lot of storeys and bays . For this, too much rod element should be considered in the analysis. Accordingly, in each rod element, springs representing nonlinear behavior must be integrated into the mathematical model. The analysis programs written in Matlab software language intensively calculate data in the creation of this frame system and in particular its analysis. The surplus of these transactions prolongs the time required for the analysis, which leads to waste of time and delays in the projects.
In contrast to the conventional method of serial calculations, parallel programming concept has to be used in order to be able to solve the problems caused by long analysis times. Parallel programming, which comes to the forefront with the changes in the computer architecture, can be used in many areas thanks to its different advantages. The time savings, the ability to use computer cores at the same time and the ability to solve large amounts of data are increasing the usage areas of parallel programming day by day. In this thesis, considering the parallel programming concept, the workload of the analysis programs written in Matlab program is divided into small pieces and sent to the cores of the computer (CPU) and it is expected to obtain the solution simultaneously. This is aimed at accelerating the programs and shortening the analysis time.
This thesis investigates the effectiveness of parallelization of material constitutive model functions in nonlinear seismic time-history analysis of structures coded with script languages.Traditionally, nonlinear time history analysis programs are written in conventional programming languages such as FORTRAN or C. However, recently, script language such as MATLAB is also being used mostly for research purposes as they provide many useful libraries and packages
There are two types of nonlinear element models that are frequently used in nonlinear time history analysis: concentrated plasticity models and distributed plasticity models. Concentrated plasticity models are phenomenological models with single nonlinear element. Distributed plasticity models such fiber models are macro models with many nonlinear elements.
The most time-consuming stage of a nonlinear time history analysis is generally solution of a linear system of equations with a size equal to the structure's degrees of freedom. Furthermore, if fiber models are used, a system of linear equation for each fiber macro element is solved to achieve the element equilibrium.
Simulation of constitutive models may also have significant time-cost, especially if fiber elements are formed by many fibers with complicated and time-consuming constitutive models.For the solution of linear system equations parallel programming algorithms such as domain decomposition method has been utilized, which significantly reduces the analysis durations. To evaluate and improve the time-cost simulations of constitutive models using parallel programing a program is written for nonlinear analysis of two-dimensional frame type structures.
Frame structure is comprised of columns and beams that are modelled as linear frame elements. At both ends of each frame element, there are nonlinear rotational springs. These springs can have three types of nonlinearities: a bilinear behavior modelled as piecewise linear, a trilinear Takeda model and a Bouc-Wen model. Newmark's -method is used for the solution of differential equations, and a single-step method is used for minimization of unbalanced forces. Five frames with 10, 25, 50, 75 and 100 stories, each with four bays are generated as sample structures. These structures have 180, 450, 900, 1350 and 1800 nonlinear elements respectively.
Call to nonlinear constitutive models are programmed parallel using the tools available in the scripting languages. A version of the program with sequential loop is also written for comparison purposes.
Results show that parallel programming reduces the time duration of the nonlinear function calls significantly as the number of nonlinear elements and call duration of single element increases. It is identified that prescriptive languages provide several parallelization tools but not all tools provide efficient results. Also, overhead time in parallel simulations is observed, and a formulation is developed to find the minimum number of elements that is required to overcome the overhead.