Master'sOpen Access

Applicability of Python and Julia languages to nonlinear seismic analysis of structures and parallel programing

Is this your thesis?

This record came from a bulk archive import. If it’s yours, link it to your profile.

2017
0 views
0 downloads

Abstract (EN)

More detailed analyses can be conducted in recent years with better understanding of building behavior through scientific studies, the progress of construction technology and the development of computers with high computational power. The target performance for classical structures in the 2007 earthquake regulations is expressed as "no damage to the structural and non-structural system elements of buildings in mild intensity earthquakes, limited and repairable level of potential damage in structural and non-structural elements in moderate intensity earthquakes, and provision of life safety and limitation of permanent structural damage in severe earthquakes" (s. 1). The performance targets for the potential earthquake scenarios are determined in more detail according to the type and importance of the buildings in the Earthquake Regulations of the Buildings in Turkey of which draft has been published and which is scheduled to come into force in year 2017. The performance targets in the regulations are tried to be met through calculations made during the project design stage, by taking into consideration the design objectives of the buildings, their strategic importance and the post-earthquake expectations of the building owners. Linear analyses remain inadequate because the objective in performance-based design is to predict the trans-elastic behavior. It is important to use nonlinear analysis methods at this point. Nonlinear analyses are accepted as methods that can best reflect the behavior of structures under earthquake loads. Nonlinear analyses in performance-based design are preferred in engineering because they reflect structure damage and performance better when compared to linear analyses. For scientific research, nonlinear analysis is used because it is not possible to examine nonlinear behavior of each material and structure with experiments. In nonlinear analyses, lumped plasticity models are the most used nonlinear models. In lumped plasticity models, the strength and stiffness degradation modes are expressed by a macro model. Due to the fact that lumped plasticity models are a macro model, the analysis time is fast, but since non-linear modes are not explicitly modeled, it is difficult to use them outside of the projected behavior. If the lumped plasticity models are to be analyzed on an element basis, a good calibration can give results with high accuracy. However, in all structural analyses, accuracy is reduced because the calibrations become very difficult or impossible and effects that the model does not anticipate occur. In this case, depending on the nature of the problem, it is preferable to use modeling and analysis methods with higher accuracy. It is accepted that the distributed plasticity models have higher accuracy than the lumped models with correct calibration, since the degradation modes are explicitly modeled. Fiber models can be shown as an example of distributed plasticity models. In fiber models, the section is divided into many fibers and with each of these fibers, non dimensional springs representing the nonlinear behavior of the material are expressed. Therefore, one non-linear element in the lumped model must be expressed by tens, or even hundreds of non-linear elements in the distributed model. The practical engineering approach is to use lumped models for truss elements in large-scale structures, and to use distributed models for the points that nonlinear behavior is most anticipated. For example, in high buildings, while lumped models are used in columns and beams, distributed models are only used in lower floors where nonlinear behavior is anticipated for reinforced concrete partition walls. Distributed models which are considered to better reflect behavior in all elements for both elemental and structural analysis can be used for scientific studies. The most important obstacle in nonlinear analyses is that analyses of acceptable levels take a great deal of time. One reason for this is that matrix operations, which also apply to linear analysis and similar engineering problems, take a lot of time in high-scale systems. The solution of a set of linear equations is leading these operations. In large scale systems, the sets of equations that are obtained and the matrices expressing them are very large. Especially in problems such as earthquake analysis where the solution of the equation set is always necessary for each moment, this duration is quite high. Another reason why non-linear analyses take too much time is using models with a large number of non-linear elements, such as distributed fiber models, to increase accuracy. In non-linear analyses, unlike linear analyses, the internal forces of nonlinear elements are calculated using recursive methods such as Newton-Raphson. If the number of nonlinear elements is large, these recursions become too many and this greatly increases the duration of the analysis. Due to this problem, the model needs to be simplified in order to obtain acceptable analysis times, especially in the engineering field. In order to reduce the analysis time, it is possible to use non-recursive methods such as decreasing the number of nonlinear elements, using lumped plasticity models instead of distributed fiber models, expressing nonlinear material behavior piecewise linearly, and unbalanced force correction instead of recursive methods. However, in scientific studies, it has been observed that these approaches increase error rates while reducing analysis times. While for scientific research, scripting languages are used such as Python and Julia, which are generally easy to program and have extensive library options. In the case of large scale problems, similar duration problems are experienced due to the nature of the script languages. In nonlinear analysis, the most important approach used to reduce durations is parallel programming. Parallel programming is usually used for solution of a set of linear equations. Since the solution of the linear equation set is a common problem encountered in many engineering fields, to solve this common problem, researchers working especially in the field of mathematics and computer have shortened the solution times of the linear equation sets by parallel programming (Intel, 2017; NAG, 2017). In these methods, the main purpose is to shorten the solution time of the total equation set by expressing the large equation set with smaller sets and using the processors in parallel concurrently. As a result, the solution of the equation set in nonlinear analysis can be accelerated by parallel programming. However, in the literature, there is no research to reduce the time cost that occurs with parallel programming if the number of nonlinear elements is large. In the first stage of this study, nonlinear analysis programs in time history are developed with Python and Julia programming languages which are frequently preferred in scientific researches. Nonlinear behavior of the material under the flexure effect is defined by the dimensionless rotation springs at the ends of the truss elements using the lumped plasticity model. The moment-curvature relationship is obtained from the cross-sectional properties of the structural elements. Moment-rotation relations were determined by using the plastic zone length in relation to the moment-curvature relationship. The plastic zone length is considered to be half of the flexural dimensions of the elements. Dimensionless spring elements with undefined moment-rotation relationship are placed on the surfaces of the column and beam elements. The rest of the element zone is modeled with truss elements. Newmark- and unbalanced force correction methods are used for nonlinear analysis in time history. In the second stage, parallel programming is implemented in Python using the tools provided by the "multiprocessing" library during the computation of the internal forces of the nonlinear elements. In the first chapter, the subject, the aim and the scope of the thesis are mentioned. In the second chapter, essential information and literature research are mentioned. Information was given about nonlinear behavior in reinforced concrete structures, modeling nonlinear behavior of reinforced concrete materials, modeling of nonlinear behavior in elements, idealization methods, linear and nonlinear static and dynamic analysis methods, serial and parallel programming, memory structure, natural addition time effect and parallel programming applications in civil engineering. In the third chapter, the methods used in the thesis are mentioned. These are material models, methods used in section analysis, double-linear model, moment-rotation relation, truss and spring element models, linear static analysis method, linear and nonlinear analysis methods in time history, algorithm of nonlinear analysis programs developed in time history with Python and Julia and parallel programming application in Python. Analyzes were made for 5 frame samples of 10, 25, 50, 75 and 100 stories, each with 4 spans. For an earthquake recording, in case of sequential and parallel calculation of the internal forces of nonlinear elements, only the times required for these calculations are obtained and compared. In the fourth chapter, examined structural examples and seismicity are mentioned. Nonlinear analyzes were performed in the time history using Darfield earthquake acceleration records for 5 frame samples of 10, 25, 50, 75 and 100 stories, each with 4 spans. In the fifth chapter, the analysis results are compared and evaluated. In the first stage, Python and Julia programs were used to perform linear and nonlinear analyses in the time history for the 10-storey structure sample. The same analyses were performed with the SAP2000 program and the results were compared. In the second stage, nonlinear analysis in time history was performed with software made by serial and parallel programming in Python for five building models. The parallel and serial calculation times of the internal forces of the nonlinear elements are compared. The sixth chapter contains the results and comments section.

Author

Barış Kasapoğlu

How to Cite

Barış Kasapoğlu (Master Thesis). Applicability of Python and Julia languages to nonlinear seismic analysis of structures and parallel programing, 2017, İstanbul Technical University.

License

Tüm Hakları Saklıdır

This work is shared under the specified license terms.

More theses from İstanbul Technical University