Professional Documents
Culture Documents
Using Spreadsheets To Demonstrate The Stiffness Method in Structural Analysis
Using Spreadsheets To Demonstrate The Stiffness Method in Structural Analysis
Structural Analysis
Peter W. Hoadley
Abstract
A course in matrix methods of structural analysis has become a standard elective for
undergraduate civil engineering students especially since the advent of the personal computer.
Teaching a student to program the stiffness method using FORTRAN or BASIC is a tedious task.
Students often lose sight of the process as they struggle with logic and syntax. The spreadsheet is a
tool that allows students to better visualize the logic and reduces the work necessary to eliminate
syntax errors. . This paper describes how spreadsheet software was used to demonstrate the
stiffness method of structural analysis to a class of senior level civil engineering students. The
process is described for a simple truss, a simple frame and a shear wall. The success of using the
spreadsheet is discussed along with some of the problems encountered.
Introduction
The heart of the stiffness method of structural analysis is the solution of a large system of
equilibrium equations. This large system of equations is developed from simple element matrices
that represent relationships between member forces and displacements in a global axis system. This
process has been programmed in commercial software. The user need only provide information
regarding geometry, material and crosssectional properties, loads and boundary conditions. These
software are useful in showing students what can be done with the stiffness method but are not
useful in demonstrating the process involved.
The spreadsheet is the perfect tool to demonstrate the basics of the stiffness method. This
paper describes how spreadsheet software was used to demonstrate the stiffness method of
structural analysis to a class of senior level civil engineering students. A working knowledge of the
stiffness method of structural analysis is assumed since space precludes a full description of the
process. Detailed explanations of the stiffness method may be found in several texts (Laursen, 1988,
Logan, 1992, McCormac and Nelson, 1997, McGuire, Gallagher and Ziemian, 2000). The stiffness
method of structural analysis was developed fully in class for a simple truss, a frame and a shear
wall. The development of the stiffness method for a simple truss is described here followed by a
brief discussion of the frame and shear wall.
1. Development of the local member stiffness matrices, [LMSM]
2. Development of the transformation matrices, [B], [B] T
3. Development of the global member stiffness matrices, [GMSM]
4. Development of the global structure stiffness matrix, [GSSM]
5. Development of the load/reaction vector, {P}
6. Modification for boundary conditions
7. Solution of the final system of equations for nodal deformations
Development of the local member stiffness matrices, [LMSM]
The local member stiffness matrix, [LMSM], for a truss is composed of the positive or
negative value of the member stiffness, ± AE/L, where A is the crosssectional area, E is the
modulus and L is the length. The spreadsheet is an excellent tool to help a student organize the
necessary input data. Figure 1 shows a spreadsheet that allows the user to input the necessary
Three-Bar Truss
Input nodal coordinates, loads, area and modulus in consistent units F2
F1
Nodal Properties Nodal Forces 2
Node # x y F1 F2
1 2
1 0 0 1000 -1500
2 5 9 3
3 12 5 y 1
3
x
Member Properties
Member # Area Modulus Length Stiffness Angle w.r.t.
x-axis Member Force
1 0.111 1.80E+08 10.30 1.94E+06 60.95 -8.06E+03
2 0.111 1.80E+08 8.06 2.48E+06 -29.74 -1.60E+03
3 0.111 1.80E+08 13.00 1.54E+06 22.62 1.51E+03
Figure 1. Input table for threebar truss.
data to create the [LMSM] for each member of the simple threebar truss shown. For example, the
truss in Fig. 1 has nodes at (0,0), (5,9) and 12, 5) where units are in feet. The area (units in f 2) and
modulus (ksf) must be provided by the user. The spreadsheet computes the length of the member
from the nodal coordinates then computes the member stiffness, as shown in bold the table. These
stiffnesses are used to create the [LMSM]. The [LMSM] for member 1 is shown in Fig. 2.
Development of the transformation matrices, [B], [B] T
The local member stiffness matrix relates axial force, P, in a member to axial deformation,
∆. One must transform the [LMSM] into global coordinates that relate horizontal and vertical nodal
displacements to horizontal and vertical forces. The matrices necessary to transform the [LMSM]
consist of the cosine and sine of a member’s angle with respect to the horizontal. The angle is
computed from nodal coordinates as shown in Fig. 1. Figure 2 shows the transformation matrices
for displacement and force.
Development of the global member stiffness matrices, [GMSM]
The [LMSM] is premultiplied by the transformation matrix for force, [B] T, and post
multiplied by the transformation matrix for displacement, [B], to create the global member stiffness
matrix, [GMSM]. These matrices can be created by the spreadsheet and all matrix operations can be
Global Displacements
1X 0
1Y = 0
2X 1.17E03
2Y 1.12E03
Transformation Matrix for Displacement
1x = 0.486 0.874 0 0 0
2x 0 0 0.486 0.874 0
1.17E03
1.12E03
Local Displacements
1x 0
2x 4.16E04
Figure 2. The [LMSM], [GMSM] and solution for a simple threebar truss
Development of the load/reaction vector, {P}
As stated, the [GSSM] is composed of equilibrium equations at the nodes. The sum of the
internal member forces must be in equilibrium with the external loads and reactions. At this point
the load/reactions vector, {P} may be created. This is a relatively simple vector and can be
generated by hand. Given a certain configuration, a spreadsheet may generate the {P} vector from
the input data. Note that nodal forces F 1 and F2 for the given example are shown in Figure 1 and
must be provided by the student. Figure 3 shows the load and reaction vector for the current
example.
Modification for boundary conditions
In order to solve this system of equations some of the equilibrium equations must be
replaced by boundary conditions. The [GSSM] becomes a combination of equilibrium equations and
boundary conditions and the {P} vector becomes a combination of known external loads and known
displacements. This is a relatively simple process and may be done by hand. Given a certain
configuration the spreadsheet can perform the operations automatically. Figure 3 shows the
modified system of equations.
Solution of the final system of equations for global deformations at the nodes
This modified system of equations may be solved for the horizontal and vertical
deformations at the nodes. The vector containing the known external loads and known deformations
is premultiplied by the inverse of the modified [GSSM]. The spreadsheet is capable of performing
all these computations. The nodal deformations for the current example are shown in Fig. 3.
Computation of member forces
The nodal deformations for each member may be obtained from the solution vector. These
horizontal and vertical deformations may be transformed into axial deformations by premultiplying
by the transformation matrix for displacement. The member axial load may be obtained by pre
multiplying the axial deformations by the local member stiffness matrix. All the information is
contained in the spreadsheet and the spreadsheet may be programmed to perform all operations.
This process is shown in Fig. 2 for member 1 for the current example. The example presented here
may be found in an Excel © spreadsheet at “Threebar truss.xls”.
Global Structure Stiffness Matrix Loads &
1X 1Y 2X 2Y 3X 3Y Reactio
ns
F1X = 1.77E+06 1.37E+06 4.58E+05 8.24E+05 1.31E+05 5.46+E05 1X R1X
F1Y = 1.37E+06 1.71E+06 8.24E+05 1.48E+05 5.46E+05 2.27E+05 1Y R1Y
F2X = 4.58E+05 8.24E+05 2.33E+06 2.44E+05 1.87E+06 1.07E+06 * 2X = 1000
F2Y = 8.24E+05 1.48E+05 2.44E+05 2.09E+06 1.07E+06 6.10E+05 2Y 1500
F3X = 1.31E+05 5.46E+05 1.87E+06 1.07E+06 3.18E+06 5.22E+05 3X 0
F3Y = 5.46+E05 2.27E+05 1.07E+06 6.10E+05 5.22E+05 8.37E+05 3Y R3Y
Modified Global Structure Stiffness Matrix
1X 1Y 2X 2Y 3X 3Y
1X = 0 1 0 0 0 0 0 1X 0
1Y = 0 1Y
0 1 0 0 0 0 0
F2X = * 2X =
4.58E+05 8.24E+05 2.33E+06 2.44E+05 1.87E+06 1.07E+06 1000
F2Y = 2Y
8.24E+05 1.48E+05 2.44E+05 2.09E+06 1.07E+06 6.10E+05 1500
F3X = 3X
1.31E+05 5.46E+05 1.87E+06 1.07E+06 3.18E+06 5.22E+05 0
3Y = 0 3Y
0 0 0 0 0 1 0
Inverse of GSSM
1X
1 0 0 0 0 0 0
1Y
0 1 0 0 0 0 0
1. Development of the local member stiffness matrices, [LMSM]
2. Development of the local fixedend moment vector (If member loads exist)
3. Development of the transformation matrices, [B], [B] T
4. Development of the global member stiffness matrices, [GMSM]
5. Development of the global fixedend moment vector (If member loads exist)
6. Development of the global structure stiffness matrix, [GSSM]
7. Development of the structure fixedend moment vector (If member loads exist)
8. Development of the load/reaction vector, {P}
9. Modification for boundary conditions
10. Solution of the final system of equations for global deformations at the nodes
11. Computation of member forces
The steps are the same as for the truss except for the case when a member is loaded
between the nodes. Of course the terms of the matrices are different since axial load, shear and
moment must be considered. The process is not described here but an example may be found in an
Excel© spreadsheet at “Three-bar Frame – Nodal Loads.xls.”
The process is presented first with a frame with only nodal loads. The process is modified
by considering how member loads change the equilibrium equations at the nodes. The process is
not described here but an example may be found at ““Three-bar Frame – Member Loads.xls.”
Most students seemed to understand the process even though the local member stiffness
matrix for a bending member is more complicated than that for a truss. The addition of member
loads is difficult to understand because the equilibrium equations become more complicated. It
seems that the best way to help students understand the process is to have them complete as many
examples as possible. Students best become familiar with the process the more they use it.
1. Assume that the deformations at a specified number of points within a continuum are
known.
2. Estimate deformations everywhere else within the continuum using interpolation
functions.
3. Estimate strains everywhere within the continuum from the interpolation functions.
4. Estimate stresses everywhere within the continuum from the estimated strains.
5. Develop the equilibrium equations by equating internal work (strain energy) with
external work.
6. Modify the equilibrium equations for boundary conditions.
7. Solve for nodal deformations.
8. Compute nodal stresses and strains.
Interpolation formulas
Before students can understand the finite element method they must understand
interpolation functions. For simplicity, linear interpolation functions were used with a triangular
continuum as shown in Fig. 4. If the inplane horizontal and vertical deformations are known at the
vertices of the triangle, the deformations everywhere within the triangle can be estimated using the
following:
u(x,y) = a1 + a2x + a3y
v(x,y) = b1 + b2x + b3y
where u and v are horizontal and vertical deformations, x and y are coordinates of a point within the
continuum and the coefficients a and b are a function of the nodal deformations. The computation
of the coefficients a and b is discussed in class but will not be discussed here.
Since this is such an important concept for students to grasp it is useful to have the students
plot the deformed shapes of triangles given deformations of the vertices and to compute
deformations within the triangle. For example consider the triangle in Fig. 4 with the deformations
at the vertices shown in Table 1. The deformed shape of the triangle is shown in the Fig. 4 and the
interpolation functions are:
u(x,y) = 7.86 + 1.43x/100 + 2.5y/100
v(x,y) = 9.52 + 1.71x/100 – 1.67y/100
CoordinatesDeformationsNodexyuv120020
0002900200101232008001510A4003005.361.76
A
1 2
Figure 4. Triangular Continuum
The deformation of point A in the triangle (see Fig. 4 and Table 1) is given by substituting the
coordinates of point A into the interpolation functions. This gives the deformation of point A to be
5.36 in the xdirection and 1.76 in the ydirection as listed in Table 1.
Computation of Nodal Deformations
Once the deformations are defined within the continuum the strains may be computed using
kinematic equations and the stresses may be computed using constituitive equations. Once the
stresses are known the internal strain energy for the continuum may be computed and is set equal
to the external work. This set of matrices is modified for boundary conditions and then the
deformations at the nodes may be computed. Once the nodal deformations are known then
deformations within the continuum may be estimated and strains and stresses may be computed.
An example of a shear wall may be found in an Excel © spreadsheet at “Shear Wall.xls”.
Comments
The energy formulation was not understood well by the students. Even so they seemed to
understand the behavior of a single triangle. It is only when a continuum was divided into several
triangles that the student had trouble. As before, the formation of the the global structure stiffness
matrix was difficult for the student to understand.
Conclusion
The stiffness method is a powerful tool for the analysis of complicated structures. It is important for
the engineer to understand the stiffness method in order to use better commercially available
software. The spreadsheet is a useful tool in helping students understand the process involved in
the stiffness method.
Laursen, H.L., (1988), Structural Analysis, McGraw Hill, New York.
Logan, K.L., (1992), A First Course in the Finite Element Method, PWSKent, Boston.
McCormac, J.C. and Nelson, Jr., J.K., (1997), Structural Analysis – A Classical and Matrix
Approach, AddisonWesley, Reading, MA.
McGuire, W., Gallagher R.H. and Ziemian, R.D., (2000), Matrix Structural Analysis, John Wiley &
Sons, Inc. , New York.