School of Engineering and Mathematical Sciences: by Umar Draz Ahmad
School of Engineering and Mathematical Sciences: by Umar Draz Ahmad
London
13 September 2013
1
Project Title: Development of a Structural analysis program (SABSM) using MATLAB
featuring graphical user interface
Abstract
Linear static analysis of 2D and 3D rigid jointed frames and trusses by direct
stiffness method can be performed by many commercial structural analysis
softwares available in the market. The majority of them follow the basic steps
of the direct stiffness method (DSM) to solve linear structures. However, they
sacrifice transparency of the underlying methodological steps of DSM for
ease of use which is a common need in industry. To this aim, they usually
provide a user friendly CAD-like interface and, in many cases, they put
forward a black box type of approach in analysis. In this context, many
steps involved in the DSM are notionally skipped as they are done
automatically by commercial software packages. Such an approach does not
facilitate the learning of DSM and, thus, the use of commercial programs for
education purposes is still under debate.
2
The program results have been verified by hand calculations at each step of
the direct stiffness method (DSM) and also compared with the standard
solutions available in the books. All steps are identical to hand calculations
and each step of SABSM has been verified.
3
Acknowledgements
4
Table of Contents
Abstract 2
Acknowledgements 4
Contents 5
Abbreviations 7
1. Introduction 9
1.1 Overview 9
1.2 Aims and Objectives 10
1.3 Organization of Thesis 10
2. Literature Review 12
2.1 Overview 12
2.2 Available MATLAB Programs 12
3. Theoretical Background 18
3.1 Overview 18
3.2 Coordinate System 18
3.3 Sign Conventions 19
3.4 Degree of Freedom(DOF) 20
3.5 Element Stiffness Matrix 21
3.6 Structural Stiffness Matrix 21
3.7 Load Vector[P] 21
3.8 Displacement Vector[U] 22
3.9 Calculation of Unknown Displacements and Reactions 22
3.10 Member Forces 22
3.11 Planar Truss 23
3.12 Space Truss 23
3.13 Planar Frame 24
3.14 Space Frame 25
4. Methodology 28
4.1 Introduction 28
4.2 Overview 28
5
4.3 Pre-processing 29
4.4 Processing 33
4.5 Post-Processing 37
5. Program Overview With Solution Of Selected Problems 39
5.1 Program Architecture 39
5.2 Preprocessing 40
5.3 Processing 43
5.4 Post processing 43
5.5 Sample Problems Solved By SABSM 43
6. Verification Of Results 78
6.1 2D Truss 78
6.2 3D Truss 85
6.3 2D Frame 95
6.4 3D Frame 105
7. Concluding Remarks 113
8. References 115
9. Appendix 116
9.1 Fixed End Forces 116
6
Abbreviations
A Cross sectional area
E Modulus of elasticity
I Moment of Inertia
G Shear modulus
2D Two dimensional
3D Three dimensional
Direction cosines
7
p Frame member force in local x-axis
8
1.0 Introduction
1.1 Overview
Structural analysis is the backbone of any engineering design by letting one
knows ahead of time the behaviour of any engineering structure under
different loading conditions to which structure will come across throughout its
life. This report demonstrates how a structure could be defined and analyzed
using the program named structural analysis by stiffness method
(SABSM).Moreover how a user can use this program as a learning tool for
direct stiffness method specifically by going through each step of the solution
reported back by the SABSM.
9
Processing Structural analysis using correct equations
Post processing viewing the results
In the preprocessing stage each node number is entered initially with the x ,y
and z coordinates of each, then nodes are connected to define the elements
which are drawn onscreen so that user can verify it . Then element properties
are defined depending on type of structure and allotted to each element. Now
completion of geometry leads the user to define nodal constraints and nodal
or non-nodal loads depending on the type of structure. Once all the data
input is complete next stage follows.
11
2.0 Literature Review
2.1 Overview
Matrix structure analysis is a very powerful tool which evolved from classical
methods to current computer aided analysis. Use of MATLAB in structural
analysis has long been started and a lot of programs are already available for
structural analysis by using MATLAB.Some books are specifically written on
this topic one such book is MATLAB codes for finite element analysis [11].
Some of the available programs are described here
There is a chance of error during the input definitions which user may not
notice at input entry time and can lead to error in Analysis results. As this
does not have any graphics to intimate the user about member dimensions
so user can not visualize the structure to confirm structural shape as defined
by input file. Moreover Program does not contain the functionality to draw
shear force, bending moment diagrams and deflected shape.
2D-Truss with GUI Program [2] was developed by Asare stephen & Yan Lou
from China in May 2009 using MATLAB and is open source. It can perform
elastic static analysis of 2D trusses only with loads applied at Nodes. As it
has Graphical user interface where user can input structure data and
12
visualize it so chances of error during input definitions are minimized.
Graphical user interface displays only deflected shapes and member forces
can be visualized in MATLAB command window only.
Beam and Truss Analysis utilities [3] program was developed by Roee Lahav
from Israel in June 2005 using MATLAB and is open source. Program is able
to perform structural analysis of beams and 2D trusses. Structural input is in
the form of a MATLAB m.file which then saves into MATLAB mat. File. The
program contains some predefined mat files which user can modify to
analyze any structure of ones own choice. Graphical user interface can run
any selected mat file and produce the results which appear on screen in GUI.
Program performs the stability check on the structure and intimates the user
if it is unstable. Reactions, member forces and deflected shapes can be
visualized on the screen. Main limitation of the program is that GUI is not
very well defined as user can hardly visualize all the buttons available for
analysis. User cannot modify any structural property. This program cannot
analyze 3D trusses, 2D and 3D rigid jointed Frames.
Interface is not very well defined even it contains too much spell mistakes
which is difficult for the user to understand. User cannot edit, once in
between the data input mode. For any correction, program has to be
launched again. Program has no functionality to draw shear force, bending
moment diagrams and deflected shapes which make it less user friendly in
13
the sense to visualize the structure to have a better structural input hence
leading to the correct analysis results.
Main Limitation of this program is that it does not have any Graphical input
for the user to have an idea that how the defined structure looks like. It is
incapable of analyzing rigid jointed frames. However Structure deflected and
original shapes are drawn at the end of analysis with the results shown in
command window. Load applied at nodes is also not visible in the graph
which makes difficult for the user to visualize the location of applied load,
which if applied at wrong location or direction can lead to the incorrect
analysis results.
14
Space Truss Systems as Linear Static Analysis [7] program was developed
by Ali Ozgul from Turkey in 2003 using MATLAB. Program mainly targets the
analysis of Space Trusses. It is composed of only one m.file containing input
data file as well. This program contains five predefined space truss problems
input data which user can modify as per his own requirement and run the
program to get the results. This require user to be well conversant with
MATLAB to analyze the structure.
This program does not support the Graphical user interface functionality
where user can easily visualize the structural shape. Results are only
available in command window making it difficult for the user to understand
and visualize the deflected shapes.
Even available MATLAB code does not contain any comments about the
specific inputs. Program performs the analysis of both 2D and 3D trusses
with output in the Graphical form where one can have a look on the original
structure and deflected shape. But still user can not visualize the load
application location which can lead wrong application of load or correct load
in wrong direction, hence incorrect analysis results.
15
prior knowledge, is required by the user to use this program. Program
interface is very well defined and easily understandable.
All the above stated programs contain different functionalities and can well
analyze the different structures but no such program is available that
supports the Graphical user interfaces and is open for research which could
be used for teaching purpose as well as is more User friendly Graphical
Interface.
In view of the above, this project develops a static elastic structural analysis
program for 2D and 3D pin jointed and rigid jointed frames supported by a
friendly Graphical user interface.The program will be open source for
research students which could be further extended for non-linear static and
dynamic analysis. The program requires no previous MATLAB knowledge by
the user.However, the underlying MATLAB code is very well commented so
that its very easily understandable by a user who doesnt have any MATLAB
knowledge. The following table shows a comparison between the existing
Structural analysis programs by MATLAB and SABSM.
One major difference between SABSM and all available programs is that
SABSM only provides learning environment for direct stiffness method by
performing and displaying the number of nodes ,direction of elements with
DOF at each node, element stiffness matrix in local coordinates and
transformation matrix ,element stiffness matrix in global coordinates
,structure stiffness matrix etc
16
Table 2.1 Comparison of 9 Available MATLAB programs with SABSM
17
3.0 Theoretical Background
3.1 Overview
18
Fig 3.1 Global Coordinates
19
Horizontal force is positive if directed to right side, vertical force is positive
upward and moment is positive in the counterclockwise direction as shown in
the Fig 3.3.
DOF in both local and global coordinate system remains same for a particular
case. But in case of trusses this is not the case as there is only one axial
deformation in local coordinates and two or three translations at each node in
2D and 3D trusses respectively. Degrees of freedom associated with each
type of element and its numbering can be summarized as shown in the Fig
(3.4)
20
Fig 3.4 Typical Degrees of Freedom for various types of elements
21
3.8 Displacement Vector [U]
Displacement Vector is obtained by placement of unknown displacement on
the top and after that known displacements as
22
3.11 Planar Truss
A plane truss is a pin jointed structure which lies only in a single plane(X-Y).
Plane truss is made up of members connected at hinges. They generally
form a triangulated pattern with loading and member lying in the same plane
at joints which are termed as nodes.
24
A rigid joint can transmit axial, shear and bending moment forces. Element
can be loaded at nodes as well as between the nodes both by point loads as
well as uniformly distributed loads which could be transferred to nodal loads
by the standard formulas.
25
Any unsupported joint of a three dimensional frame can translate as well as
rotate in any direction. So six degrees of freedom are always attached to any
joint of a frame structure out of which three are translations in X, Y and Z
directions and other three are rotations about the above axes.
-
1 I I 1 I I
-
1 I I 1 I I
- - -
G G
-
I I I I
-
I I I I
-
( 3.17)
-
1 I I 1 I I
- - -
1 I I 1 I I
-
G G
-
I I I I
-
I I I I
-
26
Where r is the rotation matrix which depends upon the angle between local y-
axis and global Y-axis of the element. Element start node is and end node
is .Z
Standard formula for the rotation of a 3D element with angle zero between
local y and global Y axis is given by
27
4.0 Methodology
4.1 Introduction
This section presents a brief overview of the procedure adopted in writing MATLAB
code to program the stiffness method for SABSM.
4.2 Overview
SABSM can be divided into three different sections as shown in the flow chart
below.
28
Processing stage solves the problem defined in the pre-processing stage
using direct stiffness method. Solution contains the unknown nodal
displacements and reaction forces at the constrained nodes.
4.3 Pre-processing
Pre-processing stage defines the problem in terms of different input data as
shown
29
Fig 4.3 Flowchart Program startup
Structure type tells the program to decide which element stiffness matrix and
transformation matrix to use to construct the global stiffness matrix.
Structure type decides the number of nodes to be input in the program. For
2D structures only X and Y coordinates are required but Z coordinate is
required only for 3D structures.
30
When 2D- geometry is selected program sets the default X-Y plane for the
geometry input with global Y-axis in vertical direction and X-axis in horizontal
direction.
When 3D- geometry is selected program sets the default X-Y plane for the
geometry input with global Y-axis in vertical direction and X-axis in horizontal
direction and Z-axis acts out of paper plane by using the right hand rule.
Element length and direction cosines required for the construction of element
stiffness matrices and transformation matrices are calculated using the end
node coordinates .Element length for a 2D element is calculated by (4.1) and
3D element is calculated by (4.2). and are the coordinates of start node
and and are the coordinates of end node where as and are only
incase of 3D elements.
31
Fig 4.6 Flowchart Element properties
Area and elastic modulus are required for the 2D and 3D trusses.2D frame
element properties are area, elastic modulus and moment of inertia.3D frame
properties for the element are elastic modulus, area, moment of inertia about
z-axis, moment of inertia about y-axis, polar moment of inertia and shear
modulus.
Trusses are assumed to carry only nodal loads. Frames are assumed to
carry both nodal loads as well as element loads. Nodal loads are always
considered in global coordinate system where as element loads will be
32
considered in the local coordinate system. Element loads considered are of
only two types i.e. point load and uniformly distributed load. Element loads
are converted into equivalent nodal loads by standard formulas.
4.4 Processing
It involves the major part of computation from element stiffness matrix to
member force.
33
Fig 4.9 Flowchart Analysis Stage
34
Fig 4.10 Flowchart Element stiffness Formation
35
Each element stiffness matrix is combined into a single global stiffness matrix
K, which represents the stiffness of the whole structure. This stiffness matrix
will be used to calculate the unknowns in the system.
36
Fig 4.12 Flowchart Load Vector Formation and Partition
4.5 Post-processing
In post-processing stage user can view the results in the following two
formats.
37
4.5.2 Command window step by step problem solution for learning
of direct stiffness method.
This is the most interesting part of the results as user can switch to command
window and a complete step by step solution by direct stiffness method is
available here. User can compare each part of the hand calculations and
verify his results. This part can be used for teaching direct stiffness method in
the class.
38
5.0 Structural Analysis Program by Stiffness Method
(SABSM)
39
The first step is to make the SABSM file available in the attached CD as
current directory of MATLAB and write SABSM on the command line to
launch the SABSM and then select the type of structure after which nodal
coordinates, nodal connectivity, element material properties, type of
constraints on the nodes and type of load is applied on the nodes and
elements. Subsequently analysis is carried out which leads to the results in
the form of a report having nodal deflections, reactions and element forces.
Another result file is available in the command window which is a step by
step solution of the problem by direct stiffness method to facilitate the
learning of direct stiffness method.
5.2 Preprocessing
40
First step is the selection of structure type so that program can use the
predefined subroutines specific to each type of structure.
User can input nodal coordinates and nodal connectivity depending upon the
analytical model and SABSM will draw each node and user can continue
entering nodes in add node window until all nodes in the structure are
defined and drawn. Then all nodes can be connected by using the add
element, each element is drawn once its connectivity is entered.
Once the structure is drawn user can define the constraints at each node and
material properties group then assign the groups to each individual element.
Last part is the load application which is of three different types .Types of
loading could be nodal load, element point load and element distributed load.
Nodal load will always be applied in global coordinates and element loads
are always applied in local element coordinates.
This involves running the SABSM to carry out the structural analysis based
on the type of structure selected and defined. This prepares the file
containing the element stiffness matrix of each element in local coordinates,
transformation matrix of each element, element stiffness matrix of each
element in global coordinates, formation of structure stiffness matrix, partition
of stiffness matrix to get , , , ,formation of load vector and
partition of load vector, computation of displacements at unconstrained
degrees of freedom and reactions at constrained degrees of freedom,
computation of displacements in local coordinate system and at the end
computation of member forces.
Results can be viewed in the results window and a step by step solution can
be viewed in MATLAB command window whose main purpose is to use
these results for education.
43
Four questions have been selected for structural analysis by SABSM
Program each 2D truss, 3D truss, 2D frame and 3D frame from structural
analysis book [10] and results obtained at each step are verified by hand
calculations in chapter 6.
5.5.1 2D truss
Find out nodal displacements, reactions and member forces for the plane
truss.
44
Truss is composed of 4 nodes and 3 elements and origin is at node 2.Input
file for SABSM is
45
Table 5.5 Nodal Loads
Node
1 150 -300
5.5.1.1 Preprocessing
5.5.1.2 Processing
Analysis is carried out and SABSM intimates the user with the message that
analysis is complete and results can be viewed in the result file and a step by
step solution by direct stiffness method is available in MATALB command
window.
46
Fig 5.10 Analysis Complete
Command window shows the element number with start and end node in the
brackets. Next line shows the horizontal DOF as U and vertical DOF as V at
both start and end node. Next line displays the length of element.
Subsequently transformation matrix, element stiffness matrix in local
47
coordinates and global coordinates are displayed as shown in Fig 5.12 to Fig
5.14.
Then constrained and unconstrained DOF are displayed according to Fig 5.8
49
Fig 5.16 Constrained and Unconstrained DOF
50
Fig 5.18 Load Vector
Then nodal displacements and reactions are displayed as shown in the Fig
5.19 before the last step which shows the member forces in local coordinates
as shown in the Fig 5.20.
Find out nodal displacements, reactions and member forces for the space
truss.
52
Fig 5.22 Analytical Model
53
Elastic Modulus Cross-Sectional Area
(E) (A)
70 2000
Node
4 75 -150
5.5.2.1 Preprocessing
Analysis is carried out and SABSM intimates the user with the message that
analysis is complete and results can be viewed in the result file and a step by
step solution by direct stiffness method is available in MATALB command
window.
55
Fig 5.25 Deflected Shape
Command window shows the element number with start and end node in the
brackets. Next line shows the horizontal DOF as U and vertical DOF as V
and DOF in Z direction as W at both start and end node. Next line displays
the length of element. Subsequently transformation matrix, element stiffness
matrix in local coordinates and global coordinates are displayed as shown in
Fig 5.26 to Fig 5.28.
56
Fig 5.27 Element 2
57
Fig 5.29 Structure Stiffness Matrix
58
Fig 5.31 Partitioned matrices
59
Fig 5.33 Partitioned matrices
60
Then nodal displacements and reactions are displayed as shown in the Fig
5.35 before the last step which shows the member forces in local coordinates
as shown in the Fig 5.36.
61
5.5.3 Plane frame
Find out nodal displacements, reactions and member forces for the plane
frame.
62
Node X (m) Y (m)
1 0 8
2 6 0
3 18 0
0.013
Node
2 -150
Distance from
Element
Start Node (m)
1 125 5
63
Table 5.15 Element Distributed Loads
5.5.3.1 Preprocessing
5.5.3.2 Processing
Analysis is carried out and SABSM intimates the user with the message that
analysis is complete and results can be viewed in the result file and a step by
step solution by direct stiffness method is available in MATALB command
window.
64
Fig 5.40 Analysis Complete
Command window shows the element number with start and end node in the
brackets. Next line shows the horizontal DOF as U and vertical DOF as V
and DOF around Z direction as Mz at both start and end node. Next line
displays the length of element. Subsequently transformation matrix, element
stiffness matrix in local coordinates and global coordinates are displayed as
shown in Fig 5.42 to Fig 5.45.
65
Fig 5.42 Element 1
66
Fig 5.44 Element 2
67
Fig 5.46 Structure Stiffness Matrix
Then nodal displacements and reactions are displayed as shown in the Fig
5.50 before the last step which shows the member forces in local coordinates
as shown in the Fig 5.51.
69
Fig 5.50 Displacements and Reactions
Find out the rotation matrix of each element and part of the structure
stiffness matrix
70
Fig 5.52 3D Frame
71
Table 5.16 Nodal Coordinates
Element 1 2 3
72
3 Fix Fix Fix Fix Fix Fix
4 Fix Fix Fix Fix Fix Fix
Node
1 -1800 1800
5.5.4.1 Preprocessing
73
5.5.4.2 Processing
Analysis is carried out and SABSM intimates the user with the message that
analysis is complete and results can be viewed in the result file and a step by
step solution by direct stiffness method is available in MATALB command
window.
74
Fig 5.56 Deflected Shape
Command window shows the element number with start and end node in the
brackets. Next line shows the horizontal DOF as U and vertical DOF as V
and DOF in Z direction as W and three rotations around X ,Y and Z axis
respectively at both start and end node. Next line displays the length of
element. Subsequently rotation matrix is displayed as shown in Fig 5.57 to
Fig 5.59.
75
Fig 5.58 Element 2
Then constrained and unconstrained DOF along with part will appear as
shown in the Fig 5.60
76
Fig 5.60 DOF and Partitioned Matrix
77
6.0 Verification Of Results
All the sample problems have been solved by hand to verify and explain each
and every step carried out by the SABSM program.
6.1 2D Truss
Solution
Units:
78
2D truss has two degrees of freedom marked 1 & 2 at joint 1,which are
translations in X and Y directions. Restrained degrees of freedom are marked
as 3 through 8.
Element 1
Joint 2 is the start node and joint 1 is the end node for this element from the
analytical model. By applying (4.1)
By using the (3.1a) global stiffness matrix for element 1 can be calculated as
79
Element 2
Joint 3 is the start node and joint 1 is the end node for this element from the
analytical model. By applying (4.1)
By using the (3.1a) global stiffness matrix for element 2 can be calculated as
80
Element 3
Joint 4 is the start node and joint 1 is the end node for this element from the
analytical model. By applying (4.1)
By using the (3.1a) global stiffness matrix for element 3 can be calculated as
81
Structure stiffness matrix can be calculated by adding the element stiffness
matrix at each pertinent degree of freedom
82
By using the standard equation unknown displacements at
node 1 can be calculated
Element 1
83
By using u=TU local displacements are
Element 1 is in Tension
Element 2
84
Element 2 is in Compression
Element 3
Element 3 is in Compression
6.2 3D Truss
85
Fig 6.3 3D Truss Problem
Units:
The space truss has three degrees of freedom, which are translations of joint
4 in the global X, Y, and Z directions. These are numbered 10, 11, and 12
respectively. Restrained degrees of freedom are numbered through 1 to 12 in
the Fig 6.4.
Element 1
Joint 1 is the start node and joint 4 is the end node, for this element. By
applying (4.2)
By using the (3.1a) global stiffness matrix for element 1 can be calculated as
87
Element 2
Joint 2 is the start node and joint 4 is the end node, for this element. By
applying (4.2)
88
Element 3
Joint 3 is the start node and joint 4 is the end node, for this element. By
applying (4.2)
By using the (3.1a) global stiffness matrix for element 3 can be calculated as
89
Structure stiffness matrix can be calculated by adding the element stiffness
matrix at each pertinent degree of freedom
Columns 1 through 6
90
Columns 7 through 12
91
By using the standard equation unknown displacements at
node 4 can be calculated
92
Element End Displacements and Forces
Element 1
Element 1 is in Tension
Element 2
93
By using u=TU local displacements are
Element 2 is in Compression
Element 3
94
Element 3 is in compression
6.3 2D Frame
95
Fig 6.6 Analytical Model
Solution:
Units:
The plane frame has three degrees of freedom, which are translations and a
rotation of joint 2 in the global Xian Z directions and rotation of joint 3 in Z
direction. These are numbered 4, 6, and 9 respectively. Restrained degrees
of freedom are numbered through 1 to 3, 5, 7 & 8 in the Fig (6.6).
Element 1
Joint 2 is the start node and joint 1 is the end node for this element from the
analytical model. By applying (4.1)
96
Substituting , A=0.013 and in
the (3.15)
By using the ( 3.1a) global stiffness matrix for element 1 can be calculated as
97
Element 2
Joint 2 is the start node and joint 3 is the end node for this element from the
analytical model. By applying ( 4.1)
the ( 3.15)
98
By using the (3.1a) global stiffness matrix for element 1 can be calculated as
99
For element 1 in local coordinates by using Fig (9.2)
100
By inspection of structure stiffness matrix part of the matrix is pertaining to
the degree of freedom 4, 6 and 9 and will be given by
101
Element End Displacements and Forces
Element 1
102
Element 2
103
By using u=TU local displacements are
104
6.4 3D Frame
Find out the rotation matrix of each element and part of structure stiffness
matrix.
105
Fig 6.8 Analytical Model
Solution
Units:
The space frame has six degrees of freedom, which are translations and
rotations of joint 1 in the global X, Y and Z directions. These are numbered 1,
2,3,4,5 and 6 respectively. Restrained degrees of freedom are numbered
through 7 to 24 in the figure.
Element 1
Joint 2 is the start node and joint 1 is the end node for this element from the
analytical model. By applying ( 4.2)
106
Angle between local y-axis and global Y-axis, =0
Element 2
Joint 3 is the start node and joint 1 is the end node for this element from the
analytical model. By applying (4.2)
107
Angle between local y-axis and global Y-axis, =90 deg
Element 3
Joint 3 is the start node and joint 1 is the end node for this element from the
analytical model. By applying (4.2)
108
Angle between local y-axis and global Y-axis, =30 deg
.86603
SABSM Hand
DOF Description % Error
output Calculations
109
1 Displacement 0.21552 0.2155 0.0093
2 Displacement -0.13995 -0.1399 0.0357
3 Reaction -10.062 -10.0804 -0.1828
4 Reaction -13.416 -13.440 -0.1788
5 Reaction 7.7662e-015 0 0
6 Reaction 126.83 126.7844 0.0359
7 Reaction -139.94 -139.9076 0.0231
8 Reaction 185.58 186.5439 -0.5193
SABSM Hand
Element Description % Error
output Calculations
1 F21 -16.77 -16.82 -0.2981
2 F31 126.832 126.7844 0.0375
3 F41 233.23 233.1608 0.0296
SABSM Hand
DOF Description % Error
output Calculations
10 Displacement 17.871 17.87 0.006
11 Displacement -5.0794 -5.079 0.008
12 Displacement -7.7663 -7.766 0.039
1 Reaction -5.5693 -5.569 0.005
2 Reaction -22.277 -22.28 -0.013
110
3 Reaction 9.2822 9.28 0.024
4 Reaction -52.351 -52.35 0.002
5 Reaction 69.802 69.80 0.003
6 Reaction -34.901 -34.90 0.003
7 Reaction -17.079 -17.08 -0.003
8 Reaction 102.48 102.48 0
9 Reaction 25.619 25.62 -0.003
SABSM Hand
Element Description % Error
output Calculations
1 F14 -24.768 -24.7718 -0.015
2 F24 93.764 93.9763 -0.226
3 F34 107.001 106.9927 0.008
SABSM Hand
DOF Description % Error
output Calculations
10 Displacement -0.00026195 -0.0002619 0.019
11 Displacement -0.0043172 -0.004317 0.004
12 Displacement 0.0078279 0.007827 0.011
1 Reaction 43.244 43.241 0.007
2 Reaction -18.648 -18.641 0.038
3 Reaction 26.577 26.570 0.026
111
4 Reaction 259.94 259.54 0.154
5 Reaction 56.756 56.75 0.011
6 Reaction 121.71 121.70 0.008
SABSM Hand
Element Description % Error
output Calculations
p21 40.864 40.863 0.003
q21 -101.594 -101.593 0.003
Mz21 -417.513 -417.512 0.003
1
p12 -40.684 -40.683 0.003
q12 -23.406 -23.405 0.003
Mz12 26.577 26.576 0.003
p23 -56.756 -56.755 0.003
q23 166.293 166.292 0.003
Mz23 267.513 267.512 0.003
2
p32 56.756 56.755 0.003
q32 121.707 121.706 0.003
Mz32 0 0 0.003
112
7.0 Concluding Remarks
SABSM can perform linear static analysis of 2D/3D trusses and frames by
using direct stiffness method. Main features of the program are:-
SABSM is able to analyze any 2D/3D truss and frame with n number
of elements and n number of nodes with any cross-sectional
properties and different end conditions.
SABSM facilitates the user to Add or delete any node or element if
entered incorrectly which means no need to restart the program.
SABSM can display the distance between any two nodes and length
of any element during the geometry definition to keep the user
updated when required.
SABSM provides the learning environment for direct stiffness method
in the command window by displaying the complete information of the
structure. Structure solution is available with complete detail so that it
can be used to verify the hand calculations
SABSM has been checked at various stages of computations and by
solution of different example by hands.
Comparison of results by hand calculations and SABSM show less
than 0.55 % error.
Hence SABSM can be used not only for structural analysis of 2D and
3D frames but also used as a tool for teaching direct stiffness method
in class and is more user friendly than the available programs written
in MATLAB to date.
113
Shear force, axial force, bending moments and reactions can be
drawn.
Program code can be extended to consider the secondary effects
such as temperature changes, fabrication errors and support
settlements.
Program code can be extended to non-linear structural analysis of
framed structures.
Program code can be extended to the dynamic analysis of structures
Program code can be extended to deal with structures of variable
cross-sections.
114
8.0 References
Web sites:
[3] [Online].Available:
http://www.mathworks.co.uk/matlabcentral/fileexchange/index?utf8=%E2%9
C%93&term=truss
[4] [Online].Available:
http://www.mathworks.co.uk/matlabcentral/fileexchange/39491-structure-
analysis
[5] [Online].Available:
http://www.mathworks.co.uk/matlabcentral/fileexchange/38044-truss-analysis
[6] [Online].Available:
http://www.mathworks.co.uk/matlabcentral/fileexchange/27452-matrix-
analysis-of-three-dimensional-bar-structures-mabs3d
[7] [Online].Available:
http://www.mathworks.co.uk/matlabcentral/fileexchange/14020-space-truss-
systems-as-linear-static-analysis/all_files
[8] [Online].Available:
http://www.mathworks.co.uk/matlabcentral/fileexchange/6832-3d-truss-
analysisuser-interface-in-fem
Books:
115
9.0 Appendix
9.1 Fixed End Forces
d/2 d/2
w
M1 M2
a b
V1 V2
L=a+b
wd
M1 = 12ab2 + L 3b d2
12L2
wd
M2 = 12a2 b + L 3a d2
12L2
wdb M1 + M2
V1 = +
L L
wda M1 + M2
V2 =
L L
P
M1 M2
a b
V1 V2
L=a+b
Pab2
M1 =
L2
Pa2 b
M2 =
L2
Pb2
V1 = b + 3a
L3
Pa2
V2 = a + 3b
L3
116