Dyn Anal DSGN PRGM App FEM
Dyn Anal DSGN PRGM App FEM
Jonathan Palczynski
December 2019
This report represents the work of a WPI undergraduate student submitted to the faculty as evidence of a
degree requirement. WPI routinely publishes these reports on its website without editorial or peer review.
For more information about the projects program at WPI, see
https://www.wpi.edu/academics/undergraduate/major-qualifying-project
Abstract
Structures in areas prone to earthquakes present unique design challenges and require adherence
to detailed seismic design procedures. This project investigates the static and dynamic analysis
methods prescribed by ASCE 7-16 for structures in areas prone to earthquakes by completing
the structural design of a triangle-shaped five-story building in San Francisco, CA. Three primary
seismic analysis methods stemming from ASCE 7-16 are presented namely, the equivalent lateral
force analysis method, linear time-history analysis method, and modal response spectrum analysis
method. Additionally, computer programs based on the finite element method were developed in
Fortran and MATLAB to perform the structural analysis for static and dynamic loading condi-
tions.
ii
Acknowledgments
I have had a unique and enjoyable experience working with Dr. Leonard D. Albano over the past
year on this project. Dr. Albano regularly shared his diverse knowledge of structural engineering,
and always listened to and provided meaningful feedback on my many ideas. For these reasons and
more, I must express my sincerest gratitude to him.
I must also thank Khant Win Htet for his contributions to this project. Htet developed the gravity
loads to apply to the structure and gathered the RSMeans cost data for a detailed cost estimate.
iii
Capstone Design Statement
To comply with the accreditation requirements established by the Accreditation Board for Engineer-
ing and Technology (ABET), the Department of Civil and Environmental Engineering at Worcester
Polytechnic Institute (WPI) requires all Major Qualifying Projects (MQP) to include a Capstone
Design Experience that incorporates engineering standards and realistic design constraints. To
fulfill this requirement, this MQP completed the structural design of a triangle-shaped, five-story,
mixed-use office and residential building subject to seismic loads in San Francisco, CA. The project
used ASCE 7-16 seismic analysis methods, namely the equivalent lateral force analysis method,
linear time-history analysis method, and modal response spectrum analysis method. Additionally,
computer programs based on the finite element method were developed in MATLAB to complete
the seismic analysis. Throughout the completion of these items, economic, health and safety, ethi-
cal, constructability, and social design constraints were addressed. These constraints are described
below.
Economic
A cost estimate of the structural design was completed and broken down into individual com-
ponents, such as beams, columns, and connections. Different beam and column sizes, column
arrangements, and flooring systems were considered to determine the most cost-effective design.
Additionally, different seismic force-resisting systems were considered. The recommendation for the
final structure considered the estimated cost.
iv
v
To comply with health and safety constraints, computer programs based on the finite element
method were developed in Fortran and MATLAB to perform the seismic analysis. Software packages
such as Ansys, ETABS, and Autodesk Robot allow users to easily perform complex structural
analysis procedures with little to no understanding as to how they work. Work that was once
performed by engineers with masters and doctoral degrees is now being performed by technicians
and engineers possessing only undergraduate degrees. Because of this, results are often accepted
blindly or interpreted wrongly [9] [26]. Therefore, for the health and safety of the public, engineers
using software to perform seismic analysis must have a fundamental understanding of what they
are doing. Blindly accepting or misinterpreting results may lead to a total structural failure in the
future.
During the project, ETABS could have been used to avoid spending time gaining a basic under-
standing of the seismic analysis methods. However, this would go against the health and safety
constraints, so the project sought to develop a basic understanding of the seismic analysis methods.
An understanding of the methods was gained during the development of structural analysis pro-
grams. During the development of the programs, all steps of the equivalent lateral force analysis,
linear time-history analysis, and modal response spectrum analysis were examined. It also required
examining various types of finite elements, investigating the construction of finite element models,
and other considerations.
Ethical
During the design process, the code of ethics provided by the National Society of Professional
Engineers (NSPE) was followed. The building is in an area subject to seismic loads, and because
of this, design procedures beyond the scope of those required for a traditional static analysis had
to be completed. While this required additional work, and ultimately yielded heightened material
costs, compromising the overall quality and safety of the structure for cost efficiency was avoided.
Constructability
Constructability was prioritized during the development of the building design. Efficient con-
structability included using standard and readily available beam and column sizes, and repetitive
column spacing.
Social
While this project was mainly aimed at designing the structural skeleton of the building, the pro-
posed building is planned to be used for a mixed-use office and residential space. The proposed
vi
building comprises small- and medium-sized office spaces, small shop spaces, and residential apart-
ments for different types of social backgrounds. Column locations accounted for the spatial layout to
ensure that adequate and functional offices and apartments could be implemented into the building.
Sustainability
Sustainable structures are designed to have minimal deterioration from adverse events such as
earthquakes. In the event of deterioration, a sustainable structure can recover quickly; that is,
the structure is highly resilient to deterioration. The structure in this project was designed to
withstand loads during extreme events without undergoing total structural failure. During an
extreme event, the yielding of structural members could occur, and members may need to be
replaced. Replacing members is significantly quicker than replacing an entire structure that has
undergone total structural failure. This scenario attests to the high resilience of the structure to
deterioration.
Professional Licensure Statement
When designing a product, such as an electronic device or living space, it is necessary and essential
to consider the health and safety of the public. Engineers are required to train rigorously to a level
where they are deemed competent enough to design and review a product. For civil engineers,
designing or constructing a building comes with a significant amount of risk, and the necessary
training requires years of academic knowledge and work experience. To mitigate this risk, the
National Society of Professional Engineers (NSPE) specifies a standard for becoming a licensed
professional engineer (PE).
To become a PE, one must finish a four-year engineering program from an accredited university,
pass the Fundamentals of Engineering (FE) exam, complete four years of work experience under a
PE, and pass the PE exam. Once an engineer becomes a PE, they have more authority as well as
responsibility. Because a PE can design, review, and approve projects, following ethical guidelines
is a prime responsibility.
This capstone design project is strictly related to the professional practice of structural engineers.
The project includes structural member sizing, structural analysis, and preliminary design drawings.
The final structural design would need the approval of a professional engineer if the project ever
came to reality.
vii
Contents
Abstract ii
Acknowledgments iii
1 Introduction 1
2 Background 2
2.1 Structural Design and Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 The Finite Element Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 Seismic Analysis Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3.1 Equivalent Lateral Force Analysis . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3.2 Linear Time-History Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3.3 Modal Response Spectrum Analysis . . . . . . . . . . . . . . . . . . . . . . . 8
3 Methodology 13
3.1 Objective 1: Develop Finite Element Programs . . . . . . . . . . . . . . . . . . . . . 13
3.2 Objective 2: Perform Structural Analysis and Design . . . . . . . . . . . . . . . . . . 15
3.3 Objective 3: Prepare Cost Estimate . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
viii
ix
6 Cost Estimate 42
Bibliography 46
A MATLAB Code 49
B Fortran Code 76
D Proposal 92
4.1 Analytical Versus Finite Element Solution for Rotation of a Cantilever Beam . . . . 23
4.2 Analytical Versus Finite Element Solution for Displacement of a Rod . . . . . . . . . 24
4.3 Analytical Versus Finite Element Solution for Stress Distribution in a Rod . . . . . . 25
4.4 Deflection Plot (Scaled 200X) of Space Frame Structure . . . . . . . . . . . . . . . . 26
4.5 SDOF System Subject to Forced Vibration . . . . . . . . . . . . . . . . . . . . . . . 27
4.6 Time-History of Applied Force . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.7 Damped Versus Undamped Response to Forced Vibration . . . . . . . . . . . . . . . 28
4.8 Vertical Displacement of Membrane Elements . . . . . . . . . . . . . . . . . . . . . . 28
4.9 Simply Supported Shell Subject to Point Load . . . . . . . . . . . . . . . . . . . . . 29
x
List of Tables
xi
1. Introduction
Earthquakes are a source of enormous amounts of destruction in various locations all around the
world. The 2010 Haiti earthquake caused approximately 316,000 deaths and destroyed hundreds
of thousands of homes. In the United States, the 1994 Northridge earthquake killed 57 and caused
an estimated $40 billion in damage [29]. To minimize monetary damage and loss of life, structures
in areas prone to earthquakes must withstand them without undergoing total structural failure.
However, this can be an impossible task since future earthquakes cannot be predicted with 100%
certainty. Even so, unique seismic structural analysis methods have been created for these areas.
These analysis methods include the equivalent lateral force analysis method, linear time-history
analysis method, and modal response spectrum analysis method.
The project goal aimed to learn about the aforementioned analysis methods through the design
of a triangle-shaped building for gravity and seismic loads. The project consisted of three areas
culminating in the design of the triangle-shaped building. First, structural analysis computer pro-
grams based on the finite element method for static and dynamic loading conditions were developed
in Fortran and MATLAB. Following this, the structural analysis and design of the building was
completed through the application of the fully developed computer programs. Upon completion
of the structural analysis and design, a cost estimate of the building was prepared using RSMeans
data.
It must be noted, that while the MATLAB code included in this report will produce figures with
identical data to the ones presented herein, the data generated by MATLAB was post-processed
using TikZ and PGF for ease of manipulation and graphical display within this report. TikZ and
PGF are languages for producing vector graphics.
1
2. Background
This chapter presents an overview of the background information needed to understand the sig-
nificant aspects of the project. Section 2.1 explains the overall structural design process and the
engineering standards that were used. Section 2.2 discusses the main components of the finite
element method for structural analysis. Section 2.3 presents the seismic analysis methods used,
namely the equivalent lateral force analysis method, linear time-history analysis method, and modal
response spectrum analysis method.
The American Society of Civil Engineering Specification 7-16 (ASCE 7-16) is a common building
design standard used in the United States. ASCE 7-16 specifies methods for calculating design loads
to apply to a structure. Design loads include gravity loads, live loads, wind loads, seismic loads, and
snow loads, among others. For seismic design, it is vital to follow ASCE 7-16 as it contains updated
specifications regarding seismic loading criteria and seismic design methods. Many locations have
transferred to or have deadlines set to transfer from ASCE 7-10 to ASCE 7-16. Compared to
ASCE 7-10, ASCE 7-16 contains safer, and consequently, stricter updated methods. For example,
the seismic design loads for tall structures with a Site Class D soil classification have an additional
increase of up to 50%. ASCE 7-16 also removed the provision that allowed for an 18% reduction
in seismic design loads for tall structures. Updated ground motion maps and soil coefficients have
also contributed to the increase in seismic design loads.
2
3
Since the finite element method is approximate, an error can be introduced into the solution.
Increasing the number of finite elements and using higher-order shape functions are two ways
for convergence of the finite element solution to the analytical solution (this report considers the
analytical solution to be the continuous solution). Increasing the number of finite elements to
converge upon the exact solution is known as mesh refinement. An example of the second method,
higher-order shape functions, is found in the commercial finite element software package Ansys.
Ansys BEAM188 elements have options for linear, quadratic, and cubic shape functions [21]. A
study on the convergence of the finite element solution to the analytical solution is presented in
Section 4.3. The study was performed to understand how to create a finite element model that
converges to the analytical solution.
The simplest seismic analysis method, the equivalent lateral force analysis, is discussed first. Equiv-
alent lateral force analysis is often used for the preliminary design of a structure, and in many cases,
can be used for the final design provided the structure does not have many irregularities. The end
4
goal is to obtain a set of static design forces to apply to the structure. Design forces are used to gen-
erate the seismic response, i.e., the displacements and stresses that would occur when a structure
is undergoing an earthquake. Design forces are necessary since earthquakes have no direct contact
with structures; the effects felt by a structure are generated by inertia. Thus, the design forces
are equivalent to the inertial forces felt by a structure during an earthquake. Once the earthquake
design forces are found, combination with other ASCE 7-16 loads, such as gravity loads, is possible.
Design forces are calculated as a seismic base shear to distribute along the height and width of
a structure. The seismic base shear is first used to determine story forces to distribute based on
the seismic weight of each story. The story forces are then distributed horizontally at each story
relative to the lateral stiffness of the vertical resisting elements and the diaphragm. The seismic
base shear V is calculated as
V = Cs W (2.1)
where W is the effective seismic weight of the structure and Cs is a seismic coefficient dependent
on the fundamental period of a structure. The effective seismic weight considers the weight of the
structure, along with objects tied to the dynamic properties of the structure. For example, dead
loads within a structure will contribute to the inertial forces felt by the structure and thus are
considered part of the effective seismic weight. On the other hand, live loads are generally not
considered, assumed to be flying through the air during an earthquake and not contributing to
inertial forces felt by the structure. The seismic coefficient is used to account for possible material
non-linearity and to provide improved performance in high-risk structures [11].
Linear time-history analysis is used to examine the dynamic response of a structure over the entirety
of a seismic event. Figures 2.1, 2.2, and 2.3 show the time-history data from the July 5, 2019,
Ridgecrest earthquake. The time interval in Figures 2.1, 2.2, and 2.3 was chosen to display the
peak ground motion. It is worth mentioning how to obtain this data and other strong-motion data
from all around the world. The data presented in Figures 2.1, 2.2, and 2.3 was obtained from
the Center for Engineering Strong Motion Data (CESMD). The CESMD publishes strong-motion
seismic data from monitoring stations all around the world to an open-access database. This data,
in particular, was recorded by the “Christmas Canyon China Lake” ground station. The CESMD
is a collaborative effort between the California Geological Survey, U.S. Geological Survey (USGS),
and the Advanced National Seismic System (ANSS). One feature of the database is the ability
5
0.5
0.4
0.3
0.2
Acceleration (g)
0.1
−0.1
−0.2
−0.3
−0.4
−0.5
24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54
Time (sec)
to search based on the properties of the monitoring station. This is useful since, in addition to
ground monitoring stations, stations are attached to buildings, bridges, dams, and other structures.
Searches can be performed for monitoring stations attached to steel high-rise buildings, wooden low-
rise buildings, and a variety of different combinations. Certain monitoring stations automatically
upload strong-motion data to the database, so it is sometimes possible to obtain the data minutes
to hours after an earthquake has occurred. The raw data for Figures 2.1, 2.2, and 2.3 is located in
Appendix F, as it was also used for the linear time-history analysis presented later.
Once the time-history data is known, the relative displacements, exact relative velocities, and ab-
solute accelerations of a structure at each point in time can be found. It should be established
that this report treats structures as discrete systems, and the following methods apply to discrete
systems. For a structure idealized as a single-degree-of-freedom system subject to a ground accel-
eration üg (t), the relative displacement u(t) of the system, assuming zero initial conditions, can be
solved for with the Duhamel integral:
Z t
−1 p
u (t) = p üg (τ ) e−ζω(t−τ ) sin ω 1 − ζ 2 (t − τ ) dτ, (2.2)
ω 1 − ζ2 0
where ζ is the damping ratio, and ω is the natural frequency. The Duhamel integral can also
be applied to proportionally damped linear multi-degree-of-freedom systems through the modal
superposition method. In the modal superposition method, the equations of motion are decoupled
by expressing them in terms of an alternative coordinate system. Once the equations of motion are
6
40
30
20
Velocity (cm/sec)
10
−10
−20
−30
−40
24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54
Time (sec)
20
10
Displacement (cm)
−10
−20
−30
24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54
Time (sec)
decoupled, a formerly single system with i degrees of freedom can be analyzed as i single-degree-
of-freedom systems, each corresponding to a mode of the structure [24] [13] [30].
While the Duhamel integral and modal superposition method can be used in the case of simple
loading, it is not possible to generate a single mathematical function to define the ground ac-
celeration when the acceleration data resembles that of Figure 2.1. For this reason, a variety of
step-by-step numerical integration methods for direct integration of the equations of motion (to
find the relative displacements, exact relative velocities, and absolute accelerations) exist. These
include the Central Difference, Houbolt, Newmark, and Wilson-θ methods and apply to both single-
and multi-degree-of-freedom systems [35]. Table 2.1 shows the generalized Newmark method for
direct integration of the equations of motion.
γ 1 1
u̇n+1 = u̇n + (1 − γ) (∆t) ün + un+1 − un − (∆t) u̇n − − β ün (∆t) 2
(2.3)
β ∆t 2
1 1
ün+1 = un+1 − un + (∆t) u̇n + 2
− β (∆t) ün (2.4)
β (∆t)2 2
a6 = ∆t(1 − γ) a7 = γ∆t
6. Form the effective stiffness: K̂ = K + a0 M + a1 C
At Each Step
1. Calculate F̂n+1 = M (a0 un + a2 u̇n + a3 ün ) + C (a1 un + a4 u̇n + a5 ün ) + Fn+1
2. Solve K̂un+1 = F̂n+1
3. Calculate u̇n+1 and ün+1 with Eqs. (2.3) and (2.4)
The Newmark method can be used in a seismic analysis problem by defining an effective time-
dependent loading F(t), where
F(t) = −Müg (t) (2.5)
with M as the system mass. Eq. (2.5) is then used in the Newmark method presented in Table
2.1.
8
Once the relative displacements of the structure are found, design forces can be generated to
combine with other ASCE 7-16 load combinations. The concept of design forces is the same as
described in Section 2.3.1, except now design forces that generate specific displacements at various
time-steps can be calculated and applied to the structure. For a single- or multi-degree-of-freedom
system, design forces for any point in time Fd (t) can be generated by
Fd (t) = Ku(t) (2.6)
where K is the system stiffness.
Modal response spectrum analysis is used to estimate the maximum possible response of a structure
during a seismic event and, from this information, generate design forces to apply to the structure.
Because of this, modal response spectrum analysis is only concerned with the largest displacement,
largest velocity, and largest acceleration experienced by a structure during an earthquake. These
are known as the spectral displacement, spectral velocity, and spectral acceleration.
The alternative to a calculated response spectrum is a design response spectrum. A design response
spectrum is formed based on a combination of past earthquakes to better model what a future
earthquake could entail. Compared to a jagged calculated response spectrum, design response
spectrums are often smooth, as shown in Figure 2.5. Figure 2.5 shows a design response spectrum
formed from the ASCE 7-16 procedure. The following is a summary of how earthquake design
forces are calculated once the response spectrum is known.
The first step is to perform modal analysis. Modal analysis examines the response of a structure
when it is in free vibration; that is, neglection of damping effects and excitation by external forces.
9
2.5
ζ=0.02
ζ=0.05
ζ=0.10
2
Spectral Acceleration Sa (g)
1.5
0.5
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5
Undamped Natural Period T (sec)
1
Spectral Acceleration Sa (g)
0.8
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Undamped Natural Period T (sec)
Inducing a structure into free vibration can be done by imparting an arbitrary displacement at
some point on the structure and then releasing it. Once in free vibration, the structure will oscillate
indefinitely. The frequency of this oscillation is known as the natural frequency of the structure.
The deformed shape of the structure when oscillating at this natural frequency is known as its mode
shape; hence, modal analysis [32]. There are infinitely many natural frequencies and mode shapes
of a continuum structure; however, once the continuum structure is discretized into a finite set of
points for analysis, the number of modes computed is equal to the total number of free degrees of
freedom of the system.
As an example, Figure 2.6 shows the first four mode shapes of a Euler-Bernoulli (E-B) cantilever
beam generated using the finite element method. The cantilever beam in Figure 2.6 is discretized
into six elements for a total of seven nodes. Each node has two free degrees of freedom possible (a
translation and rotation). Only the end node is fixed, leading to 12 free degrees of freedom total,
also meaning that the system is only capable of demonstrating 12 modes. For clarification, Figure
2.6 uses the point normalization convention for displaying the mode shapes. The arbitrary modal
displacements are set equal to one at the free end. The deformed shapes of each mode are then
scaled accordingly. The computer program written to generate Figure 2.6 is included in Appendix
A.
1 2 3 4 5 6
1 2 3 4 5 6 7
1.4
Mode 1
1.2
Mode 2
1 Mode 3
Mode 4
0.8
0.6
Mode Shape
0.4
0.2
−0.2
−0.4
−0.6
−0.8
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Distance from Fixed End
Modal analysis starts with the governing equation of free vibration for a single- or multi-degree-of-
11
freedom system:
Mü(t) + Ku(t) = 0 (2.7)
For a structure with i degrees of freedom, at mode i, the displacement u(t)i varies harmonically
with time and can be modeled as a sinusoidal function
where ωi is the angular frequency, ϕi is the phase angle, and Φi is the amplitude of free vibration.
The amplitude of free vibration vector Φi is the mode shape of the structure at a given frequency ωi .
Substitution of Eq. (2.8) and the second time derivative of Eq. (2.8) into Eq. (2.7), and removing
the sin (ωi t + ϕi ) term (since the maximum value is one), reduces Eq. (2.7) to the generalized
eigenvalue problem:
KΦ = ω 2 MΦ (2.9)
Solving the eigenvalue problem amounts to finding the roots (eigenvalues) of the characteristic
polynomial and then calculating the eigenvectors. From this analysis, the eigenvalues are the
squares of the natural frequencies, and the eigenvectors are the corresponding mode shapes. Solving
the eigenvalue problem can be impossible for large systems without the use of numerical methods.
Once Eq. (2.9) is reduced to a standard eigenvalue problem (generally possible by completing
a Cholesky factorization of the mass matrix [27]); the resulting matrix is often symmetric, and
in most cases, a large sparse symmetric matrix. A variety of numerical methods exist to solve
this problem, including the the symmetric Jacobi method, symmetric QR method, and symmetric
Lanczos method [18] [14] [27].
After the modal analysis is complete, the next step is to calculate the modal displacement vector
ui for each mode i, where
ui = Φi Γi (Sd )i (2.10)
with Γi as the modal participation factor, and (Sd )i is the spectral displacement corresponding to
the natural period of mode i found from the response spectrum. Eq. (2.10) is also considered the
process of transforming modal coordinates into physical coordinates. The modal participation factor
Γi measures how strongly a mode contributes to the response of a structure when the structure is
subject to excitation in a specific direction and is calculated with
ΦTi M I
Γi = (2.11)
ΦTi MΦi
where I is the unit vector. The maximum design forces (Fd )i are then calculated for each mode i
with
(Fd )i = Kui (2.12)
Eq. (2.12) generates the largest forces since Eq. (2.10) calculates the largest possible displace-
ments. Since it is unlikely that the maximum modal responses for all of the modes will co-occur, a
12
statistical combination of the modal responses is used to calculate a single modal response. There
are different combination methods, including the square root sum of the squares (SRSS) method
and the complete quadratic combination (CQC) method [23].
As before, once the seismic design forces are calculated, combination with other ASCE 7-16 loads
is possible for application to the structure and member sizing.
3. Methodology
This chapter outlines the objectives of the project and the actions taken to complete each objective.
The objectives were broken down loosely based on a systems engineering approach. The applica-
tion of the systems engineering approach started by completing a hierarchical decomposition of
the project (problem) into a series of objectives (sub-problems) [8] [22]: Objectives 1-3. Upon
completion of this first-order decomposition, a decomposition within each objective was completed
(resulting in second-order decomposed items). By doing this, the project was broken down into a se-
ries of logical steps. Completion of the project required completion of the objectives, and completion
of the objectives required completion of each second-order decomposed item within the objectives.
Further, Objectives 1-3 required sequential completion and each second-order decomposed item
within the objectives required sequential completion.
The second-order decomposed items of each objective are explained in Sections 3.1 and 3.2 Following
Chapter 3, Chapters 4 and 5 correspond to Objectives 1 and 2, and the subsections within each
chapter correspond to the second-order decomposed items wherein the results of the completed
items are presented.
13
14
Approach 1 followed a progression from one-dimensional (1-D) rod and beam elements to two-
dimensional (2-D) membrane and shell elements. Approach 2 followed a sequence from elements
with solely in-plane deformation (rod and membrane) to elements with both in-plane and out-of-
plane deformation (beam and shell). The difficulty of Approach 1 could have manifested with the
addition of rotational degrees of freedom as it increases the complexity of member formulation.
However, Approach 2 placed the elements needed to model and analyze the building structure last.
At a minimum, beam elements were required for a structural model and the structural analysis. Due
to this, Approach 1 was chosen. Resources for developing an understanding of the finite element
method included [20].
2. Define a Structure for the Finite Element Programs and Write Programs:
Once an understanding of finite elements was gained, the finite element programs were developed.
Resources for understanding how to structure and write finite element programs included books
[34] [27] [10] and the documentation for NASTRAN (NASA Structural Analysis). NASTRAN is a
finite element analysis program initially developed for the National Aeronautics and Space Admin-
istration (NASA) in the late 1960s under U.S. government funding for the aerospace industry [3].
Examination of NASTRAN was made possible starting in 2001 when NASA, in collaboration with
the Open Channel Foundation (OSC), began releasing the NASTRAN source code and documen-
tation into the public domain [12]. The NASTRAN Programmer’s Manual [5], NASTRAN User’s
Manual [4], and The NASTRAN Theoretical Manual [6] were used for gaining an understanding of
the structuring of finite element programs.
Parallel to this, a programming language needed to be chosen for coding the finite element pro-
grams. Two options were examined: Fortran and MATLAB. MATLAB is more prominently used
in academia, although an understanding of both these languages was desired, resulting in programs
being written in both Fortran and MATLAB. The final structural analysis was performed using
MATLAB, as this report was completed in an academic setting. Additionally, the various test
cases, figures, and studies included in the report were developed in MATLAB, allowing readers to
verify the results quickly. The Fortran code developed was still included for readers who may be
interested in this and for completeness.
element were chosen. The Timoshenko beam element was chosen for study (i). Timoshenko beam
elements use linear shape functions compared to the Hermitian shape functions of a Euler-Bernoulli
beam element [20]. When comparing the finite element solution to the analytical solution, the
distinction between linear elements and the analytical solution was clear. The rod element was
chosen for the investigation of the higher-order shape functions. It was found that the Lagrangian
polynomial interpolation formula could be used for the simple generation of higher-order shape
functions [17].
loads to the structure, as it would not be possible to do manually. Once the gravity loads had been
defined in the computer model, a linear static analysis using only the gravity loads was performed.
From the member force data, member sizes were assigned following the AISC Specification. Per-
forming the gravity analysis before the seismic analysis reduced the number of iterative steps in
the seismic analysis. Additionally, knowing the change in member sizes from gravity loading to
combined gravity and seismic loading gave quantifiable data for assessing the significance of the
change. For example, this data could be used to compare the cost of the building in a non-seismic
area versus a seismic area.
Upon completion of the body chapters, Chapters 4-6, a closing chapter composed of conclusions
and recommendations, is provided. Limitations of the work are discussed, along with areas for
future work.
4. Structural Analysis Using Finite Elements
This chapter presents the development of MATLAB computer programs based on the finite ele-
ment method to perform the structural analysis for static and dynamic loading conditions. The
purpose of this was to gain insight as to how commercial structural analysis software packages work.
Gaining this insight was necessary for adhering to the health and safety guidelines outlined in the
Capstone Design Statement. The final MATLAB programs were tested by comparing the output
of the program to the output of a structural analysis software package, an analytical solution, or a
textbook solution.
Section 4.1 presents the matrices developed for finite elements that are commonly used in structural
analysis, namely beam and shell elements. Section 4.2 outlines the structure of the MATLAB
computer programs. Section 4.3 presents a study performed on the convergence of the finite element
solution. Section 4.4 presents test cases using the code written for this project. The bulk of work
associated with Chapter 4 is the computer code located in Appendices A and B. The chapter follows
a logical progression from the individual element matrices to the complete static and dynamic
analysis of multi-element systems.
where [M ] is the mass matrix, [C] is the damping matrix, and [K] is the stiffness matrix.
Beam elements, including truss elements, are commonly used to model the structural frame of
a building. For determining (beam) member forces, it is acceptable to model a structure only
composed of beam elements as long as loads from items such as floors and walls are considered. The
17
18
beam element matrices were formed for beam elements based on Euler-Bernoulli (E-B) beam theory.
Matrices were formed for beam elements in three-dimensional (3-D) space since the structure was
analyzed in 3-D. Frames represented in 3-D space are also known as space frames. Beam elements
formed for 3-D space can also be used to analyze frames in 2-D (plane frames) as long as the
extraneous degrees of freedom are correctly restrained.
A 3-D beam element can be subject to axial, bending, and torsional loads. In 3-D, the element
has six degrees of freedom at each node: three translations in the x, y, and z directions, and three
rotations about the x, y, and z axes. For a beam element i, the 3-D stiffness matrix ki (as derived
in Appendix C) is given by
.. .. ..
EA
0 0 . 0 0 0 . −EA
0 0 . 0 0 0
L L
.. .. ..
12EIz
. 0 6EIz
. −12EIz
. 6EIz
L3
0 0 L2
0 L3
0 0 0 L2
.. .. ..
. 0 . .
12EIy −6EIy −12EIy −6EIy
L3 L2
0 0 0 L3
0 L2
0
· · · · · · ··· · ··· ··· ··· · ··· ··· ··· · ··· ··· ···
.. GJ . .. −GJ
0 .. 0
. L . L
0 0 0 0 0
.. . ..
0 .. 0
. . 0
4EIy 6EIy 2EIy
L 0 L2 L 0
.. 4EIz .. ..
. . 0 −6EIz
. 0 2EIz
L L2
0 0 L
ki = · · · · · · ··· · ··· ··· ··· · ··· ··· ··· · ··· ··· ··· (4.2)
.. .. EA ..
. . L . 0
0 0 0 0
.. .. ..
. . 12EIz
. 0 −6EIz
L3
0 0 L2
.. .. ..
. . . 0
12EIy 6EIy
L3 L2
0
· · · · · · ··· · ··· ··· ··· · ··· ··· ··· · ··· ··· ···
.. .. .. GJ
. . . L
0 0
.. .. ..
. . .
4EIy
Sym. L 0
.. .. ..
. . . 4EIz
L
where E is the modulus of elasticity, A is the cross-sectional area, L is the beam length, Iz is the
moment of inertia about the z-axis, Iy is the moment of inertia about the y-axis, G is the modulus
of rigidity, and J is the torsional constant. The formulation of the 3-D beam element stiffness
matrix is contained in the ebbeamstiff3D.m function.
19
The technique used to formulate the mass matrix was considered as it is an essential aspect of
dynamic analysis. The mass matrix can differ depending on the technique used to distribute mass
at the nodes of an element. Consistent mass matrices and lumped mass matrices are two common
ways to form the mass matrix. A consistent mass matrix is formed using the same shape functions
as for the stiffness matrix. A lumped mass matrix is formed by assuming the masses are tied to
individual degrees of freedom, eliminating cross-coupling, and leading to a diagonal mass matrix
[33] [19]. For this project, a consistent mass matrix was formed. For a beam element i, the 3-D
consistent mass matrix mi is given by
. .. 1 ..
0 ..
1
3 0 0 0 0 . 6 0 0 . 0 0 0
. .. ..
0 ..
13 11L
. 0 9
. −13L
35 0 0 210 70 0 0 0 420
13 .. .. ..
35 . . 0 .
−11L 9 13L
0 210 0 0 70 0 420 0
· · · · · · · · · · ··· ··· ··· · ··· ··· ··· · ··· ··· ···
.. . ..
0 ..
. .
Iy +Iz Iy +Iz
3A 0 0 0 0 6A 0 0
.. . ..
0 ..
. L2 −13L
. −L2
105 0 0 420 0 140 0
.. L2 .. ..
. 105 .
13L
. −L2
0 420 0 0 0 140
i
m = ρAL · · · · · · · · · · ··· ··· ··· · ··· ··· ··· · ··· ··· ··· (4.3)
.. .. 1 ..
. . 3 0 .
0 0 0 0
.. .. ..
. . 13
. −11L
35 0 0 0 210
.. .. ..
. . 13
. 11L
35 0 210 0
· · · · · · · · · · ··· ··· ··· · ··· ··· ··· · ··· ··· ···
.. .. ..
. . .
Iy +Iz
3A 0 0
.. .. ..
. . . L2
Sym. 105 0
.. .. ..
. . . L2
105
where ρ is the density. The formulation of the 3-D beam element mass matrix is contained in the
ebbeamstiff3D.m function.
This project considered classical damping, also known as Rayleigh damping, where the damping
matrix is proportional to the mass and stiffness matrices. Upon the formation of the mass and
stiffness matrices, the damping matrix [C] was found with
where α and β are the proportional damping coefficients, and [M ] and [K] are the mass and stiffness
matrices [25] [2] [7] [1].
The mass and stiffness matrices in Eqs. (4.2) and (4.3) are presented for beams with rigid ends.
If beams have end releases, new mass and stiffness matrices need to be developed. Because the
Rayleigh damping matrix is developed from the mass and stiffness matrices, the formulation remains
the same. As an example, a beam with a pinned connection at its right end will not be capable
of developing a moment at this end connection, but it may still develop a rotation. As a result,
additional mass and stiffness matrices are required to model non-rigid end conditions. The code
in ebbeamstiff3D.m and ebbeammass3D.m includes the 3-D mass and 3-D stiffness matrices for
beams with spherical hinges. Spherical hinges release moments about the x, y, and z axes of a
beam element. A variety of other matrices can be formed depending on the desired type of end
release. Both ebbeamstiff3D.m and ebbeammass3D.m require an element-type property input.
The code allows for four end conditions: rigid, rigid-pinned, pinned-rigid, and pinned-pinned.
Additionally, the element matrices in Eqs. (4.2) and (4.3) are in local coordinates, and must be
transformed into global coordinates. This transformation is found at the ends of ebbeamstiff3D.m
and ebbeammass3D.m, occurring after the complete formulation of the element matrices in local
coordinates.
While shell elements were not used in the final model of the building, code and examples were still
developed for shells to gain an understanding of their behavior and simulation. Since shell elements
are useful for modeling items such as floors and shear walls, modeling with shell elements provides
an accurate representation of the stiffness, mass, and damping of a structure, whereas modeling
a structure solely made up of beam elements does not. Shell elements have membrane resistance
and bending (plate) resistance. The general shell element formed in this project did not have a
drilling stiffness, although it is possible to add an artificial stiffness to avoid singular matrices.
When performing an analysis with shells, as can be seen in the later test cases, it is possible to
constrain the in-plane rotational degree of freedom for every shell element. This prevented singular
matrices.
A shell element can be formed by combining a membrane element with a plate element [20]. In this
project, a membrane element was first tested and then combined with a plate element to create a
shell element. The membrane element has two translational degrees of freedom at each node, while
the shell element has six degrees of freedom at each node like the beam element. Q4membranestiff.m
contains the stiffness matrix formulation for a membrane element, and Q4shellstiff.m contains the
stiffness matrix formulation for a shell element. Shell elements can also be used as membrane
elements as long as the appropriate degrees of freedom are constrained. The shell elements in
this project were based on the Reissner-Mindlin shell theory, which is thought of as an extension
21
of the Timoshenko beam theory to shells [20]. The shell elements were chosen to be four-node
quadrilateral elements, although there are many more types of elements for consideration.
where [B] is the strain-displacement matrix, and [D] is the stress-strain matrix. In the case of a
square element, it is easy to evaluate Eq. (4.5) analytically because the shape functions are simple.
However, for a generalized quadrilateral element, the shape functions can become complicated and
Eq. (4.5) becomes difficult to integrate. Because of this, Eq. (4.5) is converted to a local coordinate
system in parametric coordinates. By doing this, Eq. (4.5) can be integrated numerically using
Gauss-Legendre quadrature. Using Gauss-Legendre quadrature, the stiffness matrix is computed
with [27]
nip
(4.6)
i X
k = W det [J] [B]T [D] [B]
i=1
where nip is the number of integration points, W is the integration point weight, and det [J] is
the determinant of the Jacobian matrix, also known as the Jacobian. Q4membranestiff.m and
Q4shellstiff.m both contain the stiffness matrix formulation for a four-node quadrilateral element
of arbitrary shape. For simplicity, the code found in Q4membranestiff.m and Q4shellstiff.m sets
the default number of integration points to four and contains the coordinates and weights within
the function.
Function Description
ebbeammass3D.m Returns the mass matrix in global coordinates for a two-
node E-B beam element in 3-D with rigid or pinned ends.
ebbeamstiff3D.m Returns the stiffness matrix in global coordinates for a two-
node E-B beam element in 3-D with rigid or pinned ends.
formK.m Returns the system stiffness matrix assembled from the free
degrees of freedom.
formM.m Returns the system mass matrix assembled from the free
degrees of freedom.
Q4membranestiff.m Returns the stiffness matrix for a four-node quadrilateral
membrane element.
Q4mesh.m Generates a rectangular finite element mesh of four-node
quadrilateral elements.
Q4shellmass.m Returns the mass matrix for a four-node quadrilateral shell
element.
Q4shellstiff.m Returns the stiffness matrix for a four-node quadrilateral
shell element.
Q4steering.m Returns the steering vector for a four-node quadrilateral el-
ement and the x, y, and z coordinates of the four nodes. The
steering vector contains the status of the degrees of freedom
of each node of an element for the assembly of the system
matrices.
steering3D.m Returns the steering vector for a 3-D beam element.
23
·10−4
0
Analytical
−0.2 1 Element
2 Elements
−0.4 3 Elements
−0.6
Rotation (rad)
−0.8
−1
−1.2
−1.4
−1.6
−1.8
−2
0 1 2 3 4 5 6 7 8 9 10
Length (ft)
Figure 4.1: Analytical Versus Finite Element Solution for Rotation of a Cantilever Beam
The first method presented for convergence of the finite element solution to the analytical solution
is through continuous discretization of the finite element model, also known as mesh refinement.
An example of this is provided in Figure 4.1 by comparing the analytical solution to the finite
element solution for the rotation of a Timoshenko cantilever beam subject to a point load as the
number of finite elements increase.
The analytical solution was found from the differential equations of a Timoshenko beam. The
rotation plots for the finite element solution were calculated by first solving for the nodal rotations
and then interpolating the rotations across the element using the element shape functions. The
interpolation function used for each element was
θ(x) = N1 θ1 + N2 θ2 (4.7)
24
·10−2
0
Analytical
−1 Linear Element
Quadratic Element
−2
−3
Displacement (in)
−4
−5
−6
−7
−8
−9
0 1 2 3 4 5 6 7 8 9 10
Length (in)
Figure 4.2: Analytical Versus Finite Element Solution for Displacement of a Rod
where θ1 and θ2 are the nodal rotations, and N1 and N2 are the shape functions given by
x
N1 = 1 − (4.8)
L
x
N2 = (4.9)
L
The shape functions for a simple two-node Timoshenko beam element are linear; hence, the finite
element solution plots in Figure 4.1 are linear. Figure 4.1 shows that as the number of finite
elements increase, the finite element solution converges to the analytical solution. In the case of
a single point load, the finite element solution for rotation can converge quickly to the analytical
solution. However, as the complexity of the loading increases, the finite element solution will not
be able to converge as quickly due to the use of linear shape functions.
The preceding example illustrated the downfall of linear shape functions in the case a member is
subject to a complex load. An alternative to increasing the number of finite elements with linear
shape functions is to form elements with higher-order (quadratic, cubic, etc.) shape functions.
Examples of this are provided in Figures 4.2 and 4.3 by comparing the analytical solution to the
finite element solution for the displacement and stress distribution in a rod subject to a distributed
load as the degree of the shape function increases.
A simple two-node rod element uses the same linear shape functions as described for the two-
node Timoshenko beam element. However, it is possible to formulate a single rod element with
more than two nodes through the use of higher-order shape functions, subsequently giving a better
25
10
Analytical
0 Linear Element
Quadratic Element
−10
−20
−30
Stress (ksi)
−40
−50
−60
−70
−80
−90
0 1 2 3 4 5 6 7 8 9 10
Length (in)
Figure 4.3: Analytical Versus Finite Element Solution for Stress Distribution in a Rod
approximation across the element. For a single rod element with i nodes, the displacement is
interpolated across the element as
u(x) = N1 u1 + N2 u2 + N3 u3 + · · · + Ni ui (4.10)
where Ni and ui are the shape function and nodal displacement of the ith node. The shape
functions of order n-1 for an element with n nodes can be generated by the Lagrangian polynomial
interpolation formula [17],
n
x − xj
(4.11)
Y
Ni =
xi − xj
j=1(j6=i)
where xi and xj are the node locations. The analytical solutions for the displacement and stress
distribution were found from the differential equations of a rod.
It can be seen in Figure 4.2 that the quadratic element can closely match the analytical solution
while the linear element cannot. This changes in Figure 4.3 for the comparison of the stress distribu-
tion. The finite element solution becomes significantly inaccurate because the originally quadratic
element is now interpolating the quadratic analytical solution with a linear function. These exam-
ples show that finite element models must be prepared carefully to assure the convergence to the
analytical solution.
The application of higher-order shape functions is not limited to beam elements. It is also possible
to formulate eight-node quadrilateral elements and so on.
26
Function Description
TestCase1.m Analysis of a space frame.
TestCase2.m Analysis of cantilever beam subject to a time-varying point
load.
TestCase3.m Analysis of a beam composed of membrane elements subject
to a point load.
TestCase4.m Analysis of shell elements subject to a point load.
Test Case 1:
The first test case was the analysis of a space frame. This program made use of the steering3D.m,
ebbeamstiff3d.m, and formK.m functions. The main program file that ties these all together is
TestCase1.m. This solution was compared with the solution in [27]. Figure 4.4 shows the scaled
deflection plot of the space frame structure.
Undeflected
6 Deflected
0
0 0
1 1
2 2
3 3
4 4
5 5
6 6
F (t)
Test Case 2:
The next test case was the analysis of a single-degree-of-freedom system subject to a time-varying
point load using the Newmark integration method. The single-degree-of-freedom system is shown
in Figure 4.5. The time-history of the applied force is shown in Figure 4.6. This program made use
of the steering3D.m, ebbeamstiff3D.m, ebbeammass3D.m, formK.m, and formM.m functions. The
main program file that ties all these together is TestCase2.m. The Newmark integration method
presented in the main program file follows the same algorithm presented in Table 2.1.
45
40
35
30
F (t) (kips)
25
20
15
10
0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4
Time (sec)
Figure 4.7 shows that as the force becomes constant at 20 kips, the response of the damped beam
eventually becomes a deformed steady-state position, and the undamped beam oscillates about the
deformed shape. Once the applied force drops to zero, the response of the damped beam diminishes
to the undeformed shape, and the undamped beam oscillates about the undeformed shape. This
solution was compared to analytical solutions found in [13].
28
·10−4
3.5
Undamped
3 Rayleigh Damping
2.5
Free End Deflection (in)
2
1.5
0.5
−0.5
−1
−1.5
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4
Time (sec)
Test Case 3:
The third test was subjecting a beam made up of membrane elements to a point load, as shown
in Figure 4.8. This program made use of the Q4steering.m, Q4membranestiff.m, and formK.m
functions. The main program file that ties all these together is TestCase3.m. The solution was
compared to the output of a finite element model made in Ansys.
3 0
−5 · 10−2
2
−0.1
1 −0.15
0 −0.2
−0.25
−1
−0.3
−2 −0.35
−0.4
−3
−0.45
−4
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34
·10−2
·10−2
2
2
1.5
1
1
0
−10 0 0.5
−8 2
−6 4
−4 6
−2 0 8
2 10
4 12
6 14 0
8 16
10 18
Test Case 4:
The fourth test investigated the response of a simply supported shell element subjected to a center
point load. This program made use of the Q4mesh.m, Q4steering.m, Q4shellstiff.m, and formK.m
functions. All of the previous test cases included the finite element model data within the main
program file. This test case differs by calling an automatic mesh generator. The automatic mesh
generator creates a rectangular finite element mesh made up of four-node quadrilateral elements. As
seen in TestCase3.m, entering the nodal coordinates and element connectivity is very tedious even
for a small number of elements. Because of this, automatic mesh generators are often employed.
Figure 4.9 shows the deformed plot of the shell subject to a point load. The output of this program
was compared to the analytical solution for a shell element found in [31].
In summary, the results from Test Cases 1 through 4 attest to the validity and capability of the
code developed for use in this project.
5. Structural Analysis and Design
This chapter presents the structural analysis and design of the triangle-shaped building. The
building geometry is shown in Section 5.1, followed by the creation of the structural model in
Section 5.2. The structural analysis and design followed an iterative process. First, the building
was sized for gravity loads. The gravity loads and preliminary member sizing is presented in Section
5.3. After the initial sizing, the seismic analysis began. The seismic analysis was an iterative process
because all methods included the weight of the structure, which changed with changing member
sizes. As the weight changed, the dynamic properties of the structure changed, and the analyses
needed to be rerun until convergence of the member sizes. The seismic analysis is located in Section
5.4.
The building made use of moment-resisting connections to resist lateral loads. For simplicity, all
girder-to-column connections were considered rigid. All joist-to-girder connections were considered
pinned and not able to transfer a torsional moment to the girders. A moment-resisting frame was
chosen because it is one of the lateral-force resisting frame systems prescribed in ASCE 7-16.
30
31
80
70
60
50
40
30 200
190
180
20
170
160
10 150
140
130
0 120
0
10 110
20
30 100
40 90
50
60 80
70
80 70
90 60
100
110 50
120
130 40
140 30
150
160 20
170
180 10
190
200 0
Appendix G contains the node numbering and node locations. Appendix H contains the element
connectivity, element numbering, and element type. The element connectivity is the two end nodes
of a member. The element type depends on the end connections of the beam. The choices are
rigid-rigid, rigid-pinned, pinned-rigid, or pinned-pinned. For example, a joist to girder connection
is pinned, while the intermesh of a joist is rigid.
35
80
70
60
50
40
30 200
190
180
20
170
160
10 150
140
130
0 120
0
10 110
20
30 100
40 90
50
60 80
70
80 70
90 60
100
110 50
120
130 40
140 30
150
160 20
170
180 10
190
200 0
80
75
70
65
60
55
50
45
40
35
30
25
20
15
10
5 200
180
160
0 140
0 10 120
20 30 100
40 50 60 70 80
80 90 60
100 110 120 130 40
140 150 160 170 20
180 190 200 0
80
70
60
50 0
20
40
40
60
30
80
20 100
120
10
140
160
0
0 5 10 15 20 25 30 35 40 45 50 55 60 65 180
70 75 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 155 160 165 170 175 180 185 190 195 200 200
The gravity load resisting system gathers and transfers the floor live loads, roof live loads, the
superimposed dead load, and the self-weight of the structural members to the foundation elements.
The superimposed dead loads in this building include the exterior wall loads, MEP loads, and
flooring loads. The structural system was designed so that loads were uniformly distributed to
the joists first, then transferred as girders as point loads, which then transferred the loads to the
columns and the footings.
Chapters 3 and 4 of ASCE 7-16 were referenced when considering the gravity load system of the
structure. The dead load was divided into the superimposed dead load and the self-weight of the
structural members. Since this project mainly focused on the structural design of the building,
the superimposed dead loads were assumed a specified combined value, as opposed to individually
calculating them. From the building design, the first and second floors serve as office space, and the
remaining floors serve as condominium apartments. This was important during the determination
of the live loads because the office space and condominium apartments have different uniform live
loads, according to ASCE 7-15. Roof live loads were also obtained from ASCE 7-15. The summary
of the gravity loading types and corresponding weights are shown in Table 5.1 [15].
37
The initial member sizes were sized following AISC 7 using ASTM A992 W-shape beams based on
the loads in Table 5.1. Table 5.2 shows the initial member sizes. The initial member sizes were
computed to provide a basis for the seismic analysis.The initial member sizes were sized following
AISC 7 [28] using ASTM A992 W-shape beams based on the loads in Table 5.1. Load and Resistance
Factor Design (LRFD) was used for the design of steel members. Joists and girders were assumed
to be continuously braced due to the use of a concrete slab. For joists and girders, the strength
limit state was examined first, and the serviceability limit state for deflection was examined second.
Columns were designed for combined axial and bending forces. Table 5.2 shows the initial member
sizes. The initial member sizes were computed to provide a basis for the seismic analysis.
The iterative equivalent lateral force analysis procedure is outlined in Figure 5.8. Based on the
initial member sizing, the seismic base shear was calculated. The seismic base shear was then
combined with the other ASCE 7-16 loads through the use of appropriate load factors and applied
to the structure. After finding the member forces, the members were resized. Because the seismic
weight increased after resizing the members, the seismic base shear needed to be calculated again
and applied to the structure with the other ASCE 7-16 loads. This was an iterative process until
convergence of the member sizes. Table 5.3 shows the parameters used for the initial equivalent
lateral force analysis.
Size Members
Convergence of no
Update Structural Model
Members?
yes
Completed Sizing Members
Factor Value
0.2 Sec Spectral Accel, Ss 1.5g
1 Sec Spectral Accel, S1 0.6g
Response Modification, R 8
Overstrength Factor, Ω 3
Deflection Amplification, Cd 5.5
Occupancy Importance, I 1.25
Site Class D
39
The linear time-history analysis was performed based on the July 5th, 2019 Ridgecrest earthquake
data. The July 5th, 2019 earthquake was chosen because it occurred recently and was located
near San Francisco, CA. Additionally, July 5th, 2019, earthquake was strong enough to produce
meaningful results, compared to low magnitude earthquakes that occur daily. The design forces
were chosen based on the most significant ground acceleration experienced by the structure.
Figure 5.9 shows the iterative linear time-history analysis procedure that was followed. The struc-
ture was analyzed at 15050 acceleration points at .02 sec time steps. The raw data is located in
Appendix F. This is the same data that is presented in Figures 2.1, 2.2, and 2.3. Using this data
was not very realistic because it was from a recent small earthquake. The required member sizes
decreased from the member sizes determined for the equivalent lateral force analysis.
Step-By-Step Integration
Find Displacement at
Desired Time T
Size Members
Convergence of no
Update Structural Model
Members?
yes
Completed Sizing Members
The modal response spectrum analysis was the last analysis performed, and its results were chosen
for the final design. The equivalent lateral force analysis method is not allowed for the irregular
shaped building designed in this project, and thus the final design could not be based on it. However,
the equivalent lateral force analysis method was used to gain initial insight as to the response of
a structure during an earthquake. For a linear time-history analysis, ASCE 7-16 specifies the
structure at a minimum must be subject to three pairs of orthogonal ground motion data. In this
project, due to the computational effort required for each time-history analysis, the structure was
subjected to the single July 5th, 2019 Ridgecrest earthquake in each orthogonal direction. The
goal of the project was still completed because an understanding of the linear time-history analysis
method was gained. The preceding reasons ultimately led to modal response spectrum analysis
being chosen as the final design method. Figure 5.10 shows the iterative process that was followed.
Modal Analysis
Size Members
Convergence of no
Update Structural Model
Members?
yes
Completed Sizing Members
The analysis included the calculation of six modes, ultimately yielding 90.35% modal mass par-
ticipation in the x-direction and 91.23% modal mass participation in the orthogonal y-direction,
both above the ASCE 7-16 required combined modal mass participation of 90% in each orthogonal
41
direction. Table 5.4 shows the final modal properties of the structure. While the structure is large,
the exceptionally high stiffnesses of the final member sizes caused a short fundamental period of
.749 sec. The final member sizes were calculated based on the modal properties in Table 5.4. The
final member sizes calculated for the structure are shown in Table 5.5. The members were sized
based on the considerations noted in Section 5.3.
Table 5.5: Final Member Sizes
To begin, a comparison must first be made between the building designed for gravity loads versus
the building designed for combined gravity and seismic loads. The total amount of steel for the
building designed for just gravity loads is approximately 427 tons. The total amount of steel for
the building designed for combined gravity and seismic loads is approximately 759.5 tons. This
difference highlights the significantly more building materials needed for a building designed for
combined gravity and seismic loads versus a building designed for solely gravity loads.
The final building cost was scaled by a time-value index to ensure the cost reflected 2019 prices.
The time value index was calculated as: 1.0275(present year−2015) . The material and installation
cost estimate was calculated using the cost per length of columns and cost per floor area for joists
and girders. The material and installation cost of the superstructure is approximately $4.2 million
and 24.15% of the total building cost, excluding additional contractor and architect fees. Table 6.1
shows the cost estimate breakdown of the structure in terms of cost per square foot and includes
the total cost estimate of each category [15]. Table 6.2 shows the additional fees estimate, including
the scaled 2019 cost using the time-value index scaling factor [15]. Appendix E contains the cost
estimate data used.
42
43
7.1 Conclusions
Objective 1 resulted in the completed finite element code for performing structural analysis of beam
and shell elements for static and dynamic loading conditions. The code included also demonstrated
post-processing capabilities. An area of the significance of using this code for structural analysis
is that there are no restrictions. Student and demo versions of software often include model size
restrictions, limiting the size of a structure that can be analyzed. Using self-written or open-source
finite element code allows for any size model to be analyzed. The second area of significance includes
the knowledge gained when writing finite element code for the application to commercial structural
analysis software. The knowledge gained while writing finite element code will yield fewer errors
and fewer erroneous results when using commercial structural analysis software. Lastly, the code
developed for this project can serve as an aid to students who wish to write structural analysis
programs based on the finite element method. While there are no other MQPs to benchmark this
work, Chapter 4 provides test cases for verification of the code.
Objective 2 resulted in the completed structural design of a 3D building frame capable of withstand-
ing large seismic loads. The dynamic analysis methods is an area of importance and significance
for the structural analysis and design work. A review of MQP reports over the past six years indi-
cates that the dynamic analysis methods included in Objective 2, the linear time-history analysis
method and the modal response spectrum analysis method, have not been explored. This report
can provide entry-level knowledge for other students who wish to explore these dynamic analysis
methods. Additionally, compliance with the ASCE 7-16 dynamic analysis methods requires adher-
ing to detailed code provisions in ASCE 7-16. Following engineering code provisions is an essential
component of the Capstone Design Statement.
44
45
Objective 3 produced a cost estimate breakdown of the structure. Due to time constraints, the cost
estimate breakdown was limited.
7.2 Recommendations
The completed finite element code could be expanded upon in many ways. The first area to build
upon could be the examination of beam and shell connections for dynamic analysis. Determining
a method for modeling combined beam and shell elements would provide a better representation
of the structure. A second area that would prove useful is a graphical user interface or a simple
geometry editor for placing beams, drawing two-dimensional elements, etc. Ultimately, for this
project, only simple finite element code is needed for the examination of framed structures. For
someone wanting to do a similar project, it would be beneficial to have an understanding of the
finite element method and the ability to write finite element code before the start of the project.
During the time-history analysis, only a single time-history response was examined. As mentioned in
Chapter 5, to comply with ASCE 7-16, the structure needs to be subjected to multiple time-history
responses. A project could examine only the linear time-history analysis method by subjecting the
structure to a multitude of responses to comply with ASCE 7-16. Similar to the development of the
finite element code, someone wanting to do a project on dynamic analysis methods would benefit
significantly by having prior knowledge of structural dynamics.
Lastly, the cost estimate could be broken down further. Additionally, further examination of the
time-value index may provide more accurate results. While the time-value index considered the
long-term trend, building materials are not ordered years in advance. In 2018, various producer
price indices for steel products spiked at the start of the China-United States trade war. The effect
of this on building costs could be examined.
Bibliography
[1] S. Adhikari and S. A. Phani. “Rayleigh’s Classical Damping Revisited”. In: International
Conference on Civil Engineering in the New Millennium: Opportunities and Challenges. Jan.
2007.
[2] Sondipon Adhikari. “Damping Models for Structural Vibration”. Doctoral dissertation. Uni-
versity of Cambridge, Sept. 2000.
[3] National Aeronautics and Space Administration. NASA STRuctrual ANalysis (NASTRAN).
url: https://software.nasa.gov/software/LAR-16804-GS.
[4] National Aeronautics and Space Administration. NASTRAN User’s Manual. NASA Head-
quarters. United States, 1986.
[5] National Aeronautics and Space Administration. The NASTRAN Programmer’s Manual.
NASA Headquarters. United States, 1972.
[6] National Aeronautics and Space Administration. The NASTRAN Theoretical Manual. NASA
Headquarters. United States, 1981.
[7] Folake Akinpelu. “The Response of Viscously Damped Euler-Bernoulli Beam to Uniform
Partially Distributed Moving Loads”. In: Applied Mathematics 3.3 (Mar. 2012), pp. 199–204.
[8] Leonard D. Albano. “An Axiomatic Approach To Performance-Based Design”. Doctoral the-
sis. Massachusetts Institute of Technology, Feb. 1992.
[9] Klaus-Jurgen Bathe. “What can go wrong in FEA?” In: Mechanical Engineering 120 (5 May
1998), pp. 63–65.
46
47
[11] American Society of Civil Engineers. Minimum Design Loads and Associated Criteria for
Buildings and Other Structures. American Society of Civil Engineers, 2017.
[12] Open Channel Foundation. NTTC, OSC Celebrate Space Agency’s Birthday, Launch ”NASA
CLASSICS” Software Apps to Commercial Markets. url: https://web.archive.org/web/
20160516224353/http:/www.openchannelsoftware.com/NASA_1.html.
[13] Jerry H. Ginsberg. Mechanical and Structural Vibrations: Theory and Applications. John
Wiley & Sons, 2001.
[14] Gene H. Golub and Charles F. Van Loan. Matrix Computations. 4th ed. The John Hopkins
University Press, 2013.
[15] Khant Win Htet. Wind Load Design of a Triangular Shaped Building Using Finite Element
Analysis. Major Qualifying Project. Worcester Polytechnic Institute, Mar. 2019.
[16] American Concrete Institute. Manual of Concrete Practice 2017. American Concrete Insti-
tute, 2017.
[17] H. Jeffreys and B.S. Jeffreys. Methods of Mathematical Physics. 3rd ed. Cambridge University
Press, 1956.
[18] Ramaseshan Kannan. “Numerical Linear Algebra Problems in Structural Analysis”. Doctoral
dissertation. University of Manchester, 2014.
[19] Ki-ook Kim. “A review of mass matrices for eigenproblems”. In: Computers & Structures 46
(6 Mar. 1993), pp. 1041–1048.
[20] Ioannis Koutromanos. Fundamentals of Finite Element Analysis: Linear Finite Element Anal-
ysis. John Wiley & Sons, 2018.
[21] Huei-Huang Lee. Finite Element Simulations with ANSYS Workbench 16. SDC Publications,
2015.
[22] Brian W. Mar and Richard N. Palmer. “Does Civil Engineering Need System Engineering?”
In: Journal of Professional Issues in Engineering 115 (1 Jan. 1989), pp. 45–52.
[23] Richard Morante et al. “Evaluation of Modal Combination Methods for Seismic Response
Spectrum Analysis”. In: Transactions of the 15th International Conference on Structural
Mechanics in Reactor Technology. Aug. 1999.
48
[24] Izuru Okawa, Yuji Ishiyama, and Makoto Watabe. Fundamentals of Structural Dynamics.
Lecture Note. International Institute of Seismology and Earthquake Engineering (IISEE),
2007.
[25] Deborah F. Pilkey. “Computation of a Damping Matrix for Finite Element Model Updating”.
Doctoral dissertation. Virginia Polytechnic Institute and State University, Apr. 1998.
[26] Ivatury S. Raju, Jr. Norman F. Knight, and Kunigal N. Shivakumar. “Some Observations on
the Current Status of Performing Finite Element Analyses”. In: 56th AIAA/ASCE/AHS/ASC
Structures, Structural Dynamics, and Materials Conference. Jan. 2015.
[27] I.M. Smith, D.V. Griffiths, and L. Margetts. Programming the Finite Element Method. 5th ed.
John Wiley & Sons, 2014.
[28] American Institute of Steel Construction. Steel Construction Manual. 15th ed. American
Institute of Steel Construction, 2017.
[29] Haluk Sucuoglu and Sinan Akkar. Basic Earthquake Engineering: From Seismology to Anal-
ysis and Design. Springer, 2014.
[30] Joseph W. Tedesco, William G. McDougal, and C. Allen Ross. Structural Dynamics: Theory
and Applications. Addison Wesley Longman, 1999.
[31] S. Timoshenko and S. Woinowsky-Krieger. Theory of Plates and Shells. 2nd ed. McGraw-Hill,
1959.
[32] S. Timoshenko and D. H. Young. Advanced Dynamics. 1st ed. McGraw-Hill, 1948.
[33] P. Tong, T.H.H. Pian, and L.L. Bucciarblli. “Mode shapes and frequencies by finite element
method using consistent and lumped masses”. In: Computers & Structures 1 (4 Dec. 1971),
pp. 623–638.
[34] Robert E. White. Computational Mathematics: Models, Methods, and Analysis with MATLAB
and MPI. 2nd ed. CRC Press, 2016.
[35] Walter Wunderlich and Walter D. Pilkey. Mechanics of Structures: Variational and Compu-
tational Methods. 2nd ed. CRC Press, 2003.
A. MATLAB Code
49
50
36 meg(1 ,2)=22∗L ;
37 meg(1 ,3)=54;
38 meg(1,4)=−13∗L ;
39 meg(2 ,2)=4∗(L^ 2 ) ;
40 meg(2 ,3)=13∗L ;
41 meg(3,4)=−22∗L ;
42 meg(2 ,4)= −3∗(L^ 2 ) ;
43 meg(2 ,1)=meg ( 1 , 2 ) ;
44 meg(3 ,1)=meg ( 1 , 3 ) ;
45 meg(3 ,2)=meg ( 2 , 3 ) ;
46 meg(3 ,3)=meg ( 1 , 1 ) ;
47 meg(4 ,1)=meg ( 1 , 4 ) ;
48 meg(4 ,2)=meg ( 2 , 4 ) ;
49 meg(4 ,3)=meg ( 3 , 4 ) ;
50 meg(4 ,4)=meg ( 2 , 2 ) ;
51 meg=((rhoA∗L)/420)∗meg ;
52 K=z e r o s (n ) ; % i n i t i a l i z e system s t i f f n e s s matrix
53 M=z e r o s (n ) ; % i n i t i a l i z e system mass matrix
54 f o r i =1: n e l % form system matrices
55 node1=connec ( i , 1 ) ; % node 1 o f element i
56 node2=connec ( i , 2 ) ; % node 2 o f element i
57 g=[ nf ( node1 , 1 ) ; % s t e e r i n g v e c t o r o f element i
58 nf ( node1 , 2 ) ;
59 nf ( node2 , 1 ) ;
60 nf ( node2 , 2 ) ] ;
61 f o r i e l =1: e l d o f
62 i f g ( i e l )~=0
63 f o r j e l =1: e l d o f
64 i f g ( j e l )~=0
65 K( g ( i e l ) , g ( j e l ))=K( g ( i e l ) , g ( j e l ))+keg ( i e l , j e l ) ;
66 M( g ( i e l ) , g ( j e l ))=M( g ( i e l ) , g ( j e l ))+meg( i e l , j e l ) ;
67 end
68 end
69 end
70 end
71 end
72 [ eigvec , e i g v a l ]= e i g (K,M) ; % s o l v e e i g e n v a l u e problem from Eq . ( 2 . 9 )
73 omega=s o r t ( s q r t ( diag ( e i g v a l ) ) ) ; % natural frequencies
74 phi=z e r o s (n ) ; % i n i t i a l i z e mode shape matrix
75 f o r i =1:n % point n o r m a l i z a t i o n o f mode shapes
76 phi ( : , i )=e i g v e c ( : , i )/ e i g v e c ( 1 1 , i ) ;
77 end
78 f o r i =1:4 % p l o t t i n g mode shapes shown i n Figure 2 . 6
79 u (1 ,1)=0;
80 u (1 ,2)=0;
81 u(2 ,1)= phi ( 1 , i ) ;
82 u(2 ,2)= phi ( 2 , i ) ;
83 u(3 ,1)= phi ( 3 , i ) ;
84 u(3 ,2)= phi ( 4 , i ) ;
85 u(4 ,1)= phi ( 5 , i ) ;
86 u(4 ,2)= phi ( 6 , i ) ;
87 u(5 ,1)= phi ( 7 , i ) ;
88 u(5 ,2)= phi ( 8 , i ) ;
89 u(6 ,1)= phi ( 9 , i ) ;
90 u(6 ,2)= phi ( 1 0 , i ) ;
91 u(7 ,1)= phi ( 1 1 , i ) ;
92 u(7 ,2)= phi ( 1 2 , i ) ;
93 f o r i e l =1: n e l
52
94 node1=connec ( i e l , 1 ) ;
95 node2=connec ( i e l , 2 ) ;
96 x1=coord ( node1 , 1 ) ;
97 x2=coord ( node2 , 1 ) ;
98 u e l (1 ,1)=u( node1 , 1 ) ; % node 1 v e r t i c a l displacement o f element i
99 u e l (2 ,1)=u( node1 , 2 ) ; % node 1 r o t a t i o n o f element i
100 u e l (3 ,1)=u( node2 , 1 ) ; % node 2 v e r t i c a l displacement o f element i
101 u e l (4 ,1)=u( node2 , 2 ) ; % node 2 r o t a t i o n o f element i
102 uy=N∗ u e l ; % modal v e r t i c a l displacement f i e l d o f element i
103 x=l i n s p a c e ( 0 , 1 / 6 , 2 0 ) ;
104 uy=subs ( uy , x ) ;
105 xnew=l i n s p a c e ( x1 , x2 , 2 0 ) ;
106 C={[0 0.4470 0 . 7 4 1 0 ] , [ 0 . 8 5 0 0 0.3250 0 . 0 9 8 0 ] . . . % c o l o r o f mode shape p l o t s
107 , [ 0 . 9 2 9 0 0.6940 0 . 1 2 5 0 ] , [ 0 . 4 9 4 0 0.1840 0 . 5 5 6 0 ] } ;
108 p l o t (xnew , uy , ’ c o l o r ’ ,C{ i } , ’ Linewidth ’ , 3 )
109 hold on
110 end
111 end
112 ax=gca ;
113 ax . XAxisLocation=’ o r i g i n ’ ;
114 ax . YAxisLocation=’ o r i g i n ’ ;
Black-Box Functions
ebbeammass3D.m
1 f u n c t i o n [ meg]=ebbeammass3D( i , elconnec , elprop , ncoord )
2
3 n1=el co n ne c ( i , 1 ) ; % node 1 o f element i
4 n2=el co n ne c ( i , 2 ) ; % node 2 o f element i
5 x1=ncoord ( n1 , 1 ) ; % x−coord o f node 1
6 y1=ncoord ( n1 , 2 ) ; % y−coord o f node 1
7 z1=ncoord ( n1 , 3 ) ; % z−coord o f node 1
8 x2=ncoord ( n2 , 1 ) ; % x−coord o f node 2
9 y2=ncoord ( n2 , 2 ) ; % y−coord o f node 2
10 z2=ncoord ( n2 , 3 ) ; % z−coord o f node 2
11 L=s q r t ( ( ( x2−x1 )^2)+(( y2−y1 )^2)+(( z2−z1 ) ^ 2 ) ) ; % l e n g t h o f element i
12 A=el p r o p ( i , 2 ) ; % area o f element i
13 I z=el p r o p ( i , 5 ) ; % moment o f i n e r t i a about the z−a x i s o f element i
14 Iy=el p r o p ( i , 6 ) ; % moment o f i n e r t i a about the y−a x i s o f element i
15 gamma=el p r o p ( i , 7 ) ; % t r a n s f o r m a t i o n angle ( i n d e g r e e s ) o f element i
16 gamma=gamma∗ p i /180; % convert to r a d i a n s
17 e l t y p e=el p r o p ( i , 8 ) ; % element type o f element i
18 rho=el p r o p ( i , 9 ) ; % d e n s i t y o f element i
19 i f e l t y p e==1 % element type 1 i s r i g i d −r i g i d
20 s1 =1/3; % c o n s t a n t s f o r mass matrix
21 s2 =1/6;
22 s3 =13/35;
23 s4 =(11∗L) / ( 2 1 0 ) ;
24 s5 =(9/70);
25 s6 =(13∗L) / ( 4 2 0 ) ;
26 s7=(Iy+I z )/(3∗A) ;
27 s8=(Iy+I z )/(6∗A) ;
28 s9=(L^ 2 ) / ( 1 0 5 ) ;
29 s10=(L^ 2 ) / ( 1 4 0 ) ;
53
30 s11=−s4 ;
31 s12=−s6 ;
32 s13=−s10 ;
33 mel=rho ∗A∗L∗ [ s1 0 0 0 0 0 s2 0 0 0 0 0; % mass matrix i n l o c a l coord
34 0 s3 0 0 0 s4 0 s5 0 0 0 s12 ;
35 0 0 s3 0 s11 0 0 0 s5 0 s6 0 ;
36 0 0 0 s7 0 0 0 0 0 s8 0 0;
37 0 0 s11 0 s9 0 0 0 s12 0 s13 0 ;
38 0 s4 0 0 0 s9 0 s6 0 0 0 s13 ;
39 s2 0 0 0 0 0 s1 0 0 0 0 0;
40 0 s5 0 0 0 s6 0 s3 0 0 0 s11 ;
41 0 0 s5 0 s12 0 0 0 s3 0 s4 0 ;
42 0 0 0 s8 0 0 0 0 0 s7 0 0;
43 0 0 s6 0 s13 0 0 0 s4 0 s9 0 ;
44 0 s12 0 0 0 s13 0 s11 0 0 0 s9 ] ;
45 e l s e i f e l t y p e==2 % element type 2 i s xyz r o t a t i o n r e l e a s e d pinned−r i g i d
46 s1 =1/3; % c o n s t a n t s f o r mass matrix
47 s2 =1/6;
48 s3 =1/12;
49 s4=−1/24;
50 s5 =13/48;
51 s6=L/120;
52 s7=−L/120;
53 s8 =(7∗L) / 2 4 0 ;
54 s9=(−7∗L) / 2 4 0 ;
55 s10=(Iy+I z )/(4∗A) ;
56 s11=(L^2)/240;
57 mel=rho ∗A∗L∗ [ s1 0 0 0 0 0 s2 0 0 0 0 0;
58 0 s3 0 0 0 0 0 s4 0 0 0 s6 ;
59 0 0 s3 0 0 0 0 0 s4 0 s7 0;
60 0 0 0 0 0 0 0 0 0 0 0 0;
61 0 0 0 0 0 0 0 0 0 0 0 0;
62 0 0 0 0 0 0 0 0 0 0 0 0;
63 s2 0 0 0 0 0 s1 0 0 0 0 0;
64 0 s4 0 0 0 0 0 s5 0 0 0 s9 ;
65 0 0 s4 0 0 0 0 0 s5 0 s8 0;
66 0 0 0 0 0 0 0 0 0 s10 0 0;
67 0 0 s7 0 0 0 0 0 s8 0 s11 0 ;
68 0 s6 0 0 0 0 0 s9 0 0 0 s11 ] ;
69 e l s e i f e l t y p e==3 % element type 3 i s x , y , z r o t a t i o n r e l e a s e d r i g i d −pinned
70 s1 =1/3; % c o n s t a n t s f o r mass matrix
71 s2 =1/6;
72 s3 =1/12;
73 s4=−1/24;
74 s5 =13/48;
75 s6=L/120;
76 s7=−L/120;
77 s8 =(7∗L) / 2 4 0 ;
78 s9=(−7∗L) / 2 4 0 ;
79 s10=(Iy+I z )/(4∗A) ;
80 s11=(L^2)/240;
81 mel=rho ∗A∗L∗ [ s1 0 0 0 0 0 s2 0 0 0 0 0 ;
82 0 s5 0 0 0 s8 0 s4 0 0 0 0 ;
83 0 0 s5 0 s9 0 0 0 s4 0 0 0 ;
84 0 0 0 s10 0 0 0 0 0 0 0 0;
85 0 0 s9 0 s11 0 0 0 s6 0 0 0 ;
86 0 s8 0 0 0 s11 0 s7 0 0 0 0 ;
87 s2 0 0 0 0 0 s1 0 0 0 0 0 ;
54
88 0 s4 0 0 0 s7 0 s3 0 0 0 0 ;
89 0 0 s4 0 s6 0 0 0 s3 0 0 0 ;
90 0 0 0 0 0 0 0 0 0 0 0 0;
91 0 0 0 0 0 0 0 0 0 0 0 0;
92 0 0 0 0 0 0 0 0 0 0 0 0];
93 e l s e i f e l t y p e==4 % element type 4 i s x , y , z r o t a t i o n r e l e a s e d pinned−pinned
94 s1 =1/3; % c o n s t a n t s f o r mass matrix
95 s2 =1/6;
96 s3 =1/15;
97 s4 =1/60;
98 mel=rho ∗A∗L∗ [ s1 0 0 0 0 0 s2 0 0 0 0 0;
99 0 s3 0 0 0 0 0 s4 0 0 0 0;
100 0 0 s3 0 0 0 0 0 s4 0 0 0;
101 0 0 0 0 0 0 0 0 0 0 0 0;
102 0 0 0 0 0 0 0 0 0 0 0 0;
103 0 0 0 0 0 0 0 0 0 0 0 0;
104 s2 0 0 0 0 0 s1 0 0 0 0 0;
105 0 s4 0 0 0 0 0 s3 0 0 0 0;
106 0 0 s4 0 0 0 0 0 s3 0 0 0;
107 0 0 0 0 0 0 0 0 0 0 0 0;
108 0 0 0 0 0 0 0 0 0 0 0 0;
109 0 0 0 0 0 0 0 0 0 0 0 0];
110
111 end
112 sg=s i n (gamma ) ; % c o n s t a n t s f o r member r o t a t i o n matrix
113 cg=cos (gamma ) ;
114 r=z e r o s ( 3 ) ; % i n i t i a l i z e member r o t a t i o n matrix
115 i f x1==x2 && z1==z2 % i f element i s p a r a l l e l to g l o b a l y−a x i s
116 r (1 ,2)=1;
117 r (2,1)=− cg ;
118 r (2 ,3)= sg ;
119 r (3 ,1)= sg ;
120 r (3 ,3)= cg ;
121 else % i f element i s not p a r a l l e l to g l o b a l y−a x i s
122 Cx=(x2−x1 )/L ; % direction cosines
123 Cy=(y2−y1 )/L ;
124 Cz=(z2−z1 )/L ;
125 den=s q r t ( (Cx^2)+(Cz ^ 2 ) ) ;
126 r (1 ,1)=Cx ;
127 r (1 ,2)=Cy ;
128 r (1 ,3)=Cz ;
129 r (2,1)=( −Cx∗Cy∗cg−Cz∗ sg )/ den ;
130 r (2 ,2)= den∗cg ;
131 r (2,3)=( −Cy∗Cz∗cg+Cx∗ sg )/ den ;
132 r (3 ,1)=(Cx∗Cy∗sg−Cz∗cg )/ den ;
133 r (3,2)=−den∗ sg ;
134 r (3 ,3)=(Cy∗Cz∗ sg+Cx∗cg )/ den ;
135 end
136 T=z e r o s ( s i z e ( mel ) ) ; % i n i t i a l i z e t r a n s f o r m a t i o n matrix
137 T( 1 : 3 , 1 : 3 ) = r ;
138 T( 4 : 6 , 4 : 6 ) = r ;
139 T( 7 : 9 , 7 : 9 ) = r ;
140 T( 1 0 : 1 2 , 1 0 : 1 2 ) = r ;
141 meg=T’ ∗ mel∗T; % transform mass matrix to g l o b a l c o o r d i n a t e s
142
143 end % end f u n c t i o n
55
ebbeamstiff3D.m
1 f u n c t i o n [ keg]= ebbeamstiff3D ( i , elconnec , elprop , ncoord )
2
3 n1=el co n ne c ( i , 1 ) ; % node 1 o f element i
4 n2=el co n ne c ( i , 2 ) ; % node 2 o f element i
5 x1=ncoord ( n1 , 1 ) ; % x−coord o f node 1
6 y1=ncoord ( n1 , 2 ) ; % y−coord o f node 1
7 z1=ncoord ( n1 , 3 ) ; % z−coord o f node 1
8 x2=ncoord ( n2 , 1 ) ; % x−coord o f node 2
9 y2=ncoord ( n2 , 2 ) ; % y−coord o f node 2
10 z2=ncoord ( n2 , 3 ) ; % z−coord o f node 2
11 L=s q r t ( ( ( x2−x1 )^2)+(( y2−y1 )^2)+(( z2−z1 ) ^ 2 ) ) ; % l e n g t h o f element i
12 E=el p r o p ( i , 1 ) ; % modulus o f e l a s t i c i t y o f element i
13 A=el p r o p ( i , 2 ) ; % area o f element i
14 G=el p r o p ( i , 3 ) ; % modulus o f r i g i d i t y o f element i
15 J=el p r o p ( i , 4 ) ; % t o r s i o n a l constant o f element i
16 I z=el p r o p ( i , 5 ) ; % moment o f i n e r t i a about the z−a x i s o f element i
17 Iy=el p r o p ( i , 6 ) ; % moment o f i n e r t i a about the y−a x i s o f element i
18 gamma=el p r o p ( i , 7 ) ; % t r a n s f o r m a t i o n angle ( i n d e g r e e s ) o f element i
19 gamma=gamma∗ p i /180; % convert to r a d i a n s
20 e l t y p e=el p r o p ( i , 8 ) ; % element type o f element i
21 i f e l t y p e==1 % element type 1 i s r i g i d −r i g i d
22 s1=(E∗A) / (L ) ; % c o n s t a n t s f o r s t i f f n e s s matrix
23 s2 =(12∗E∗ I z ) / (L^ 3 ) ;
24 s3 =(6∗E∗ I z ) / (L^ 2 ) ;
25 s4 =(12∗E∗ Iy ) / (L^ 3 ) ;
26 s5 =(6∗E∗ Iy ) / (L^ 2 ) ;
27 s6=(G∗J ) / (L ) ;
28 s7 =(4∗E∗ Iy ) / (L ) ;
29 s8 =(2∗E∗ Iy ) / (L ) ;
30 s9 =(4∗E∗ I z ) / (L ) ;
31 s10=(2∗E∗ I z ) / (L ) ;
32 s11=−s1 ;
33 s12=−s2 ;
34 s13=−s4 ;
35 s14=−s5 ;
36 s15=−s6 ;
37 s16=−s3 ;
38 k e l =[ s1 0 0 0 0 0 s11 0 0 0 0 0; % s t i f f n e s s matrix i n l o c a l coord
39 0 s2 0 0 0 s3 0 s12 0 0 0 s3 ;
40 0 0 s4 0 s14 0 0 0 s13 0 s14 0 ;
41 0 0 0 s6 0 0 0 0 0 s15 0 0;
42 0 0 s14 0 s7 0 0 0 s5 0 s8 0 ;
43 0 s3 0 0 0 s9 0 s16 0 0 0 s10 ;
44 s11 0 0 0 0 0 s1 0 0 0 0 0;
45 0 s12 0 0 0 −s3 0 s2 0 0 0 s16 ;
46 0 0 s13 0 s5 0 0 0 s4 0 s5 0 ;
47 0 0 0 s15 0 0 0 0 0 s6 0 0;
48 0 0 s14 0 s8 0 0 0 s5 0 s7 0 ;
49 0 s3 0 0 0 s10 0 s16 0 0 0 s9 ] ;
50 e l s e i f e l t y p e==2 % element type 2 i s x , y , z r o t a t i o n r e l e a s e d pinned−r i g i d
51 s1=(E∗A) / (L ) ; % c o n s t a n t s f o r s t i f f n e s s matrix
52 s2 =(3∗E∗ I z ) / (L^ 3 ) ;
53 s3 =(3∗E∗ I z ) / (L^ 2 ) ;
54 s4 =(3∗E∗ I z ) / (L ) ;
55 s5 =(3∗E∗ Iy ) / (L^ 3 ) ;
56 s6 =(3∗E∗ Iy ) / (L^ 2 ) ;
56
57 s7 =(3∗E∗ Iy ) / (L ) ;
58 s8=−s1 ;
59 s9=−s2 ;
60 s10=−s3 ;
61 s11=−s5 ;
62 s12=−s6 ;
63 k e l =[ s1 0 0 0 0 0 s8 0 0 0 0 0; % s t i f f n e s s matrix i n l o c a l coord
64 0 s2 0 0 0 0 0 s9 0 0 0 s3 ;
65 0 0 s5 0 0 0 0 0 s11 0 s12 0 ;
66 0 0 0 0 0 0 0 0 0 0 0 0;
67 0 0 0 0 0 0 0 0 0 0 0 0;
68 0 0 0 0 0 0 0 0 0 0 0 0;
69 s8 0 0 0 0 0 s1 0 0 0 0 0;
70 0 s9 0 0 0 0 0 s2 0 0 0 s10 ;
71 0 0 s11 0 0 0 0 0 s5 0 s6 0 ;
72 0 0 0 0 0 0 0 0 0 0 0 0;
73 0 0 s12 0 0 0 0 0 s6 0 s7 0 ;
74 0 s3 0 0 0 0 0 s10 0 0 0 s4 ] ;
75 e l s e i f e l t y p e==3 % element type 3 i s x , y , z r o t a t i o n r e l e a s e d r i g i d −pinned
76 s1=(E∗A) / (L ) ; % c o n s t a n t s f o r s t i f f n e s s matrix
77 s2 =(3∗E∗ I z ) / (L^ 3 ) ;
78 s3 =(3∗E∗ I z ) / (L^ 2 ) ;
79 s4 =(3∗E∗ I z ) / (L ) ;
80 s5 =(3∗E∗ Iy ) / (L^ 3 ) ;
81 s6 =(3∗E∗ Iy ) / (L^ 2 ) ;
82 s7 =(3∗E∗ Iy ) / (L ) ;
83 s8=−s1 ;
84 s9=−s2 ;
85 s10=−s3 ;
86 s11=−s5 ;
87 s12=−s6 ;
88 k e l =[ s1 0 0 0 0 0 s8 0 0 0 0 0; % s t i f f n e s s matrix i n l o c a l coord
89 0 s2 0 0 0 s3 0 s9 0 0 0 0;
90 0 0 s5 0 s12 0 0 0 s11 0 0 0;
91 0 0 0 0 0 0 0 0 0 0 0 0;
92 0 0 s12 0 s7 0 0 0 s6 0 0 0;
93 0 s3 0 0 0 s4 0 s10 0 0 0 0;
94 s8 0 0 0 0 0 s1 0 0 0 0 0;
95 0 s9 0 0 0 s10 0 s2 0 0 0 0;
96 0 0 s11 0 s6 0 0 0 s5 0 0 0;
97 0 0 0 0 0 0 0 0 0 0 0 0;
98 0 0 0 0 0 0 0 0 0 0 0 0;
99 0 0 0 0 0 0 0 0 0 0 0 0];
100 e l s e i f e l t y p e==4 % element type 4 i s x , y , z r e l e a s e d pinned−pinned
101 s1=(E∗A) / (L ) ; % c o n s t a n t s f o r s t i f f n e s s matrix
102 s2=−s1 ;
103 k e l =[ s1 0 0 0 0 0 s2 0 0 0 0 0; % s t i f f n e s s matrix i n l o c a l coord
104 0 0 0 0 0 0 0 0 0 0 0 0;
105 0 0 0 0 0 0 0 0 0 0 0 0;
106 0 0 0 0 0 0 0 0 0 0 0 0;
107 0 0 0 0 0 0 0 0 0 0 0 0;
108 0 0 0 0 0 0 0 0 0 0 0 0;
109 s2 0 0 0 0 0 s1 0 0 0 0 0;
110 0 0 0 0 0 0 0 0 0 0 0 0;
111 0 0 0 0 0 0 0 0 0 0 0 0;
112 0 0 0 0 0 0 0 0 0 0 0 0;
113 0 0 0 0 0 0 0 0 0 0 0 0;
114 0 0 0 0 0 0 0 0 0 0 0 0];
57
115 end
116 Cx=(x2−x1 )/L ; % direction cosines
117 Cy=(y2−y1 )/L ;
118 Cz=(z2−z1 )/L ;
119 sg=s i n (gamma ) ; % c o n s t a n t s f o r member r o t a t i o n matrix
120 cg=cos (gamma ) ;
121 den=s q r t ( (Cx^2)+(Cz ^ 2 ) ) ;
122 r=z e r o s ( 3 ) ; % i n i t i a l i z e member r o t a t i o n matrix
123 i f x1==x2 && z1==z2 % i f element i s p a r a l l e l to g l o b a l y−a x i s
124 r (1 ,2)=1;
125 r (2,1)=−Cy∗cg ;
126 r (2 ,3)= sg ;
127 r (3 ,1)=Cy∗ sg ;
128 r (3 ,3)= cg ;
129 else % i f element i s not p a r a l l e l to g l o b a l y−a x i s
130 r (1 ,1)=Cx ;
131 r (1 ,2)=Cy ;
132 r (1 ,3)=Cz ;
133 r (2,1)=( −Cx∗Cy∗cg−Cz∗ sg )/ den ;
134 r (2 ,2)= den∗cg ;
135 r (2,3)=( −Cy∗Cz∗cg+Cx∗ sg )/ den ;
136 r (3 ,1)=(Cx∗Cy∗sg−Cz∗cg )/ den ;
137 r (3,2)=−den∗ sg ;
138 r (3 ,3)=(Cy∗Cz∗ sg+Cx∗cg )/ den ;
139 end
140 T=z e r o s ( s i z e ( k e l ) ) ; % i n i t i a l i z e t r a n s f o r m a t i o n matrix
141 T( 1 : 3 , 1 : 3 ) = r ;
142 T( 4 : 6 , 4 : 6 ) = r ;
143 T( 7 : 9 , 7 : 9 ) = r ;
144 T( 1 0 : 1 2 , 1 0 : 1 2 ) = r ;
145 keg=t r a n s p o s e (T)∗ k e l ∗T; % transform s t i f f n e s s matrix to g l o b a l c o o r d i n a t e s
146
147 end
formK.m
1 f u n c t i o n [K]=formK(K, keg , g , e l d o f )
2
3 f o r i =1: e l d o f
4 i f g ( i )~=0 % i f DOF i s not c o n s t r a i n e d
5 f o r j =1: e l d o f
6 i f g ( j )~=0 % i f DOF i s not c o n s t r a i n e d
7 K( g ( i ) , g ( j ))=K( g ( i ) , g ( j ))+keg ( i , j ) ; % add component t i e d to f r e e DOF
8 end
9 end
10 end
11 end
12
13 end
formM.m
1 f u n c t i o n [M]=formM(M, meg , g , e l d o f )
2
58
3 f o r i =1: e l d o f
4 i f g ( i )~=0 % i f DOF i s not c o n s t r a i n e d
5 f o r j =1: e l d o f
6 i f g ( j )~=0 % i f DOF i s not c o n s t r a i n e d
7 M( g ( i ) , g ( j ))=M( g ( i ) , g ( j ))+meg( i , j ) ; % add component t i e d to f r e e DOF
8 end
9 end
10 end
11 end
12
13 end
Q4membranestiff.m
1 f u n c t i o n [ keg]=Q4membranestiff ( i , coord , prop , e l d o f )
2 E=prop ( i , 1 ) ; % modulus o f e l a s t i c i t y o f element i
3 v=prop ( i , 2 ) ; % p o i s s o n r a t i o o f element i
4 th=prop ( i , 3 ) ; % t h i c k n e s s o f element i
5 nip =4; % number o f i n t e g r a t i o n p o i n t s
6 Dm=(E∗th )/(1−v ^ 2 ) ;
7 s1=(1−v ) / 2 ;
8 deem=Dm∗ [ 1 v 0 ; v 1 0 ; 0 0 s1 ] ; % membrane s t r e s s −s t r a i n matrix
9 gauss=[−1/ s q r t ( 3 ) −1/s q r t ( 3 ) 1 ; % c o o r d i n a t e s and weights f o r Gauss−Legendre i n t e g r a t i o n
10 1/ s q r t ( 3 ) −1/s q r t ( 3 ) 1 ;
11 1/ s q r t ( 3 ) 1/ s q r t ( 3 ) 1 ;
12 −1/s q r t ( 3 ) 1/ s q r t ( 3 ) 1 ] ;
13 keg=z e r o s ( e l d o f ) ; % i n i t i a l i z e s t i f f n e s s matrix
14 f o r j =1: nip % s t i f f n e s s matrix formulation from Eq . ( 5 . 6 )
15 eta=gauss ( j , 1 ) ; % c o o r d i n a t e s f o r each i n t e g r a t i o n point
16 x i=gauss ( j , 2 ) ;
17 w=gauss ( j , 3 ) ; % i n t e g r a t i o n point weight
18 der =0.25∗[−(1− eta ) (1− eta ) (1+ eta ) −(1+eta ) ; % d e r i v a t i v e s o f shape f u n c t i o n s
19 −(1−x i ) −(1+x i ) (1+ x i ) (1− x i ) ] ;
20 j a c=der ∗ coord ; % j a c o b i a n matrix
21 d e r i v=j a c \ der ; % der i n g l o b a l c o o r d i n a t e s
22 beem=z e r o s ( 3 , 8 ) ; % i n i t i a l i z e membrane s t r a i n −displacement matrix
23 beem(1 ,1)= d e r i v ( 1 , 1 ) ;
24 beem(1 ,3)= d e r i v ( 1 , 2 ) ;
25 beem(1 ,5)= d e r i v ( 1 , 3 ) ;
26 beem(1 ,7)= d e r i v ( 1 , 4 ) ;
27 beem(2 ,2)= d e r i v ( 2 , 1 ) ;
28 beem(2 ,4)= d e r i v ( 2 , 2 ) ;
29 beem(2 ,6)= d e r i v ( 2 , 3 ) ;
30 beem(2 ,8)= d e r i v ( 2 , 4 ) ;
31 beem(3 ,1)= d e r i v ( 2 , 1 ) ;
32 beem(3 ,2)= d e r i v ( 1 , 1 ) ;
33 beem(3 ,3)= d e r i v ( 2 , 2 ) ;
34 beem(3 ,4)= d e r i v ( 1 , 2 ) ;
35 beem(3 ,5)= d e r i v ( 2 , 3 ) ;
36 beem(3 ,6)= d e r i v ( 1 , 3 ) ;
37 beem(3 ,7)= d e r i v ( 2 , 4 ) ;
38 beem(3 ,8)= d e r i v ( 1 , 4 ) ;
39 keg=keg+det ( j a c )∗ th∗w∗beem ’ ∗ deem∗beem ; % s t i f f n e s s matrix
40 end
41
42 end
59
Q4mesh.m
1 f u n c t i o n [ ncoord , connec , nnd , n e l ]=Q4mesh( nelx , nely , dhx , dhy , x o r i g i n , y o r i g i n )
2
3 nnd=0;
4 n e l =0;
5 f o r i = 1 : nelx
6 f o r j =1: nely
7 nel = nel + 1;
8 n1=j +(i −1)∗( nely +1);
9 ncoord ( n1 ,1)=( i −1)∗dhx−x o r i g i n ;
10 ncoord ( n1 ,2)=( j −1)∗dhy−y o r i g i n ;
11 n2=j+i ∗( nely +1);
12 ncoord ( n2 ,1)= i ∗dhx−x o r i g i n ;
13 ncoord ( n2 ,2)=( j −1)∗dhy−y o r i g i n ;
14 n4=n1+1;
15 ncoord ( n4 ,1)=( i −1)∗dhx−x o r i g i n ;
16 ncoord ( n4 ,2)= j ∗dhy−y o r i g i n ;
17 n3=n2+1;
18 ncoord ( n3 ,1)= i ∗dhx−x o r i g i n ;
19 ncoord ( n3 ,2)= j ∗dhy−y o r i g i n ;
20 connec ( nel ,1)=n1 ;
21 connec ( nel ,2)=n2 ;
22 connec ( nel ,3)=n3 ;
23 connec ( nel ,4)=n4 ;
24 nnd=n3 ;
25 end
26 end
27 f o r i =1:nnd
28 ncoord ( i , 3 ) = 0 ;
29 end
30
31 end
Q4shellmass.m
1 f u n c t i o n [ meg]= Q4shellmass ( i , coord , prop , e l d o f )
2 rho=prop ( i , 4 ) ;
3 nip =4; % number o f i n t e g r a t i o n p o i n t s
4 xcoord=coord ( : , 1 ) ;
5 ycoord=coord ( : , 2 ) ;
6 xycoord=[xcoord ycoord ] ;
7 gauss=[−1/ s q r t ( 3 ) −1/s q r t ( 3 ) 1 ;
8 1/ s q r t ( 3 ) −1/s q r t ( 3 ) 1 ;
9 1/ s q r t ( 3 ) 1/ s q r t ( 3 ) 1 ;
10 −1/s q r t ( 3 ) 1/ s q r t ( 3 ) 1 ] ;
11 meg=z e r o s ( e l d o f ) ;
12 f o r j =1: nip
13 eta=gauss ( j , 1 ) ; % c o o r d i n a t e s f o r each i n t e g r a t i o n point
14 x i=gauss ( j , 2 ) ;
15 w=gauss ( j , 3 ) ; % i n t e g r a t i o n point weight
16 fun =0.25∗[(1 − xi−eta+x i ∗ eta ) ; % shape f u n c t i o n s f o r each i n t e g r a t i o n point
17 (1+xi−eta−x i ∗ eta ) ;
18 (1+ x i+eta+x i ∗ eta ) ;
19 (1− x i+eta−x i ∗ eta ) ] ;
20 der =0.25∗[−(1− eta ) (1− eta ) (1+ eta ) −(1+eta ) ; % d e r i v a t i v e s o f shape f u n c t i o n s
60
Q4shellstiff.m
1 f u n c t i o n [ keg]= Q 4 s h e l l s t i f f ( i , coord , prop , e l d o f )
2 E=prop ( i , 1 ) ; % modulus o f e l a s t i c i t y o f element i
3 v=prop ( i , 2 ) ; % p o i s s o n r a t i o o f element i
4 th=prop ( i , 3 ) ; % t h i c k n e s s o f element i
5 x1=coord ( 1 , 1 ) ;
6 x2=coord ( 2 , 1 ) ;
7 x3=coord ( 3 , 1 ) ;
8 x4=coord ( 4 , 1 ) ;
9 y1=coord ( 1 , 2 ) ;
10 y2=coord ( 2 , 2 ) ;
11 y3=coord ( 3 , 2 ) ;
12 y4=coord ( 4 , 2 ) ;
13 z1=coord ( 1 , 3 ) ;
14 z2=coord ( 2 , 3 ) ;
15 z3=coord ( 3 , 3 ) ;
16 z4=coord ( 4 , 3 ) ;
17 L13=s q r t ( ( ( x3−x1 )^2)+(( y3−y1 )^2)+(( z3−z1 ) ^ 2 ) ) ; % begin t r a n s f o r m a t i o n f o r g l o b a l to l o c a l coord
18 L24=s q r t ( ( ( x4−x2 )^2)+(( y4−y2 )^2)+(( z4−z2 ) ^ 2 ) ) ;
19 v1=(1/L13 ) ∗ [ x3−x1 ; y3−y1 ; z3−z1 ] ;
20 v2=(1/L24 ) ∗ [ x4−x2 ; y4−y2 ; z4−z2 ] ;
21 n=( c r o s s ( v1 , v2 ) ) / ( norm( c r o s s ( v1 , v2 ) ) ) ;
22 t1=(v1−v2 ) / ( norm( v1−v2 ) ) ;
61
81 N2=fun ( 2 , 1 ) ;
82 N3=fun ( 3 , 1 ) ;
83 N4=fun ( 4 , 1 ) ;
84 beem=z e r o s ( 3 , 2 4 ) ; % i n i t i a l i z e membrane s t r a i n −displacement matrix
85 beem(1 ,1)=dn1dx ; % could use loop f o r s t r a i n −displacement matrix
86 beem(1 ,7)=dn2dx ; % f u l l matrix i s shown f o r e a s i e r v e r i f i c a t i o n
87 beem(1 ,13)=dn3dx ;
88 beem(1 ,19)=dn4dx ;
89 beem(2 ,2)=dn1dy ;
90 beem(2 ,8)=dn2dy ;
91 beem(2 ,14)=dn3dy ;
92 beem(2 ,20)=dn4dy ;
93 beem(3 ,1)=dn1dy ;
94 beem(3 ,7)=dn2dy ;
95 beem(3 ,13)=dn3dy ;
96 beem(3 ,19)=dn4dy ;
97 beem(3 ,2)=dn1dx ;
98 beem(3 ,8)=dn2dx ;
99 beem(3 ,14)=dn3dx ;
100 beem(3 ,20)=dn4dx ;
101 beeb=z e r o s ( 3 , 2 4 ) ; % i n i t i a l i z e bending s t r a i n −displacement matrix
102 beeb(1,5)=−dn1dx ;
103 beeb(1,11)=−dn2dx ;
104 beeb(1,17)=−dn3dx ;
105 beeb(1,23)=−dn4dx ;
106 beeb (2 ,4)=dn1dy ;
107 beeb (2 ,10)=dn2dy ;
108 beeb (2 ,16)=dn3dy ;
109 beeb (2 ,22)=dn4dy ;
110 beeb(3,5)=−dn1dx ;
111 beeb(3,11)=−dn2dx ;
112 beeb(3,17)=−dn3dx ;
113 beeb(3,23)=−dn4dx ;
114 beeb (3 ,4)=dn1dy ;
115 beeb (3 ,10)=dn2dy ;
116 beeb (3 ,16)=dn3dy ;
117 beeb (3 ,22)=dn4dy ;
118 bees=z e r o s ( 2 , 2 4 ) ; % i n i t i a l i z e shear s t r a i n −displacement matrix
119 bees (1 ,3)=dn1dx ;
120 bees (1 ,5)=N1 ;
121 bees (1 ,9)=dn2dx ;
122 bees (1 ,11)=N2 ;
123 bees (1 ,15)=dn3dx ;
124 bees (1 ,17)=N3 ;
125 bees (1 ,21)=dn4dx ;
126 bees (1 ,23)=N4 ;
127 bees (2 ,3)=dn1dy ;
128 bees (2,4)=−N1 ;
129 bees (2 ,9)=dn2dy ;
130 bees (2,10)=−N2 ;
131 bees (2 ,15)=dn3dy ;
132 bees (2,16)=−N3 ;
133 bees (2 ,21)=dn4dy ;
134 bees (2,22)=−N4 ;
135 kem=kem+det ( j a c )∗ th∗w∗beem ’ ∗ deem∗beem ; % membrane stiffness matrix
136 keb=keb+det ( j a c )∗ th∗w∗beeb ’ ∗ deeb∗beeb ; % bending stiffness matrix
137 kes=kes+det ( j a c )∗ th∗w∗ bees ’ ∗ dees ∗ bees ; % shear stiffness matrix
138 k e l=k e l+kem+keb+kes ; % combination f o r complete s h e l l stiffness matrix
63
139 end
140 r=z e r o s ( 6 ) ;
141 r (1 ,1)= t1 ( 1 , 1 ) ;
142 r (1 ,2)= t1 ( 2 , 1 ) ;
143 r (1 ,3)= t1 ( 3 , 1 ) ;
144 r (2 ,1)= t2 ( 1 , 1 ) ;
145 r (2 ,2)= t2 ( 2 , 1 ) ;
146 r (2 ,3)= t2 ( 3 , 1 ) ;
147 r (3 ,1)=n ( 1 , 1 ) ;
148 r (3 ,2)=n ( 2 , 1 ) ;
149 r (3 ,3)=n ( 3 , 1 ) ;
150 r (4 ,4)= t1 ( 1 , 1 ) ;
151 r (4 ,5)= t1 ( 2 , 1 ) ;
152 r (4 ,6)= t1 ( 3 , 1 ) ;
153 r (5 ,4)= t2 ( 1 , 1 ) ;
154 r (5 ,5)= t2 ( 2 , 1 ) ;
155 r (5 ,6)= t2 ( 3 , 1 ) ;
156 r (6 ,4)=n ( 1 , 1 ) ;
157 r (6 ,5)=n ( 2 , 1 ) ;
158 r (6 ,6)=n ( 3 , 1 ) ;
159 T=z e r o s ( 2 4 ) ;
160 T( 1 : 6 , 1 : 6 ) = r ;
161 T( 7 : 1 2 , 7 : 1 2 ) = r ;
162 T( 1 3 : 1 8 , 1 3 : 1 8 ) = r ;
163 T( 1 9 : 2 4 , 1 9 : 2 4 ) = r ;
164 keg=T’ ∗ k e l ∗T;
165
166 end % end f u n c t i o n
Q4steering.m
1 f u n c t i o n [ coord , g ] = Q4steering ( i , nne , ndim , connec , ncoord , nf , ndof )
2
3 coord=z e r o s ( nne , ndim ) ;
4 f o r k=1:nne
5 f o r j =1:ndim
6 coord ( k , j )=ncoord ( connec ( i , k ) , j ) ;
7 end
8 end
9 p=0;
10 f o r i e l =1:nne
11 f o r j =1: ndof
12 p=p+1;
13 g (p)=nf ( connec ( i , i e l ) , j ) ;
14 end
15 end
16
17 end
steering3D.m
1 f u n c t i o n [ g]= steering3D ( i , elconnec , ndof )
2
3 node1=el co n ne c ( i , 1 ) ; % f i r s t node o f element i
64
39 i f g ( j ,1)~=0
40 f o r k=1: e l d o f
41 i f g ( k,1)~=0
42 k g l o b a l ( g ( j , 1 ) , g ( k ,1))= k g l o b a l ( g ( j , 1 ) , g ( k ,1))+K( j , k ) ;
43 end
44 end
45 end
46 end
47 end
48 f o r i =1:nnd
49 f o r j =1: nodof
50 i f nf ( i , j )~=0
51 f g l o b a l ( nf ( i , j ) ,1)=F( i , j ) ;
52 end
53 end
54 end
55 d e l t a=k g l o b a l \ f g l o b a l ;
56 f o r i =1:nnd
57 f o r j =1: nodof
58 i f nf ( i , j )~=0
59 g l o b a l d e l t a ( i , j )= d e l t a ( nf ( i , j ) ) ;
60 else
61 g l o b a l d e l t a ( i , j )=0;
62 end
63 end
64 end
Test Case 1
1 clc ;
2 clear ;
3 n e l =3; % number o f elements
4 nnd=4; % number o f nodes
5 ndof =6; % number o f DOF per node
6 e l d o f =12; % number o f DOF per element
7 e l p r o p =[1 4e6 1 . 3 e6 . 3 e6 1e6 0 1 ; % element p r o p e r t i e s
8 1 4e6 1 . 3 e6 . 3 e6 1e6 0 1 ;
9 1 4e6 1 . 3 e6 . 3 e6 1e6 90 1 ] ;
10 ncoord =[0 5 5 ; 5 5 5 ; 5 5 0 ; 5 0 0 ] ; % node c o o r d i n a t e s
11 e l co n ne c =[1 2 ; 3 2 ; 4 3 ] ; % element c o n n e c t i v i t y
12 nf =[0 0 0 0 0 0 ; 1 1 1 1 1 1 ; % nodal DOF
13 1 1 1 1 1 1;0 0 0 0 0 0 ] ;
14 n=0; % i n i t i a l i z e system number o f f r e e DOF
15 f o r i =1:nnd % begin counting system number o f f r e e DOF
16 f o r j =1: ndof
17 i f nf ( i , j)==1
18 n=n+1;
19 nf ( i , j )=n ;
20 else
21 end
22 end
23 end
24 f o r c e=z e r o s (nnd , ndof ) ; % i n i t i a l i z e f o r c e matrix (NOT system f o r c e v e c t o r )
25 f o r c e (2 ,2)= −100; % a s s i g n v e r t i c a l load to node 2
26 F=z e r o s (n , 1 ) ; % i n i t i a l i z e system f o r c e v e c t o r
27 f o r i =1:nnd
66
28 f o r j =1: ndof
29 i f nf ( i , j )~=0
30 F( nf ( i , j ))= f o r c e ( i , j ) ;
31 else
32 end
33 end
34 end
35 K=z e r o s (n ) ; % i n i t i a l i z e system s t i f f n e s s matrix
36 f o r i =1: n e l % form system s t i f f n e s s matrix
37 g=steering3D ( i , elconnec , nf ) ;
38 keg=ebbeamstiff3D ( i , elconnec , elprop , ncoord ) ;
39 K=formK(K, keg , g , e l d o f ) ;
40 end
41 D=K\F ; % c a l c u l a t e system displacement v e c t o r
42 d i s p=z e r o s (nnd , ndof ) ; % i n i t i a l i z e displacement v e c t o r (NOT system displacement v e c t o r )
43 f o r i =1:nnd
44 f o r j =1: ndof
45 i f nf ( i , j )~=0
46 d i s p ( i , j )=D( nf ( i , j ) ) ;
47 else
48 d i s p ( i , j )=0;
49 end
50 end
51 end
52 xyzdisp=di s p ( : , 1 : 3 ) ; % xyzdisp c o n t a i n s only t r a n s l a t i o n a l displacements
53 deformcoord=ncoord+xyzdisp ; % deformed node c o o r d i n a t e s
54 scaldeform=ncoord+200∗xyzdisp ; % s c a l e d deformed node c o o r d i n a t e s
55 f o r i =1: n e l % p l o t t i n g Figure 5 . 5
56 n1=el co n ne c ( i , 1 ) ; % node 1 o f element i
57 n2=el co n ne c ( i , 2 ) ; % node 2 o f element i
58 l i n e ( [ ncoord ( n1 , 3 ) ncoord ( n2 , 3 ) ] , [ ncoord ( n1 , 1 ) ncoord ( n2 , 1 ) ] . . . % p l o t t i n g undeformed
59 , [ ncoord ( n1 , 2 ) ncoord ( n2 , 2 ) ] , ’ c o l o r ’ , ’ c ’ , ’ Marker ’ , ’ . ’ . . .
60 , ’ MarkerSize ’ , . 5 , ’ LineWidth ’ , 2 ) ;
61 hold on % both on same p l o t
62 l i n e ( [ scaldeform ( n1 , 3 ) scaldeform ( n2 , 3 ) ] , [ scaldeform ( n1 , 1 ) . . . % p l o t t i n g s c a l e d deformed
63 scaldeform ( n2 , 1 ) ] , [ scaldeform ( n1 , 2 ) scaldeform ( n2 , 2 ) ] . . .
64 , ’ Marker ’ , ’ . ’ , ’ MarkerSize ’ , . 5 , ’ LineWidth ’ , 2 ) ;
65 g r i d on
66 end % t h i s p l o t shows a l i n e a r deformation
67 % a c t u a l p l o t would use hermitian shape f u n c t i o n s
68 view ( [ 3 , 3 , 3 . 8 ] ) % p l o t view
Test Case 2
1 clc ;
2 clear ;
3 n e l =1; % number o f elements
4 nnd=2; % number o f nodes
5 ndof =6; % number o f DOF per node
6 e l d o f =12; % number o f DOF per element
7 gam=.5; % newmark constant gamma from Table 2 . 1
8 beta =.25; % newmark constant beta from Table 2 . 1
9 dtim =.001; % time s t e p from Table 2 . 1
10 t i n t= 2 . 5 ; % t o t a l time i n t e r v a l from Figure 5 . 7
11 nstep=t i n t /dtim ; % number o f time s t e p s
12 fm=.001; % mass r a y l e i g h damping c o e f f i c i e n t from Eq . ( 5 . 4 )
67
71 x1=l i n s p a c e ( 0 , 2 . 5 , 2 5 0 0 ) ;
72 p l o t ( x1 , y1 ) % p l o t t i n g Rayleigh Damping p o r t i o n o f Figure 5 . 8
73 x l a b e l ( ’ Time ( s e c ) ’ )
74 y l a b e l ( ’ Free End D e f l e c t i o n ’ )
Test Case 3
1 clc ;
2 clear ;
3 n e l =45;
4 nnd=64;
5 nne=4;
6 ndof =2;
7 e l d o f=nne∗ ndof ;
8 prop=z e r o s ( nel , 3 ) ;
9 f o r i =1: n e l
10 prop ( i ,1)=200000;
11 prop ( i , 2 ) = . 3 ;
12 prop ( i , 3 ) = 5 ;
13 end
14 ncoord =[0 −3;
15 0 −1;
16 0 1;
17 0 3;
18 2 −3;
19 2 −1;
20 2 1;
21 2 3;
22 4 −3;
23 4 −1;
24 4 1;
25 4 3;
26 6 −3;
27 6 −1;
28 6 1;
29 6 3;
30 8 −3;
31 8 −1;
32 8 1;
33 8 3;
34 10 −3;
35 10 −1;
36 10 1;
37 10 3;
38 12 −3;
39 12 −1;
40 12 1;
41 12 3;
42 14 −3;
43 14 −1;
44 14 1;
45 14 3;
46 16 −3;
47 16 −1;
48 16 1;
49 16 3;
69
50 18 −3;
51 18 −1;
52 18 1;
53 18 3;
54 20 −3;
55 20 −1;
56 20 1;
57 20 3;
58 22 −3;
59 22 −1;
60 22 1;
61 22 3;
62 24 −3;
63 24 −1;
64 24 1;
65 24 3;
66 26 −3;
67 26 −1;
68 26 1;
69 26 3;
70 28 −3;
71 28 −1;
72 28 1;
73 28 3;
74 30 −3;
75 30 −1;
76 30 1;
77 30 3];
78 connec =[1 5 6 2;
79 2 6 7 3;
80 3 7 8 4;
81 5 9 10 6;
82 6 10 11 7;
83 7 11 12 8;
84 9 13 14 10;
85 10 14 15 11;
86 11 15 16 12;
87 13 17 18 14;
88 14 18 19 15;
89 15 19 20 16;
90 17 21 22 18;
91 18 22 23 19;
92 19 23 24 20;
93 21 25 26 22;
94 22 26 27 23;
95 23 27 28 24;
96 25 29 30 26;
97 26 30 31 27;
98 27 31 32 28;
99 29 33 34 30;
100 30 34 35 31;
101 31 35 36 32;
102 33 37 38 34;
103 34 38 39 35;
104 35 39 40 36;
105 37 41 42 38;
106 38 42 43 39;
107 39 43 44 40;
70
108 41 45 46 42;
109 42 46 47 43;
110 43 47 48 44;
111 45 49 50 46;
112 46 50 51 47;
113 47 51 52 48;
114 49 53 54 50;
115 50 54 55 51;
116 51 55 56 52;
117 53 57 58 54;
118 54 58 59 55;
119 55 59 60 56;
120 57 61 62 58;
121 58 62 63 59;
122 59 63 64 60];
123 nf=ones (nnd , ndof ) ;
124 nf (1 ,1)=0;
125 nf (1 ,2)=0;
126 nf (2 ,1)=0;
127 nf (2 ,2)=0;
128 nf (3 ,1)=0;
129 nf (3 ,2)=0;
130 nf (4 ,1)=0;
131 nf (4 ,2)=0;
132 n=0;
133 f o r i =1:nnd
134 f o r j =1: ndof
135 i f nf ( i , j)==1
136 n=n+1;
137 nf ( i , j )=n ;
138 else
139 end
140 end
141 end
142 f o r c e=z e r o s (nnd , ndof ) ;
143 f o r c e (64 ,2)= −5000;
144 F=z e r o s (n , 1 ) ;
145 K=z e r o s (n ) ;
146 f o r i =1:nnd
147 f o r j =1: ndof
148 i f nf ( i , j )~=0
149 F( nf ( i , j ))= f o r c e ( i , j ) ;
150 else
151 end
152 end
153 end
154 f o r i =1: n e l
155 [ coord , g]= Q4steering ( i , nne , ndof , connec , ncoord , nf , ndof ) ;
156 keg=Q4membranestiff ( i , coord , prop , e l d o f ) ;
157 K=formK(K, keg , g , e l d o f ) ;
158 end
159 D=K\F ; % unknown displacements
160 d i s p=z e r o s (nnd , ndof ) ;
161 f o r i =1:nnd
162 f o r j =1: ndof
163 i f nf ( i , j )~=0
164 d i s p ( i , j )=D( nf ( i , j ) ) ;
165 else
71
166 d i s p ( i , j )=0;
167 end
168 end
169 end
170 deformcoord=di s p+ncoord ;
171 uy=di s p ( : , 2 ) ;
172 patch ( ’ Faces ’ , connec , ’ V e r t i c e s ’ , deformcoord , ’ FaceVertexCData ’ , uy , . . .
173 ’ Facecolor ’ , ’ i n t e r p ’ , ’ Marker ’ , ’ . ’ ) ;
174 colorbar ;
Test Case 4
1 clc ;
2 clear ;
3 nne=4;
4 ndof =6;
5 ndim=3;
6 e l d o f=nne∗ ndof ;
7 xlength =18;
8 ylength =18;
9 nelx =20;
10 nely =20;
11 dhx=xlength / nelx ;
12 dhy=ylength / nely ;
13 x o r i g i n =0;
14 y o r i g i n=ylength / 2 ;
15 [ ncoord , connec , nnd , n e l ]=Q4mesh( nelx , nely , dhx , dhy , x o r i g i n , y o r i g i n ) ;
16 nf=ones (nnd , ndof ) ;
17 f o r i =1: n e l
18 prop ( i ,1)=30 e6 ;
19 prop ( i , 2 ) = . 3 ;
20 prop ( i , 3 ) = . 2 5 ;
21 prop ( i ,4)=300;
22 end
23 f o r i =1:nnd
24 nf ( i , 1 ) = 0 ;
25 nf ( i , 2 ) = 0 ;
26 nf ( i , 6 ) = 0 ;
27 i f ncoord ( i ,2)==−9 | | ncoord ( i ,2)==9
28 nf ( i , 3 ) = 0 ;
29 nf ( i , 5 ) = 0 ;
30 e l s e i f ncoord ( i ,1)==0 | | ncoord ( i ,1)==18
31 nf ( i , 4 ) = 0 ;
32 nf ( i , 3 ) = 0 ;
33 end
34 end
35 n=0;
36 f o r i =1:nnd
37 f o r j =1: ndof
38 i f nf ( i , j)==1
39 n=n+1;
40 nf ( i , j )=n ;
41 else
42 end
43 end
44 end
72
14 A=10;
15 G=20;
16 shear =5/6;
17 n=9;
18 k g l o b a l=z e r o s (n ) ;
19 N1=1−x/L ;
20 N2=x/L ;
21 dn1dx=d i f f (N1, x ) ;
22 dn2dx=d i f f (N2, x ) ;
23 B = [ dn1dx 0 0 dn2dx 0 0;
24 0 0 dn1dx 0 0 dn2dx ;
25 0 dn1dx −N1 0 dn2dx −N2 ] ;
26 D=z e r o s ( 3 ) ;
27 D(1 ,1)=E∗A;
28 D(2 ,2)=E∗ I ;
29 D(3 ,3)= shear ∗G∗A;
30 K=i n t (B’ ∗D∗B, x , 0 , L ) ;
31 f o r i =1: n e l
32 g (1 ,1)= nf ( connec ( i , 1 ) , 1 ) ;
33 g (2 ,1)= nf ( connec ( i , 1 ) , 2 ) ;
34 g (3 ,1)= nf ( connec ( i , 1 ) , 3 ) ;
35 g (4 ,1)= nf ( connec ( i , 2 ) , 1 ) ;
36 g (5 ,1)= nf ( connec ( i , 2 ) , 2 ) ;
37 g (6 ,1)= nf ( connec ( i , 2 ) , 3 ) ;
38 f o r j =1: e l d o f
39 i f g ( j ,1)~=0
40 f o r k=1: e l d o f
41 i f g ( k,1)~=0
42 k g l o b a l ( g ( j , 1 ) , g ( k ,1))= k g l o b a l ( g ( j , 1 ) , g ( k ,1))+K( j , k ) ;
43 end
44 end
45 end
46 end
47 end
48 f o r i =1:nnd
49 f o r j =1: nodof
50 i f nf ( i , j )~=0
51 f g l o b a l ( nf ( i , j ) ,1)=F( i , j ) ;
52 end
53 end
54 end
55 d e l t a=k g l o b a l \ f g l o b a l ;
56 f o r i =1:nnd
57 f o r j =1: nodof
58 i f nf ( i , j )~=0
59 g l o b a l d e l t a ( i , j )= d e l t a ( nf ( i , j ) ) ;
60 else
61 g l o b a l d e l t a ( i , j )=0;
62 end
63 end
64 end
3 e l d o f =3;
4 nf =[0 1 2 ] ;
5 x=sym ( ’ x ’ ) ;
6 x5=sym ( ’ x5 ’ ) ;
7 x1=0;
8 x2=5;
9 x3=10;
10 A=(x^2)/450+2;
11 E=5000;
12 F= [ 0 ; 0 ; 1 0 ] ;
13 b=−3∗x ;
14 N1=((x−x2 ) ∗ ( x−x3 ) ) / ( ( x1−x2 ) ∗ ( x1−x3 ) ) ;
15 N2=((x−x1 ) ∗ ( x−x3 ) ) / ( ( x2−x1 ) ∗ ( x2−x3 ) ) ;
16 N3=((x−x1 ) ∗ ( x−x2 ) ) / ( ( x3−x1 ) ∗ ( x3−x2 ) ) ;
17 N=[N1 N2 N3 ] ;
18 B=d i f f (N, x ) ;
19 K=i n t (B’ ∗E∗A∗B, x , x1 , x3 ) ;
20 f 1 =( i n t (N1∗b , x , x1 , x3))+ subs (N1, x3 )∗F( 3 , 1 ) ;
21 f 2 =( i n t (N2∗b , x , x1 , x3))+ subs (N2, x3 )∗F( 3 , 1 ) ;
22 f 3 =( i n t (N3∗b , x , x1 , x3))+ subs (N3, x3 )∗F( 3 , 1 ) ;
23 F=[ f 1 ; f 2 ; f 3 ] ;
24 f o r i =1: e l d o f
25 i f nf ( i )~=0
26 f g l o b a l ( nf ( i ) ,1)=F( i ) ;
27 end
28 end
29 f o r i =1: e l d o f
30 i f nf ( i )~=0
31 f o r j =1: e l d o f
32 i f nf ( j )~=0
33 k g l o b a l ( nf ( i ) , nf ( j ))=K( i , j ) ;
34 end
35 end
36 end
37 end
38 d e l t a=k g l o b a l \ f g l o b a l ;
39 f o r i =1: e l d o f
40 i f nf ( i )~=0
41 g l o b a l d e l t a ( i ,1)= d e l t a ( nf ( i ) ) ;
42 else
43 globaldelta ( i ,1)=0;
44 end
45 end
46 y=(−3/200)∗(149∗ pi −9∗x−298∗acot ( x / 3 0 ) ) ;
47 %sigmaexact=E∗ ( ( 9 ∗ ( 3 ∗ ( x5 .^2) −280))/(200∗(( x5 . ^ 2 ) + 9 0 0 ) ) ) ;
48 x=l i n s p a c e ( 0 , 1 0 , 2 0 ) ;
49 y=subs ( y , x ) ;
50 p l o t ( x , y , ’ LineWidth ’ , 2 )
51 hold on
52 y=N∗ g l o b a l d e l t a ;
53 %sigma3=E∗B∗ g l o b a l d e l t a ;
54 x=l i n s p a c e ( 0 , 1 0 , 2 0 ) ;
55 y=subs ( y , x ) ;
56 p l o t ( x , y,’−−k ’ )
57 clear ;
58 x=sym ( ’ x ’ ) ;
59 e l d o f =2;
60 nf =[0 1 ] ;
75
61 n=2;
62 x1=0;
63 x2=10;
64 A=(x^2)/450+2;
65 E=5000;
66 F= [ 0 ; 1 0 ] ;
67 b=−3∗x ;
68 N1=(x−x2 ) / ( x1−x2 ) ;
69 N2=(x−x1 ) / ( x2−x1 ) ;
70 N=[N1 N2 ] ;
71 B=d i f f (N, x ) ;
72 K=i n t (B’ ∗E∗A∗B, x , x1 , x2 ) ;
73 f 1 =( i n t (N1∗b , x , x1 , x2))+ subs (N1, x2 )∗F( 2 , 1 ) ;
74 f 2 =( i n t (N2∗b , x , x1 , x2))+ subs (N2, x2 )∗F( 2 , 1 ) ;
75 F=[ f 1 ; f 2 ] ;
76 f o r i =1: e l d o f
77 i f nf ( i )~=0
78 f g l o b a l ( nf ( i ) ,1)=F( i ) ;
79 end
80 end
81 f o r i =1: e l d o f
82 i f nf ( i )~=0
83 f o r j =1: e l d o f
84 i f nf ( j )~=0
85 k g l o b a l ( nf ( i ) , nf ( j ))=K( i , j ) ;
86 end
87 end
88 end
89 end
90 d e l t a=k g l o b a l \ f g l o b a l ;
91 f o r i =1: e l d o f
92 i f nf ( i ) ~= 0
93 g l o b a l d e l t a ( i ,1)= d e l t a ( nf ( i ) ) ;
94 else
95 globaldelta ( i ,1) = 0;
96 end
97 end
98 y=N∗ g l o b a l d e l t a ;
99 %sigma2=E∗B∗ g l o b a l d e l t a ;
100 x=l i n s p a c e ( 0 , 1 0 , 2 0 ) ;
101 y=subs ( y , x ) ;
102 p l o t ( x , y,’−−r ’ )
103 hold o f f
104 h=legend ( { ’ A n a l y t i c a l ’ , ’ Quadratic Element ’ , ’ Linear Element ’ } , ’ Location ’ , ’ northeast ’ ) ;
105 x l a b e l ( ’ Length ( i n ) ’ , ’ FontSize ’ , 1 3 )
106 y l a b e l ( ’ Displacement ( i n ) ’ , ’ FontSize ’ , 1 3 )
B. Fortran Code
Because the Fortran code is similar to the MATLAB code, only a few examples are provided.
Fortran Module
main.m
1 MODULE main
2 !
3 INTERFACE
4 !
5 SUBROUTINE ebbeammass3D( e l d o f , i , prop , coord , bme)
6 IMPLICIT NONE
7 INTEGER,INTENT( IN ) : : e l d o f , i
8 REAL,DIMENSION( : , : ) ,INTENT( IN ) : : prop , coord
9 REAL,DIMENSION( : , : ) ,INTENT(OUT) : : bme
10 END SUBROUTINE ebbeammass3D
11 !
12 SUBROUTINE ebbeamstiff3D ( i , coord , prop , e l d o f , ke , hinge )
13 IMPLICIT NONE
14 INTEGER,INTENT( IN ) : : e l d o f , i
15 INTEGER,DIMENSION( : , : ) ,INTENT( IN ) : : hinge
16 REAL,DIMENSION( : , : ) ,INTENT( IN ) : : prop , coord
17 REAL,DIMENSION( : , : ) ,INTENT(OUT) : : ke
18 END SUBROUTINE ebbeamstiff3D
19 !
20 SUBROUTINE Q4steering ( i , nne , nodof , nf , connec , g , ncoord , coord , ndim )
21 IMPLICIT NONE
22 INTEGER,INTENT( IN ) : : i , nne , nodof , ndim
23 INTEGER,DIMENSION( : , : ) ,INTENT( IN ) : : nf , connec
24 REAL,DIMENSION( : , : ) ,INTENT( IN ) : : ncoord
25 INTEGER,DIMENSION( : , : ) ,INTENT(OUT) : : g
26 REAL,DIMENSION( : , : ) ,INTENT(OUT) : : coord
27 END SUBROUTINE Q4steering
28 !
29 SUBROUTINE g a u s s p o i n t s ( ngp , gauss )
30 IMPLICIT NONE
31 INTEGER,INTENT( IN ) : : ngp
32 REAL,DIMENSION( : , : ) ,INTENT(OUT) : : gauss
33 END SUBROUTINE g a u s s p o i n t s
34 !
35 SUBROUTINE Q 4 s h e l l s t i f f ( i , coord , nodof , nne , ngp , prop , gauss , keg )
36 IMPLICIT NONE
76
77
Fortran Subroutines
formK.f
1 SUBROUTINE formK( kglobal , ke , g , e l d o f )
2 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
3 ! This subroutine forms the g l o b a l s t i f f n e s s matrix f o r d i f f e r e n t elements .
4 ! The g l o b a l s t i f f n e s s array ( k g l o b a l ) i s a n by n matrix where n i s the
5 ! t o t a l f r e e d e g r e e s o f freedom i n the model .
6 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
7 IMPLICIT NONE
8 INTEGER,INTENT( IN ) : : e l d o f
9 INTEGER,DIMENSION( : , : ) ,INTENT( IN ) : : g
10 REAL,DIMENSION( : , : ) ,INTENT( IN ) : : ke
11 REAL,DIMENSION( : , : ) ,INTENT( IN OUT) : : k g l o b a l
12 INTEGER : : i , j
13
14 DO i =1, e l d o f
15 IF ( g ( i ,1)/=0)THEN
16 DO j =1, e l d o f
17 IF ( g ( j ,1)/=0)THEN
18 k g l o b a l ( g ( i , 1 ) , g ( j ,1))= k g l o b a l ( g ( i , 1 ) , g ( j ,1))+ ke ( i , j )
19 END IF
20 END DO
21 END IF
22 END DO
23
24 END SUBROUTINE formK
gausselimination.f
1 SUBROUTINE g a u s s e l i m i n a t i o n ( kglobal , delta , f o r c e , e r r o r )
2
3 IMPLICIT NONE
4 REAL,DIMENSION( : ) ,INTENT( IN ) : : f o r c e
5 REAL,DIMENSION( : , : ) ,INTENT( IN ) : : k g l o b a l
6 REAL,DIMENSION( : ) ,INTENT(OUT) : : d e l t a
7 REAL,DIMENSION( : , : ) ,ALLOCATABLE: :m
8 REAL,DIMENSION( : ) ,ALLOCATABLE: : f
9 LOGICAL,INTENT(OUT) : : e r r o r
10 INTEGER : : i , j , i e l , neq , k
11 REAL: : L
12 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
13 ! k g l o b a l i s the g l o b a l s t i f f n e s s matrix
14 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
15 e r r o r=s i z e ( kglobal , dim=1)/= s i z e ( f o r c e ) . or . &
16 s i z e ( kglobal , dim=2)/= s i z e ( f o r c e )
17 IF ( e r r o r )THEN
18 d e l t a =0.0
19 RETURN
20 END IF
21 neq=s i z e ( kglobal , dim=1)
22 ALLOCATE(m( neq , neq ) , f ( neq ) )
23 m( 1 : neq , 1 : neq)=k g l o b a l
24 f ( 1 : neq)= f o r c e
25 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
79
ebbeamstiff3D.f
1 SUBROUTINE ebbeamstiff3D ( i , coord , prop , e l d o f , ke , hinge )
2 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
3 ! This subroutine forms the s t i f f n e s s matrix f o r a beam−column element i n three−
4 ! dimensional (3−D) space . I t i n c l u d e s the s t i f f n e s s matrices f o r the presence
5 ! o f a s p h e r i c a l hinge at e i t h e r or both ends .
6 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
7 IMPLICIT NONE
8 INTEGER,INTENT( IN ) : : e l d o f , i
9 INTEGER,DIMENSION( : , : ) ,INTENT( IN ) : : hinge
10 REAL,DIMENSION( : , : ) ,INTENT( IN ) : : prop , coord
11 REAL,DIMENSION( : , : ) ,INTENT(OUT) : : ke
12 REAL,DIMENSION( e l d o f , e l d o f ) : : T
13 REAL,DIMENSION( 3 , 3 ) : : r
14 REAL: : x1 , y1 , z1 , x2 , y2 , z2 , L ,A, E, J , Iz , Iy ,G, cx , cy , cz , s1 , s2 , s3 , s4 , s5 , s6 , s7 , s8 , s9 , &
15 s10 , s11 , s12 , s13 , s14 , s15 , s16 , pi , psirad , psi , cg , sg , den
16 INTEGER : : z
17 x1=coord ( 1 , 1 )
18 y1=coord ( 1 , 2 )
19 z1=coord ( 1 , 3 )
20 x2=coord ( 2 , 1 )
21 y2=coord ( 2 , 2 )
22 z2=coord ( 2 , 3 )
23 A=prop ( i , 1 )
24 G=prop ( i , 2 )
25 E=prop ( i , 3 )
26 Iy=prop ( i , 4 )
27 I z=prop ( i , 5 )
28 J=prop ( i , 6 )
29 p s i=prop ( i , 7 )
30 p i=acos ( −1.0)
31 p s i r a d =(( p s i ∗ p i ) / ( 1 8 0 . 0 ) )
32 L=s q r t ( ( x2−x1)∗∗2+(y2−y1)∗∗2+(z2−z1 )∗∗2)
33 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
34 ! Forming the element s t i f f n e s s matrix with r i g i d ends .
80
35 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
36 IF ( hinge (1,1)==0 . and . hinge (1 ,2)==0)THEN
37 s1=(E∗A) / (L ) ;
38 s2 =(12∗E∗ I z ) / (L∗ ∗ 3 ) ;
39 s3 =(6∗E∗ I z ) / (L∗ ∗ 2 ) ;
40 s4 =(12∗E∗ Iy ) / (L∗ ∗ 3 ) ;
41 s5 =(6∗E∗ Iy ) / (L∗ ∗ 2 ) ;
42 s6=(G∗J ) / (L ) ;
43 s7 =(4∗E∗ Iy ) / (L ) ;
44 s8 =(2∗E∗ Iy ) / (L ) ;
45 s9 =(4∗E∗ I z ) / (L ) ;
46 s10=(2∗E∗ I z ) / (L ) ;
47 s11=−s1
48 s12=−s2
49 s13=−s4
50 s14=−s5
51 s15=−s6
52 s16=−s3
53 ke=0.0
54 ke (1 ,1)= s1
55 ke (1 ,7)= s11
56 ke (2 ,2)= s2
57 ke (2 ,6)= s3
58 ke (2 ,8)= s12
59 ke (2 ,12)= s3
60 ke (3 ,3)= s4
61 ke (3 ,5)= s14
62 ke (3 ,9)= s13
63 ke (3 ,11)= s14
64 ke (4 ,4)= s6
65 ke (4 ,10)= s15
66 ke (5 ,3)= s14
67 ke (5 ,5)= s7
68 ke (5 ,9)= s5
69 ke (5 ,11)= s8
70 ke (6 ,2)= s3
71 ke (6 ,6)= s9
72 ke (6 ,8)= s16
73 ke (6 ,12)= s10
74 ke (7 ,1)= s11
75 ke (7 ,7)= s1
76 ke (8 ,2)= s12
77 ke (8 ,6)= s16
78 ke (8 ,8)= s2
79 ke (8 ,12)= s16
80 ke (9 ,3)= s13
81 ke (9 ,5)= s5
82 ke (9 ,9)= s4
83 ke (9 ,11)= s5
84 ke (10 ,4)= s15
85 ke (10 ,10)= s6
86 ke (11 ,3)= s14
87 ke (11 ,5)= s8
88 ke (11 ,9)= s5
89 ke (11 ,11)= s7
90 ke (12 ,2)= s3
91 ke (12 ,6)= s10
92 ke (12 ,8)= s16
81
93 ke (12 ,12)= s9
94 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
95 ! Forming the element s t i f f n e s s matrix with a hinge at i t s l e f t end .
96 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
97 ELSEIF( hinge (1,1)==1 . and . hinge (1 ,2)==0)THEN
98 s1=(E∗A) / (L ) ;
99 s2 =(3∗E∗ I z ) / (L∗ ∗ 3 ) ;
100 s3 =(3∗E∗ I z ) / (L∗ ∗ 2 ) ;
101 s4 =(3∗E∗ I z ) / (L ) ;
102 s5 =(3∗E∗ Iy ) / (L∗ ∗ 3 ) ;
103 s6 =(3∗E∗ Iy ) / (L∗ ∗ 2 ) ;
104 s7 =(3∗E∗ Iy ) / (L ) ;
105 s8=−s1 ;
106 s9=−s2 ;
107 s10=−s3 ;
108 s11=−s5 ;
109 s12=−s6 ;
110 ke=0.0
111 ke (1 ,1)= s1
112 ke (1 ,7)= s8
113 ke (2 ,2)= s2
114 ke (2 ,8)= s9
115 ke (2 ,12)= s3
116 ke (3 ,3)= s5
117 ke (3 ,9)= s11
118 ke (3 ,11)= s12
119 ke (7 ,1)= s8
120 ke (7 ,7)= s1
121 ke (8 ,2)= s9
122 ke (8 ,8)= s2
123 ke (8 ,12)= s10
124 ke (9 ,3)= s11
125 ke (9 ,9)= s5
126 ke (9 ,11)= s6
127 ke (11 ,3)= s12
128 ke (11 ,9)= s6
129 ke (11 ,11)= s7
130 ke (12 ,2)= s3
131 ke (12 ,8)= s10
132 ke (12 ,12)= s4
133 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
134 ! Forming the element s t i f f n e s s matrix with a hinge at i t s r i g h t end .
135 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
136 ELSEIF( hinge (1,1)==0 . and . hinge (1 ,2)==1)THEN
137 s1=(E∗A) / (L ) ;
138 s2 =(3∗E∗ I z ) / (L∗ ∗ 3 ) ;
139 s3 =(3∗E∗ I z ) / (L∗ ∗ 2 ) ;
140 s4 =(3∗E∗ I z ) / (L ) ;
141 s5 =(3∗E∗ Iy ) / (L∗ ∗ 3 ) ;
142 s6 =(3∗E∗ Iy ) / (L∗ ∗ 2 ) ;
143 s7 =(3∗E∗ Iy ) / (L ) ;
144 s8=−s1 ;
145 s9=−s2 ;
146 s10=−s3 ;
147 s11=−s5 ;
148 s12=−s6 ;
149 ke=0.0
150 ke (1 ,1)= s1
82
151 ke (1 ,7)= s8
152 ke (2 ,2)= s2
153 ke (2 ,6)= s3
154 ke (2 ,8)= s9
155 ke (3 ,3)= s5
156 ke (3 ,5)= s12
157 ke (3 ,9)= s11
158 ke (5 ,3)= s12
159 ke (5 ,5)= s7
160 ke (5 ,9)= s6
161 ke (6 ,2)= s3
162 ke (6 ,6)= s4
163 ke (6 ,8)= s10
164 ke (7 ,1)= s8
165 ke (7 ,7)= s1
166 ke (8 ,2)= s9
167 ke (8 ,6)= s10
168 ke (8 ,8)= s2
169 ke (9 ,3)= s11
170 ke (9 ,5)= s6
171 ke (9 ,9)= s5
172 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
173 ! Forming the element s t i f f n e s s matrix with both ends hinged .
174 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
175 ELSEIF( hinge (1,1)==1 . and . hinge (1 ,2)==1)THEN
176 s1=(E∗A) / (L)
177 s2=−s1
178 ke=0.0
179 ke (1 ,1)= s1
180 ke (1 ,7)= s2
181 ke (7 ,1)= s2
182 ke (7 ,7)= s1
183 END IF
184 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
185 ! Forming t r a n s f o r m a t i o n matrix to transform the element l o c a l s t i f f n e s s
186 ! matrix to the element g l o b a l s t i f f n e s s matrix .
187 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
188 sg=s i n ( p s i r a d )
189 cg=cos ( p s i r a d )
190 IF ( x2/=x1 . and . z2/=z1 )THEN
191 T=0.0
192 T(1 ,2)=1.0
193 T(2,1)=− cg
194 T(2 ,3)= sg
195 T(3 ,1)= sg
196 T(3 ,3)= cg
197 T(4 ,5)=T( 1 , 2 )
198 T(5 ,4)=T( 2 , 1 )
199 T(5 ,6)=T( 2 , 3 )
200 T(6 ,4)=T( 3 , 1 )
201 T(6 ,6)=T( 3 , 3 )
202 T(7 ,8)=T( 1 , 2 )
203 T(8 ,7)=T( 2 , 1 )
204 T(8 ,9)=T( 2 , 3 )
205 T(9 ,7)=T( 3 , 1 )
206 T(9 ,9)=T( 3 , 3 )
207 T(10 ,11)=T( 1 , 2 )
208 T(11 ,10)=T( 2 , 1 )
83
The governing differential equations for bending of a E-B beam in the X-Z plane are
dw
= −θy
dx
d2 w My
=−
dx2 EIy
(C.1)
d3 w Vz
=−
dx3 EIy
d4 w pz
=
dx4 EIy
84
85
To obtain values for constants in terms of the nodal variables, Eq. (C.2) is solved with x = 0,
and it is assumed that there is no loading at x = 0, that is, pz (0) = 0. Implementing these
constraints gives the constants of integration in terms of the nodal variables at node 1:
C1 = −Vz1
C2 = −My1
(C.3)
C3 = −EIy θy1
C4 = EIy w1
Substituting the constants of integration Eq. (C.3) into Eq. (C.2) and setting x = L gives
L3 L2
ZZZZ
pz (x)
w2 = w1 − θy1 L − Vz1 − My1 + dx
6EIy 2EIy EIy
L2
ZZZ
L pz (x)
θy2 = θy1 + Vz1 + My1 − dx
2EIy EIy EIy
Z (C.4)
pz (x)
Vz2 = Vz1 − dx
EIy
ZZ
pz (x)
My2 = Vz1 L + My1 − dx
EIy
86
The governing differential equations for bending of a E-B beam in the X-Y plane are
dv
= θz
dx
d2 v Mz
=
dx2 EIz
(C.5)
d3 v Vy
=−
dx3 EIz
d4 v py
=
dx4 EIz
Integrating the fourth order differential equation four times gives
d3 v
Z
Vy = −EIz 3 = −C 1 − py (x) dx
dx
2 ZZ
dv
Mz = EIz 2 = C2 + C1 x + py (x) dx
dx
(C.6)
C 2 x C 1 x2
ZZZ
dv C3 py (x)
θz = = + + + dx
dx EIz EIz 2EIz EIz
C 3 x C 2 x2 C 1 x3
ZZZZ
C4 pz (x)
v= + + + + dx
EIz EIz 2EIz 6 EIy
To obtain values for constants in terms of the nodal variables, Eq. (C.6) is solved with x = 0,
and it is assumed that there is no loading at x = 0, that is, py (0) = 0. Implementing these
constraints gives the constants of integration in terms of the nodal variables at node 1:
C1 = −Vy1
C2 = Mz1
(C.7)
C3 = EIz θz1
C4 = EIz v1
87
Substituting the constants of integration Eq. (C.7) into Eq. (C.6) and setting x = L gives
L3 L2
ZZZZ
v2 = v1 + θz1 L − Vy1 + Mz1 + py (x) dx
6EIz 2EIz
L2
ZZZ
L py (x)
θz2 = θz1 − Vy1 + Mz1 + dx
2EIz EIz EIz (C.8)
Z
Vy2 = Vy1 − py (x) dx
ZZ
Mz2 = −Vy1 L + Mz1 + py (x) dx
Axial Extension:
Torsional Rotation:
The matrix Ti is referred to as the transfer matrix since it ”transfers” the variables from
node 1 to node 2. The vectors q1 and q2 of displacements and forces are referred to as the
state vectors because the variables fully describe the response/state of the beam [35].
The stiffness matrix for a beam element relates all of the displacements to all of the forces.
The stiffness matrix relation is given by,
pi = ki di (C.20)
where
" #
i d1 h iT
d = = u1 v1 w1 φ1 θy1 θz1 u2 v2 w2 φ2 θy2 θz2
d2
" # (C.21)
i p1 h iT
p = = N1 Vy1 Vz1 Mt1 My1 Mz1 N2 Vy2 Vz2 Mt2 My2 Mz2
p2
The stiffness matrix is written in a different sign convention than the transfer matrix. The
transfer matrix formed above is based on a positive bending moment sign convention. For
90
a stiffness relation, a positive sign convention which aligns with the positive global axes is
needed. Rewriting Eq. (C.17) as
d2 = Tdd d1 + Tdp p1
(C.22)
p2 = Tpp p1
where Tpp = −Tss and Tdp = −Tdp . Solving Eq. (C.22) in terms of p1 and p2 gives,
p1 = T−1 −1
dp d2 − Tdp Tdd d1
(C.23)
p2 = Tpp p1 = Tpp T−1 −1
dp d2 − Tpp Tdp Tdd d1
Rewriting Eq. (C.23) in matrix form, results in the stiffness matrix relation given in Eq.
(C.20) (ignoring loads applied along the beam),
..
−T−1 . T−1
p1 dp Tdd dp d1
(C.24)
· · · = ··· · ··· · · ·
.
.
dp Tdd . Tpp Tdp
−Tpp T−1
p2 −1 d2
| {z } | {z } | {z }
di ki di
Expanding the stiffness ki in Eq. (C.24) gives the 3-D stiffness matrix for a E-B beam,
91
.. .. ..
EA
0 0 . 0 0 0 . −EA
0 0 . 0 0 0
L L
.. .. ..
12EIz
0 . 0 0 6EI z
. 0 −12EIz
0 . 0 0 6EIz
L3 L2 L3 L2
.. .. ..
12EIy
. 0 −6EIy
0 . 0 0 −12EIy
. 0 −6EIy
0
L3 L2 L3 L2
· · · · · · · · · · · · · · · · · · · · · · · ··· ··· · ··· ··· ···
.. GJ . .. −GJ
0 .. 0
. L . L
0 0 0 0 0
.. . ..
0 .. 0
. 4EIy 6EIy
. 0 2EIy
L
0 L2 L
0
.. 4EIz .. ..
. . 0 −6EIz
0 . 0 0 2EIz
L L2 L
(C.25)
ki =
· · · · · · · · · · · · · · · · · · · · · · · ··· ··· · ··· ··· ···
.. .. EA ..
. . L . 0
0 0 0 0
.. .. ..
. . 12EIz
. 0 −6EIz
L3
0 0 L2
.. .. ..
. . 12EIy
. 0 6EIy
L3 L2
0
· · · · · · · · · · · · · · · · · · · · · · · ··· ··· · ··· ··· ···
.. .. .. GJ
. . . L
0 0
.
.. .. ..
. . 4EIy
Sym. L
0
.. .. ..
. . . 4EIz
L
D. Proposal
92
93
Submitted by:
Jon Palczynski
Submitted to:
Abstract
The primary purpose of this project is to design the structure of a five-story triangular
shaped mixed-use office and residential building in San Francisco, CA. The geometry of the
building will be triangular shaped and during the design process, certain scopes of work will be
intensely focused. Since the building will be approximately 80 feet tall and located in earthquake
zones of San Francisco, the effects of lateral loads will be considered in the design process.
Application of Finite Element Analysis software such as ANSYS and PATRAN is one of the
goals of the project. Moreover, design evaluation and cost analysis will be undergone as the final
scope of the project. Alterations of different structural elements (bracing systems, shear wall
systems and column positions/spacings) will be tested out to find a cost-efficient and structurally
sound building. The project also aims as a case study for buildings with irregular configurations.
1
95
Table of Contents
Abstract............................................................................................................................................1
List of Figures..................................................................................................................................3
List of Tables...................................................................................................................................4
1. Introduction..................................................................................................................................5
2. Background..................................................................................................................................5
2.1 Building Site Location...................................................................................................5
2.2 Structural Analysis.........................................................................................................6
2.3 Finite Element Analysis.................................................................................................7
3. Methodology..............................................................................................................................10
3.1 Structural Design.........................................................................................................10
3.1.1 Choose Framing System...............................................................................11
3.1.2 Set Column Grid...........................................................................................11
3.1.3 Determine Design Loads...............................................................................11
3.1.3.1 Load Combinations........................................................................11
3.1.3.2 Gravity Load..................................................................................12
3.1.4 Modal Response Spectrum Analysis............................................................12
3.1.5 Compute Member Sizes................................................................................12
3.1.6 Design Framing Connections........................................................................12
3.1.7 Design Foundation Elements........................................................................12
3.1.8 Check Wind Loads........................................................................................13
3.2 Framing Connection Analysis.....................................................................................13
3.2.1 3D Model Creation.......................................................................................13
3.2.2 Finite Element Analysis of Connections......................................................13
3.3 Cost Estimate...............................................................................................................13
3.3.1 Cost Estimate................................................................................................13
4. Capstone Design Statement.......................................................................................................14
4.1 Economic.....................................................................................................................14
4.2 Constructability............................................................................................................14
4.3 Ethical..........................................................................................................................14
4.4 Health and Safety.........................................................................................................15
4.5 Social...........................................................................................................................15
5. Professional Licensure Statement..............................................................................................15
6. Deliverables...............................................................................................................................16
7. Conclusion.................................................................................................................................16
8. Project Schedule........................................................................................................................16
References......................................................................................................................................18
2
96
List of Figures
Figure 1: 1811 Jerrold Ave San Francisco, CA 94124 Building Site..............................................6
Figure 2: Finite Element Model with Stress Contour Plot...............................................................8
Figure 3: Methodology Flowchart.................................................................................................10
3
97
List of Tables
Table 1: Building Structure Design Tasks.....................................................................................11
Table 2: Framing Connection Analysis Tasks...............................................................................13
Table 3: Cost Estimate Tasks.........................................................................................................13
Table 4: Deliverables.....................................................................................................................16
Table 5: Project Schedule..............................................................................................................17
4
98
1. Introduction
Modern geometric architecture is becoming more popular; however, it presents new
structural design challenges. New structural framing methods, materials and computer tools must
be investigated and used to address the complex geometric structures and associated loading
scenarios. Triangular shaped buildings are a type of modern geometric structure but due to
structural design challenges they are not very common. Nonetheless, a few examples exist; the
Potsdamer Platz 11 in Berlin, Germany and the Flatiron Building in New York, New York. Both
buildings are considered iconic landmarks of the area and draw tourist attention due to their
unique shapes. However, these buildings are not in areas subject to dangerous seismic and wind
loads.
To set a standard for the design of a modern triangular shaped building subject to seismic
and wind loads, this project will explore the design and evaluation of a theoretical five-story
triangular shaped mixed-use residential and office building located in San Francisco, CA,
primarily focused on the steel framing system. The project will investigate different structural
framing methods and computer software to aid in the design of a complex building structure
subject to seismic and wind loads. Additionally, a cost estimate will be performed for each
framing method to better evaluate and assess the viability of each option. The major tasks of this
project will be two structural frame designs, CAD Models, Finite Element Models, Finite
Element Analysis and cost estimates. The final outcome of the project will be the completed
evaluation and design of the triangular shaped structure along with guidelines to follow when
designing a uniquely shaped structure subject to seismic and wind loads.
2. Background
This section provides the information needed to understand the major components of the
project. The major components of the project are the building location, structural analysis and the
utilization of computer software tools.
5
99
Seismic loads are caused by earthquakes. The building site location is classified as a
Seismic Design Category D zone by ASCE 7-16. A Seismic Design Category is given to a
structure based on its usage and level of possible ground motion. Sites classified as Seismic
Design Category D risk loss of soil strength. Structures classified as Seismic Design Category D
could experience very strong shaking capable of producing a Modified Mercalli Intensity Scale
(MMI) of VIII. The Modified Mercalli Intensity Scale has values assigned to a location after an
earthquake has occurred; they are a measure of the viewable physical effects that the location
experienced. An MMI of VIII is classified as damage slight in specially designed structures and
considerable damage and partial collapse in ordinary buildings (U.S. Geological Survey, 1989).
6
100
Wind Loads are caused by air pressure acting on a building's surface. Unlike a
rectangular building, a triangular building will not experience symmetrical wind distributions.
The maximum and minimum pressures occur on a triangular building when the wind blows
parallel to one of the faces. Due to the triangular shape the building will experience much higher
twisting moments about its base when compared to a rectangular building (Abdusemed & Ahuja,
2015).
Dead loads are the frame's weight and any object that is permanently fixed to the
building. Live loads are loads which can move and are not permanently fixed to the building.
Live load design values are generally based on building occupancy classification and can be
found in ASCE 7-16.
The structural design of a building can be divided into two parts; the superstructure and
foundation. The superstructure design consists of the column layout and framing system. The
column layout must account for usability and functionality of the spatial layout. The spatial
layout is the floor plan and the arrangement of furniture, cubicles, counters, equipment and other
items located within the floor plan (Nha & Leblanc, 2002). If columns are placed only to create
the best structure with no consideration for the spatial layout, it may yield a completely unusable
building. The superstructure design also consists of sizing the beams, columns and framing
connections. The foundation design consists of sizing footings, the foundation wall dimensions
and other components of the foundation. Foundation design follows the American Concrete
Institute Manual of Concrete Practice (ACI Concrete Manual).
Beam and column sizes depend largely on the applied load combinations but also the
frame layout. Modern structures typically contain large open spaces which increase the unbraced
and effective lengths of beams and columns respectively; adversely affecting their strength.
Connection variations include welded design, bolted design and coped (bolt) vs. not coped
(weld) connections. Connections can be subject to pure shear, pure axial or a combination of
both. Design of beams, columns and connections all follow American Institute of Steel
Construction: Steel Construction Manual (AISC Steel Manual).
7
101
2D Plate Elements and 3D Solid Elements; a mix of elements can be used in a Finite Element
Model. After the Finite Element Model is solved it can display items such as displacement,
stress, strain, mode shapes and temperature. A common way to represent results is with a contour
plot (Weck & Yong, 2004).
Modal Response Spectrum Analysis must be used to analyze the building structure due to
the seismic loads. Modal Response Spectrum Analysis is a linear dynamic analysis method
which measures the contribution from each natural mode of vibration to determine the maximum
seismic response of an elastic structure. Because of the unique shape of the building and its
location, a linear static analysis cannot be used. Once the analysis is complete, shear forces are
computed to be distributed along the height of the building. (Emrah, 2016). The building will be
designed from a seismic loading point of view and then will be checked for wind loading.
Similar to the seismic design, because the structure is a unique shape, a normal wind load
procedure cannot be used. A Computational Fluid Dynamics model must be made to analyze the
wind loads acting on the triangular structure. Computational Fluid Dynamics generates fluid
flow through a model of the structure and uses a numerical analysis method, such as the Finite
Element Method, to find a solution (Lohner, 2009).
Figure 2: Finite Element Model with Stress Contour Plot (Lindsey, 2017)
Finite Element Analysis can be divided into three main parts; pre-processing, solving and
post-processing. Pre-processing is the development of a Finite Element Model. This is where a
structure is meshed into elements, material properties are assigned, loads and boundary
conditions are applied, etc. After a Finite Element Model is created it needs to be solved. A text
8
102
file is created with all components of the pre-processing phase; node locations, material
properties, loads, etc. This text file is then sent to the solver. Solving is when the set of equations
associated with the structure are put into matrix form and the variables are then solved for. The
matrices can be extremely large and require a lot of computing power to be solved within a
reasonable amount of time. After the solving is complete the user can view and analyze the
results, known as post-processing. Post-processing is where results of stress, strain,
displacement, etc. can be viewed as contour plots, graphs, etc. For example, solvers can calculate
various types of stresses throughout a structure including; Mises, Tresca, Principal, Axial and
Shear (Roensch, 2008).
There are a lot of commercially available Finite Element Analysis software packages;
these consist of pre-processors, solvers, post-processors or "all in one" packages. A few
examples include ABAQUS, HyperMesh, MSC NASTRAN, MSC PATRAN, ANSYS and
STAAD. For this project the software will be limited to an educational version that does not have
substantial model size limitations. When choosing a pre and post-processor it is important to
consider the Finite Element Model creation capabilities, ability to import CAD geometry, solver
support, user interface, results presentation, automation and scripting capabilities and overall
value (Wertel, 2018).
From our initial investigation we have found that the ANSYS Workbench software
package can create the overall structure and provide member forces through Modal Response
Spectrum Analysis. ANSYS Workbench contains Design Modeler, a built-in CAD tool to create
a framing system that can then be meshed with the built-in pre-processor. ANSYS Workbench
also includes a built-in solver and post-processor. For connection design we have found it is
generally easier to use CAD software for creating the model geometry rather than creating the
geometry within a pre-processor. CATIA is a CAD tool that can create framing connections and
then have the geometry directly inputted to MSC PATRAN for pre-processing. ANSYS, MSC
NASTRAN, MSC PATRAN and CATIA V5 all have free educational versions available to
students which make them the most viable options.
9
103
3. Methodology
This section outlines the major tasks of the project, how they will be completed and who
will complete them. Each task includes the associated resources to assist in completion. The
flowchart below lists the major steps.
10
104
11
105
To calculate the ground snow load, figure 7.2-1 from ASCE 7-16 is used as a reference.
Ground snow load is then converted into flat roof snow loads from section 7.3-1 using different
factor values such as exposure factor,thermal factor,importance factor.
Chapter 8 of ASCE 7-16 discuss design of rain loads. It says rain loads is based on the
static head and hydraulic head values which are associated with the primary and secondary
drainage system.
12
106
13
107
During the design process of the building, various effects of lateral loads due to wind and
earthquakes will be investigated. Since the proposed property is situated in a location
geologically vulnerable to earthquakes, seismic-resisting structures will be intensely studied and
utilized. The design will follow standard engineering building codes; AISC Steel Manual, ACI
Concrete Manual and ASCE 7-16. To evaluate the constructability and efficiency of the building,
Finite Element Analysis will be undergone with different design scenarios. The main study of the
project will explore how slight alteration of different design components, (beam/column sizes,
floor-to-ceiling height, column positioning) will influence and improve the overall design of the
structure. The final focus of the project will be reporting a cost analysis of the structural skeleton
of the building. The MQP will incorporate economic, constructability, ethical, health and safety,
and social design constraints.
4.1 Economic
A cost estimate of each structure will be completed and broken down into individual
components like beams, columns and connections. Different beam and columns sizes, column
arrangements and flooring systems will be considered to determine the most cost-effective
design. The recommendation for the final structure will consider cost.
4.2 Constructability
The aspect of constructability will be highly prioritized during development of design
scenarios. Efficient constructability includes using beam/column sizes and column spacings.
4.3 Ethical
During the design process, the code of ethics for engineers provided by National Society
of Professional Engineers (NSPE) will be followed. The building is in an area subject to seismic
loads and will be required to adhere to seismic design provisions in ASCE 7-16. While this may
require additional design work and increased material costs, compromising the overall quality of
14
108
the structure for cost-efficiency will be strictly avoided. Moreover, creating a design with
structural integrity will be the top priority of this capstone project.
4.5 Social
Although this project is mainly aimed to design to structural skeleton of the building, the
proposed site is planned to be office/residential building. The building will comprise of small
and medium sized office spaces, small shop spaces and residential apartments for different types
of social background. Column grids must account for the spatial layout to ensure adequate and
functional offices and apartments can be implemented into the building.
This capstone design project is almost strictly related structural professional practice. It
includes structural members sizing, structural analysis and detail drawings. The outcome of the
project will be a product which need a professional engineers’ approval if the project ever come
to reality.
6. Deliverables
15
109
The following deliverables will be included in addition to the final MQP report.
Table 4: Deliverables
ANSYS Building Model
CAD Drawings
Hand Calculations
7. Conclusion
As a capstone design project, the final aim is to not only utilize the theoretical knowledge
that is gained from 4-years of civil engineering modules but also connect the different civil
engineering aspects and consider the most efficient outcome with structural integrity. At the end
of the project, it is also expected that the team will gain knowledge of different design processes,
structural analysis applications, simulation software and design optimization processes.
Moreover, the project is expected to extend the capacity of the team as structural engineers and
also improve the problem-solving skills. Properly utilizing personal experience and academic
knowledge as well as the guidance of the advisor will be one of the primary intent of the project.
8. Project Schedule
The schedule below outlines the process the project will follow. The two frame designs
will be completed one after another to better structure the project outcome. After the two frame
designs are complete, Finite Element Analysis will be used to investigate different connection
combinations for each structure to see which performs the best under seismic loading. When
preparing the final report a final recommendation will be made as to which is the best framing
design and what are the best connection designs for an irregular shaped building subject to
seismic loads.
16
110
Site Evaluation
Frame Design 1
Column Design 1
Beam Design 1
Connection Design 1
Foundation Design 1
Frame Design 2
Beam Design 2
Column Design 2
Connection Design 2
Foundation Design 2
FEA of Connections
Cost Analysis
Proposal
Final Report
Project Presentation
17
111
References
Abdusemed, Muftha Ahmed, and Ashok Kumar Ahuja. “Wind Pressure Distribution on
Triangular Shape Tall Buildings.” International Journal of Innovative Research in Science,
Engineering and Technology, vol. 4, no. 8, Aug. 2015.
ASCE/SEI 7-16 Minimum Design Loads and Associated Criteria for Buildings and Other
Structures. American Society of Civil Engineers, 2017.
Lindsey, Jon. Stresses in Exterior Connection with Full-Depth Column Web Stiffeners. 2017,
www.lusas.com/case/civil/connection_research.html.
Lohner, Rainald. Applied CFD Techniques: An Introduction Based on Finite Element Methods.
2nd ed., Wiley, 2009.
Nguyen, Nha, and Gaston Leblanc. “Contact Personnel, Physical Environment and the Perceived
Corporate Image of Intangible Services by New Clients.” International Journal of Service
Industry Management, vol. 13, no. 3, 2002, pp. 242–262.
Spaulding, Erin. “IBC 2018/ASCE 7-16: DCI ENGINEERS PREPARES FOR BIG
CHANGES.” DCI Engineers, 18 May 2018,
www.dci-engineers.com/news/ibc-2018asce-7-16-dci-engineers-prepares-big-changes.
Steel Construction Manual Fifteenth Edition. American Institute of Steel Construction, 2017.
Weck, Olivier de, and Il Yong Kim. “Finite Element Method.” Engineering Design and Rapid
Prototyping. web.mit.edu/16.810/www/16.810_L4_CAE.pdf.
18
112
Wertel, Scott. FEA Buyer's Guide for Pre- and Postprocessing Software. 27 Sept. 2013,
www.engineering.com/DesignSoftware/DesignSoftwareArticles/ArticleID/6391/FEA-Buyers-Gu
ide-for-Pre-and-Postprocessing-Software.aspx.
19
E. Cost Estimate Data
Cost data gathered from [15].
113
114