CU-FSM User`s Manual v1d - Department of Civil Engineering

advertisement
cornell university - finite strip method
CU-FSM
cornell university - finite strip method
Finite Strip Analysis of Thin-walled Members
User’s Manual v1.0d
by Benjamin W. Schafer
ACKNOWLEDGEMENT
The author would like to acknowledge the sponsorship of the American Iron and Steel
Institute (AISI). This software was created to aid research work sponsored by the AISI on
the behavior and design of longitudinal stiffeners.
Introduction
1. INTRODUCTION ..................................................................................................................................... 4
1.1 DOS VERSION VS. MATLAB® VERSION ................................................................................................... 4
1.2 SYSTEM REQUIREMENTS........................................................................................................................ 4
1.3 INSTALLATION OF DOS VERSION ........................................................................................................... 5
1.4 INSTALLATION OF MATLAB® VERSION ................................................................................................... 5
2. THE FINITE STRIP METHOD .............................................................................................................. 6
2.1 THEORETICAL DEVELOPMENT ............................................................................................................... 6
2.2 INTERPRETATING TYPICAL RESULTS ...................................................................................................... 7
3. DOS COMMAND LINE VERSION ...................................................................................................... 10
3.1 WRITING AN INPUT TEXT FILE ............................................................................................................. 10
3.2 RUNNING AN ANALYSIS ....................................................................................................................... 11
3.3 PROCESSING THE RESULTS................................................................................................................... 11
3.3.1 in Microsoft Excel ....................................................................................................................... 11
3.3.2 In other programs ....................................................................................................................... 12
3.4 TROUBLESHOOTING ............................................................................................................................. 12
4. CU-FSM FOR NOVICE MATLAB® USERS ....................................................................................... 13
4.1 STARTING CU-FSM ............................................................................................................................. 13
4.2 OVERVIEW OF USING CU-FSM ............................................................................................................ 13
4.3 THE MAIN PAGE .................................................................................................................................. 13
4.4 THE SIMPLE PRE-PROCESSOR .............................................................................................................. 15
4.5 THE GENERAL PRE-PROCESSOR ........................................................................................................... 16
4.6 SECTION PROPERTIES........................................................................................................................... 18
4.7 ANALYSIS ............................................................................................................................................ 19
4.8 THE SINGLE POST-PROCESSOR ............................................................................................................. 20
4.9 THE COMPARISON POST-PROCESSOR ................................................................................................... 22
4.10 TROUBLESHOOTING ........................................................................................................................... 23
5. CU-FSM FOR EXPERIENCED MATLAB® USERS .......................................................................... 24
5.1 RUNNING FROM THE COMMAND LINE ................................................................................................... 24
5.2 PRINTING TO A FILE .............................................................................................................................. 25
5.3 COMPARING MULTIPLE PLOTS ............................................................................................................. 25
5.4 USING YOUR OWN M-FILES, EXAMPLE: A PARAMETER STUDY FOR LIP LENGTH .................................... 26
3
Introduction
1. Introduction
CU-FSM is a program designed to give the elastic buckling stresses (loads) for any
simply supported thin-walled member subjected to arbitrary stress conditions at its ends.
Once a cross-section is properly defined, the program proceeds by examining a variety of
different lengths for the section. The stress and the shape at which buckling ensues is
recorded for each of the lengths. The resulting “buckling curve” and “mode shape” may
be used to better understand the behavior of the section under consideration.
Since the solution is numerical in nature the geometry of the cross-section may be quite
complicated without greatly increasing the demand on the user. Compared to hand
methods the solution is much more direct. In addition, since full cross-sections may be
modeled, interaction between elements is readily captured. Use of such a numerical
technique hopefully frees the engineer to consider more innovative cross-sections without
greatly complicating the tasks for the engineer.
Warning: CU-FSM only calculates elastic buckling behavior. Just like Pcr for a column,
sometimes the elastic buckling behavior is vital to understanding the member –
sometimes not. It is up to the engineer to appropriately use the output from such an
analysis.
1.1 DOS version vs. Matlab® version
Two versions of CU-FSM come on every disk – one may be run within a DOS window, it
accepts a text file as input and outputs a text file, the other version is completely
graphical and runs within Matlab® v5.
The text input—output version is found in the directory a:\execufsm. The executable
file is a:\execufsm\execufsm.exe. The user is requested to enter an input
filename and an output filename, more on that in section 3.
The files for the graphical version of CU-FSM are in the directory a:\cufsm. The
program may be run by typing a:\cufsm\cufsm at the command prompt in Matlab®
v5. Complete details begin in section 4.
1.2 System Requirements
All of the software was tested on a Pentium PC with MMX running Microsoft Windows
95.
The DOS command line version “execufsm.exe” should run on any Windows 95
machine – it is 32bit console application and therefore may not run on Win 3.1 machines.
This has not been tested.
The Matlab® program “cufsm.p” should run on any machine, PC, Macintosh, UNIX
workstation, etc. that has Matlab® version 5 or greater. The non-graphical routines will
4
Introduction
work on earlier versions of Matlab such as version 4. See section 5 for details on using
CU-FSM from the command line in Matlab directly.
1.3 Installation of DOS version
No specific program has been written for installation. Simply copy the files to the
location you desire on your hard drive. Copy a:\execufsm\*.* and
a:\execufsm\examples\*.* to the directory (folder) of your choice. For the
examples discussed in this manual it will be assumed that you copied the files to
c:\execufsm and c:\execufsm\examples.
1.4 Installation of Matlab® version
No specific program has been written for installation. Simply copy the files to the
location you desire on your hard drive. Copy a:\cufsm\*.* and
a:\execufsm\examples\*.* to the directory (folder) of your choice. For the
examples discussed in this manual it will be assumed that you copied the files to
c:\cufsm and c:\cufsm\examples.
5
The Finite Strip Method
2. The Finite Strip Method
The finite strip method is a specialization of the more general finite element method.
Consider the discretizations of the channel sections shown in Figure 1. The finite strip
discretization is only in the transverse direction. The resulting “long elements” are termed
“strips” – hence the name finite strip method.
finite element
finite strip
Figure 1
If the longitudinal displaced shape is chosen to be a single half sine wave then the
solution simplifies a great deal. In fact, the stiffness matrices for the strip may be
expressed analytically. This simplifying choice for the longitudinal displaced shape limits
the application from handling arbitrary boundary conditions, but creates a solution which
is efficient enough and straightforward enough to be useful for everyday practice.
2.1 Theoretical Development
The finite strip method was originally developed by Y.K. Cheung. An excellent summary
of the method, and the theory behind it, can be found in his book (Cheung 1976). The use
of the finite strip method for understanding and predicting the behavior of hot-rolled steel
members, and cold-formed steel members has been greatly extended by G. Hancock.
Hancock used the stiffness matrices derived in Cheung’s book, and with some
modification, created BFINST (currently named THIN-WALL) – a computer program for
solution of the elastic buckling problem of open thin-walled members via finite strip. His
early work in the field on I-Beams (Hancock 1977, 1978) led to the acceptance and
understanding of the use of the finite strip method. More recently, in a book on coldformed steel design, the use of the finite strip method as a design aid is explicitly shown
(Hancock 1994).
CU-FSM also follows the theoretical development in Cheung. The complete derivation of
the stiffness matrices employed can be found in Schafer (1997). The coordinate directions
and degrees of freedom for a typical strip are shown in Figure 2. Note the rather unusual
choice of the x-z coordinate system. This is consistent with Cheung’s original derivation.
6
The Finite Strip Method
b
y
a
x
1
v1
v2

u1
w1
z
u2
w2
Figure 2
For a member composed of multiple strips the contribution of each strip must be formed
into a global elastic stiffness:
# strips
 K     k n
n 1
and a global geometric stiffness
   k 
Kg 
#strips
n 1
g n
.
The summation implies proper coordinate transformations and correct addition of the
stiffness terms in the global coordinates and degrees of freedom.
The elastic buckling problem is then a standard eigenvalue problem
 K d    K g d  .
 
Where the eigenvalues , are the buckling load, and the eigenvectors the buckling modes.
Both [K] and [Kg] are a function of the length, a. Therefore, the elastic buckling stress
and the corresponding buckling modes are also a function of a. The problem can be
solved for several lengths, a, and thus a complete picture of the elastic buckling stress and
modes can be determined.
2.2 Interpreting Typical Results
Consider the analysis of a channel section in pure compression with a 5” web, 2.5”
flanges, 1” lips a thickness of 0.04” and a reference input compression stress of 1 ksi as
shown in Figure 3.
7
The Finite Strip Method
Figure 3
After analyzing at a variety of lengths ranging from 1” to 1000” the result is the following
“buckling curve”. The horizontal axis is the half-wavelength, the vertical axis is the load
factor. The labeled points indicate numerically observed minimums.
Figure 4
The first minimum occurs at a length of 7.0 and a load factor of 2.79. The mode shapes
for this minimum are shown in both 2D and 3D in Figure 5. You can see that this
corresponds to the local buckling mode. The buckling stress is 2.78 times the input stress.
In this case the input stress is 1 ksi, so the elastic buckling stress is simply 1  2.79 ksi.
Figure 5
The second minimum occurs at a length of 70.0 and a load factor of 9.82. The mode
shapes of Figure 6 show this to be the distortional mode.
8
The Finite Strip Method
Figure 6
Note that for long lengths the curve drops of yet again. This is the classic column
buckling mode – in this case shown in Figure 7.
Figure 7
Note that special attention was given to the minimums in these curves. Why is little
attention given to the “upwards” branches of the curve? The reason is that the previous
minimum would still control. This is due to the difference between the true displaced
shape and the assumed single half sine wave shape..
In addition, the minimum points reveal the fundamental buckling modes. Given a choice
the elastic analysis tells us that the member would buckle into sine waves that repeat
themselves at a half-wavelength equal to the corresponding minimum wavelengths.
The finite strip method reveals several different elastic buckling modes for the member.
This is fundamentally different than predicting only the local buckling stress based on
assumptions about how the elements will or will not interact. This ability to pick up the
different modes is one of the reasons that the method is so useful.
9
DOS Command Line Version
3. DOS Command Line Version
3.1 Writing an Input Text File
An input file may be written in any text editor you choose.
Also, inputting the data in Microsoft Excel and then pasting into a text file appears to
work without any problem.
The analysis requires information on the material properties (the general case of an
orthotropic plate is considered), the nodal information and stress, the element
connectivity and thickness, and the half-wavelengths to be analyzed.
The basic format for the input file is:
#nodes #elements #lengths
Ex Ey x y G
node# xcoordinate zcoordinate xDOF zDOF yDOF DOF stress
[repeat until all nodes are defined].
element# nodei nodej t
[repeat until all elements are defined].
len1 len2 . . .[enter a total of #lengths lengths]
Where, the variables used in this text file may be described as:
#nodes
#elements
#lengths
Ex
Ey
x
y
G
node#
Xcoordinate
zcoordinate
xDOF
zDOF
yDOF
DOF
stress
element#
Total number of nodes defined.
Total number of elements defined.
Total number of lengths to be analyzed.
Modulus of Elasticity in the x-direction.
Modulus of Elasticity in the y-direction.
Poisson’s ratio in the x-direction.
Poisson’s ratio in the y-direction.
Shear modulus.
A node number.
x coordinate of node#
z coordinate of node#
Longitudinal (along the element) x degree of freedom of node# (1 =
free, 0 = restrained.)
Longitudinal z degree of freedom of node# (1 = free, 0 = restrained.)
Longitudinal y degree of freedom of node# (1 = free, 0 = restrained.)
Longitudinal rotational degree of freedom of node# (1 = free, 0 =
restrained.)
Stress at the node. (The stress is linearly interpolated from node to
node.)
A element number
10
DOS Command Line Version
nodei
Nodej
T
Len1
len2
First node (end i) which defines an element.
Final node (end j) which defines an element.
Thickness of the element.
First length to be analyzed
Second length to be analyzed. . ..
3.2 Running an Analysis
Assuming that the program has been installed in c:\execufsm then the procedure for
running the input file c:\execufsm\input.txt is as follows:
1. Go to the location of execufsm.exe and double click on the icon or
2. Go to the DOS prompt and type c:\execufsm then execufsm.
The result is:
-----------------------------------------------CU-FSM -- Cornell University Finite Strip Method
-----------------------------------------------Command Line Executable Version 1.0 Nov. 10,1997
------------------------------------------------
Enter the filenames within single quotes, for
example 'input.txt' is a valid entry.
Please Enter the input filename: 'input.txt'
Please Enter the output filename: 'output.txt'
[The analysis then proceeds through the lengths, reporting each length
as it finishes.]
---------------Analysis Complete---------------3.3 Processing the Results
During the analysis the user is asked to give the filename for the output. The generated
output file is ascii text. The information is delimited by spaces. The buckling curve
(length vs. load factor) and the mode shapes for each individual length are given in the
output file.
3.3.1 in Microsoft Excel
Start Microsoft Excel. Select “File”-“Open”, then change “Files of Type” to “All Files”.
Select your output file and hit the “Open” button. Select “delimited” and then “Next”.
Check the box marked “Space” and uncheck the “Tab” box. Hit “Finish” the output file
should properly import into Excel.
Once the data is into Excel, scatter plots of the buckling curve and mode shapes will
show all the necessary information. Highlight the appropriate data, select “Insert”-“Chart”
and answer the Chart Wizard questions. Make sure to select scatter plot. Do not select a
11
DOS Command Line Version
line plot, in Excel a line plot assumes the x-data is equally spaced, this is usually not the
case in engineering applications – therefore always use scatter plot.
3.3.2 in other programs
Other programs that have automatic text import should have no problem with this data
file. However, only importing into Excel was checked.
If it is desired to write your own program to read the data file this should be a relatively
straightforward task. The length of all the data can be found in the first line of the input
file. The number of lengths used and the number of nodes analyzed are the primary
variables needed in order to determine the length of the output file. Before writing your
own software I highly recommend investigating the Matlab® version of CU-FSM – it can
already do much of what you want. Plus, within the Matlab environment you have
complete control over all the routines used in the analysis – including the post-processing.
3.4 Troubleshooting
Use of a text file for input creates a rather unforgiving interface. If the number of nodes,
number of elements, or number of lengths is wrong in the first line of the text file the
analysis will not work. Most likely the error will say “divide by zero.” The input text file
must be carefully checked.
Use spaces to delimit the numbers in the input text file, not commas. Tabs should work
fine, but if you experience a problem, by all means remove them.
EXECUFSM.EXE has not been checked for DOS on Win 3.1 machines.
Remember compression stresses are positive.
Still no luck? Perhaps you should try bothering the author – e-mail bs19@cornell.edu.
12
CU-FSM for novice Matlab® users
4. CU-FSM for novice Matlab® users
CU-FSM has been designed to work for those who have no Matlab® experience. If you
are familiar with Matlab® you will be able to reap the advantages of more advanced
capabilities. However, for the typical user it is not required to know even elementary
commands.
4.1 Starting CU-FSM
Once you have installed Matlab® v5 or higher, double click on the icon and start Matlab®.
Assuming you have installed the files for CU-FSM under c:\cufsm then type the
following at the Matlab command line:
» cd c:\cufsm
(If you installed the program in a different directory then use cd to go to the appropriate
place.) Now simply type
» cufsm
the program should begin.
4.2 Overview of Using CU-FSM
CU-FSM is a complete graphical interface for finite strip analysis of thin-walled
members. The program consists of a pre-processor, section properties, analysis stage, and
post-processor.
Each of the parts of CU-FSM will be discussed briefly in the following sections. It is
hoped that for the most part a person will be able to input a file, analyze, and investigate
without significant aid from these instructions.
4.3 The Main Page
Upon starting CU-FSM within Matlab® the user is greeted by the main page. The main
page provides the way to perform analysis and get into the pre and post processors.
13
CU-FSM for novice Matlab® users
Figure 8
Two pre-processors are at the disposal of the user.
The simple input pre-processor is for non-branching isotropic thin-walled members.
Typical channel, zeds, and hats all fall into this category. The requirements for input are
greatly reduced for these types of sections.
The general input pre-processor allows complete control over the input file. All the
characteristics described in the text input file (section 3.1) may be changed using this preprocessor. Also, some advanced features are available in this pre-processor that are not
available in the simple input pre-processor. Select the General Input radio button and then
the Pre-Processor button to execute this pre-processor.
The Section Properties button allows one to examine the section properties of a member
entered in the pre-processor. It also calculates the yield moments and squash load based
on a user inputted yield stress. In addition, stress distributions based on entering in a
moment or load for the entire cross-section may be generated here. This avoids the
sometimes tedious task of determining the desired stress at every node.
To perform an analysis simply select the Analyze button.
Two different post-processors are at the disposal of the user as well.
The One Analysis Only post-processor is for the complete analysis of one finite strip
run. The interface allows the buckling curve and the mode shapes in both 2D and 3D to
be examined.
14
CU-FSM for novice Matlab® users
The Compare Two Runs post-processor allows the buckling curve and 2D mode shapes
of two different analyses to be directly compared. Select the Compare Two Runs radio
button and then the Post-Processor button to execute this post-processor.
4.4 The Simple Pre-processor
After selecting the simple input pre-processor from the main page the window shown in
Figure 9 appear. Press the plot button to see the shape and the loading.
A default section is provided when the section begins. To modify this section simply
highlight any data in yellow and change the number to the desired value.
Figure 9
For a non-branching cross-section in which the nodes may be numbered consecutively as
the elements are defined the input is particularly simple.
Enter the node number, the x coordinate, the z coordinate and the stress on the node to
define your section. Remember from Figure 2 that the z coordinate is positive down, and
a positive stress is compression.
Modify the material properties and the lengths to be analyzed as you see fit. Consistent
units must be used.
When modifying the lengths, each length to be analyzed may be explicitly entered in
order, or you may enter in starting values, ending values and increments. For instance
entering “10:10:100” is equivalent to entering in “10 20 30 40 50 60 70 80 90 100”.
At any time you may plot your cross-section and stress to make sure you are entering in
correct values.
15
CU-FSM for novice Matlab® users
Upon completion hit the Save button and give a filename. An extension of .mat will
automatically be added to the filename.
Of course you may load any file into the simple input pre-processor as well. Simply use
the Load button and select the file.
You may exit this page and return to the main page by selecting the exit button in the
upper right corner.
4.5 The General Pre-processor
After selecting the general input pre-processor from the main page the window shown in
Figure 10 appears. Press the plot button to see the shape and the loading.
A default section is provided when the section begins. To modify this section simply
highlight any data in yellow and change the number to the desired value.
Figure 10
The general pre-processor allows complete control of the input file. The result is that a
significant amount of input is required of the user.
The material properties must first be defined. Ex, Ey, x, y, and G are required to define
the orthotropic plate properties. (Of course for an isotropic plate Ex = Ey, x, = y, and G
is uniquely defined by E and ). See Figure 2 for the coordinate directions and section 3.1
for further discussion of these properties.
The next input that is required is all of the nodal information. A typical row requires the
user to define the: node#, xcoordinate, zcoordinate, xDOF, zDOF, yDOF, DOF, and stress. The node#
is the number for the node being defined. The x and z coordinates (xcoordinate zcoordinate)
come next. Then the longitudinal degrees of freedom (xDOF zDOF yDOF DOF). These define
16
CU-FSM for novice Matlab® users
whether or not any of the degrees of freedom are supported along the entire longitudinal
edge. A 1 for a DOF corresponds to a free state, a 0 a fixed state.
For a member all of the degrees of freedom should be 1 as shown in Figure 10. This
means that no support is provided longitudinally – only the usual simple support at the
ends. In some cases restraint along the longitudinal edge is desired. For instance, an
isolated plate in which the longitudinal edges are simply supported would have xDOF and
zDOF at the supported edge = 0 instead of the usual 1.
The last entry is the stress at the node. Compression stresses take positive values. Stresses
are linearly interpolated across the elements.
The next input that is needed is the element connectivity. This tells CU-FSM how the
elements connect to the nodes as well as the thickness of the element. Four inputs are
required: element#, nodei, nodej, and t. The number of the element goes in the first
column, then the two nodes which define the element go in the nodei and nodej column.
Finally the thickness is entered in the t column.
The final input is the half-wavelengths to be analyzed. When modifying the lengths, each
length to be analyzed may be explicitly entered in order, or you may enter in starting
values, ending values and increments. For instance entering “10:10:100” is equivalent to
entering in “10 20 30 40 50 60 70 80 90 100”.
Figure 11
An added feature for the general pre-processor is the ability to automatically generate
more elements in a given cross-section. (In finite element parlance: you are creating a
“finer mesh” by using more elements.) The number of elements may be doubled by
pressing the Double Elem. button.
17
CU-FSM for novice Matlab® users
Figure 11 shows the result of pressing the Double Elem. button for the member being
analyzed in Figure 10. The number of elements is doubled and the node numbers and
element numbers are appropriately updated and reported to the screen.
At any time you may plot your cross-section and stress to make sure you are entering in
correct values.
Upon completion hit the Save button and give a filename. An extension of .mat will
automatically be added to the filename.
Of course you may load any file into the general input pre-processor as well. Simply use
the Load button and select the file.
You may exit this page and return to the main page by selecting the exit button in the
upper right corner.
4.6 Section Properties
After selecting the section properties button from the main page the user is immediately
requested to select a file for analysis. Once this is completed the section properties
module appears.
Figure 12
The module consists of three pieces. The Section Properties piece which is found in the
upper portion of the module reports the section properties for the selected file. The
second piece allows the user to calculate the yield load and/or moments for the member.
The final piece allows the user to generate stress distributions for use in subsequent
analysis.
18
CU-FSM for novice Matlab® users
In the example shown in Figure 12 a Z section has been selected. A yield stress of 55 ksi
has been entered and the “Calculate” button has been pushed. The yield moment about
the x-x axes has been entered in the Stress Distribution section and the “Generate” button
has been pushed. If it is desired to use this stress distribution for a subsequent analysis the
“Save” button should be selected.
As a default the yield moments and generated stress distribution reflect the unsymmetric
bending nature of the problem. Thus, the generated stress distribution for the moment
about the x-x axes varies in the x and z direction for a Z section.
If the restrained bending option is selected the yield moments and stress distribution may
be recalculated assuming the bending is forced around the x-x or z-z axes. The result is
shown in Figure 13. The stress distribution for the section now only varies linearly in the
z direction for a moment about the x-x axes.
Figure 13
You may exit this page and return to the main page by selecting the exit button in the
upper right corner.
4.7 Analysis
Analysis proceeds from the main page (Figure 8). Simply select the Analysis button and
then select the file to be analyzed. A wait bar will come up showing you the progress of
the analysis. Upon completion of the analysis select the post-processor and examine the
data.
19
CU-FSM for novice Matlab® users
4.8 The Single Post-processor
Upon selecting the Post-Processor button from the main page and then selecting a file a
screen similar to Figure 14 will appear.
Figure 14
The post-processor allows a complete examination of the buckling mode shapes and the
buckling curve. The controls for the buckling mode shape are in the upper left. The
controls for the buckling curve are in the lower left.
For the buckling mode, the most important controls are the arrows which select the length
to be plotted. By selecting up or down any of the analyzed lengths may be selected. Once
a length is chosen then the mode may be plotted by selecting Plot Mode.
Typically the best way to see the mode shape is a 2D plot with the undeformed shape
plotted as well. The 2D plots in Figure 5 - Figure 7 show this type of output. This is the
default plotting mode in the post-processor.
However, at times this is not the best way to understand what the analysis is doing. By
selecting the 3D radio button and turning off the deformed shape one can get a very clear
picture of how the finite strip analysis works. For the default example in the pre-processor
this is done for the length corresponding to the local mode – and shown in Figure 15.
20
CU-FSM for novice Matlab® users
Figure 15
In order to examine the loading on the member select the Plot Stress button. This will
show the undeformed cross-section and the load that is on the member. If details about
the member geometry are needed the user will need to go back to the pre-processor and
load the appropriate file.
The options for plotting the buckling curve allow for complete control over the axis
limits. Simply select the new desired limits and then press the Plot Curve button.
If the Min. radio button is selected then the numerically determined minimum points will
be reported on the curve. The minimum is reported as an x,y pair so the (wavelength,load
factor) are the numbers reported to the screen.
If the “load factor” is an unfamiliar concept please see section 2.2.
If the Log X radio button is selected then the curve will be plotted with a log scale for the
x axis. In Figure 15 a curve in which the ymax, min., and Log X have all been modified
from the default choices is shown.
A text version of the buckling curve may be readily generated if the user is unfamiliar
with Matlab® and would like to use the data in another program. Simply select Text
Output and give the filename.
You may exit this page and return to the main page by selecting the exit button in the
upper right corner.
21
CU-FSM for novice Matlab® users
4.9 The Comparison Post-processor
Upon selecting the Compare Two Runs radio button and then the Post-processor button
the comparison post-processor will begin. The comparison post-processor is similar to the
single post-processor, but allows for two analyses to be examined.
[Note: the comparison post-processor was created from an older version of the single
post-processor, some of the buttons do not work quite the same and there is no 3D plots –
however the rest of the functionality is similar.]
The user is queried for both the first and second input files before the post-processor
begins. The buckling curve and the mode shapes are plotted by selecting Plot Mode and
Plot Curve. The first input file is in the top left. The filename is reported just below the
mode shape. The filename is color coded to the curve which plots below.
The second input file is in the upper right – its filename is also color coded to the curves
outputted in the buckling curve.
The analysis of the default channel section loaded first in flexure and then in pure
compression is shown in Figure 16. The local modes are plotted for each of the analyses.
The member in compression shows a dominant local web buckle, while the member in
flexure has a dominant local flange buckle.
Of the two curves shown in the buckling curve – the member in compression is the lower
one.
Use of this post-processor for comparing the affect of geometric changes, loading
changes, discretization etc. should be apparent.
Figure 16
22
CU-FSM for novice Matlab® users
4.10 Troubleshooting
I can’t get CU-FSM to start?
– You must have Matlab® version 5.0 or greater to run the program. You must be in the
correct directory to run the program. Use cd at the Matlab prompt to change directories.
I get a divide by zero error when I try to analyze?
– This will happen for a member that is only under tension, remember compression
stresses should be positive.
I went to the post-processor but nothing plotted?
– The same file is used for input and output. Make sure you have run the analysis and that
you have the correct file selected for use in the post-processor. Also, you have to select
the Plot buttons, a plot is not automatically completed when the program starts.
I want to increase the number of elements of a simple member.
– The best way to accomplish this is to enter in only the corner coordinates and load in
the simple pre-processor. Save the file – then go to the general pre-processor, load the
file, select the Double Elem. button the desired number of times, then save again.
My buckling curve is “jaggy” not smooth.
– You need to increase the number of lengths you are analyzing. Remember when
entering in the lengths you do not have to explicitly enter in every length you can use
ranges. For instance “1 5 10:10:50 100” will cause analyses to be performed at “1 5 10 20
30 40 50 100”.
I want to compare several runs, not just two runs.
– For large parameter studies you should use the Matlab® functions directly. More on that
in the following section.
Still no luck? Perhaps you should try bothering the author – e-mail bs19@cornell.edu.
23
CU-FSM for experienced Matlab® users
5. CU-FSM for experienced Matlab® users
For the purposes of this discussion an experienced Matlab® user should be comfortable
with the difference between the command line and writing m-files. Familiarity of the
syntax for Matlab® programming will be advantageous for understanding some of the
examples. Several excellent books exist which explain the basics of Matlab® if you want
to take full advantage of CU-FSM it would serve you well to get one of these books.
Matlab® is a powerful tool for the engineer. If you use Matlab® for a few weeks, never
again will you write a FORTRAN program or use QuickBasic.. Most likely other staples
in your analysis diet such as Excel will also see limited use. Enough advertising – let us
get to the details.
All of the routines for CU-FSM are available as m-files. Thus a user can access any or all
of the routines by calling them from the command line in Matlab, or from within their
own m-files. This allows complete flexibility in how CU-FSM is used.
5.1 Running from the command line
The m-file that actually performs the finite strip analysis is called “strip”. This m-file
requires 4 matrices: prop, node, elem, lengths.
These four matrices are the exact same as the inputs used in the graphical pre-processors.
For instance let’s say we are going to analyze an angle 3”x3”x0.08” in pure compression
with a stress of 10 ksi, with only 2 elements. At the command line enter:
» prop=[29000 29000 0.3
» node=[1 0.0 0.0 1 1 1
2 0.0 3.0 1 1 1
3 3.0 3.0 1 1 1
» elem=[1 1 2 0.08
2 2 3 0.08];
» lengths=[1:1:10];
0.3 29000/(2*(1+0.3))];
1 10.0
1 10.0
1 10.0];
To run the analysis make the call to the m-file strip by:
» [curve,shapes]=strip(prop,node,elem,lengths)
The two output variables (matrices) are curve and shapes. Curve is the buckling
curve in the first column is the lengths analyzed, in the second column is the mode
shapes. You may get a quick look at the buckling curve by plotting the first column vs.
the second column:
» plot(curve(:,1),curve(:,2))
24
CU-FSM for experienced Matlab® users
This obviously seems more cumbersome than using the graphical interface, but all of the
above statements could have been made in an m-file. Thus the process can be automated
without ever having to deal with the graphical interface.
5.2 Printing to a file
Obviously you may use a screen capture at anytime during CU-FSM to get a printout.
However, this may not always be satisfactory. Matlab includes a number of ways to print
out figures. Currently CU-FSM only supports these through the command line.
For instance to print the current figure as an encapsulated postscript select the Matlab
command window then type
»print -deps -tiff filename
In Word use the Insert-Picture command to bring in the picture file. If you are printing to
a postscript printer the quality should be quite good.
You may also use the print command to “copy” the current figure to the clipboard. Type:
»print -dmeta
or
»print -dbitmap
A plethora of printing and copying options exist – type “help print” at the Matlab®
command line and dig in.
[Note: Getting Matlab® figures into word processors qualifies as one of those, computer
programmers don’t quite “get it” events. The best method for quality that I have found is
the encapsulated postscript file – but you should experiment.]
5.3 Comparing Multiple Plots
It is quite possible that you have three or more buckling curves that you would like to
examine at the same time. You may readily compare these curves by loading the curves
into the workspace and then plotting all three of them at once.
If the data is in data1.mat, data2.mat, data3.mat, then:
»load data1
»curve1=curve;
»load data2
»curve2=curve;
25
CU-FSM for experienced Matlab® users
»load data3
»curve3=curve;
»plot(curve1(:,1),curve1(:,2),curve2(:,1),curve2(:,2),curve3
(:,1),curve3(:,2))
»legend(‘data1’,’data2’,’data3’)
This will create a plot of the three buckling curves and a legend. You may label the axes,
title the plot, etc. Simply type “help plot” and then examine some of the options shown
there, such as xlabel, ylabel, axis, title. . ..
5.4 Using your own m-files, Example: A parameter study for lip length
The following is a detailed example of how to do your own parameter study and
employing some of the routines from CU-FSM.
As an example consider a parameter study on a channel section in pure compression in
which it is desired to learn the affect of increasing the lip length on the elastic buckling
characteristics. Only one dimension the lip length is a variable, in this example the rest
are constants.
So an analysis must be done for each of the lip lengths to be analyzed. The four matrices
prop, node, elem, and lengths will be needed for the analysis. This type of
parameter study is actually quite straightforward now:
The complete m-file is given here:
%param_example.m
%Parameter Study Example Problem
%
%Consider a channel section with varying lip length in pure compression
%Millimeters are selected for length, Newtons for force, MPa = N/mm^2 for stress
%compression stress of 10MPa is examined
%
%
%The basic variables will be
%h = the web height
%b = the flange width
%d = the lip length
%t = thickness
%
h=100; %mm
b=30; %mm
d=[5 9 13 17]; %mm
t=1; %mm
%
%Define the material properties
prop=[2.03E5 2.03E5 0.3 0.3 2.03E5/(2*(1+0.3))];
%
%Define the lengths
lengths=[10:10:100 150:50:1000];
%
%Enter in a loop where the lip length is varied an analysis is run
for i=1:length(d)
node=[1 b
d(i)
1 1 1 1 1.0
2 b
0.0
1 1 1 1 1.0
3 0.0 0.0
1 1 1 1 1.0
4 0.0 h
1 1 1 1 1.0
5 b
h
1 1 1 1 1.0
6 b
h-d(i) 1 1 1 1 1.0];
elem=[1 1 2 t
2 2 3 t
26
CU-FSM for experienced Matlab® users
3 3 4 t
4 4 5 t
5 5 6 t];
%double the number of elements to improve the discretization
[node,elem]=doubler(node,elem);
%perform the finite strip analysis
[curve,shapes]=strip(prop,node,elem,lengths);
%assign the curve name -- not a pretty way, but explicit. (Type help eval for a
%nicer way to do this same function but with variables.
if i==1
curve1=curve
elseif i==2
curve2=curve
elseif i==3
curve3=curve
elseif i==4
curve4=curve
end
end
%
save curves curve1 curve2 curve3 curve4 %in case a different program is used.
%
figure(1)
plot(curve1(:,1),curve1(:,2),'-o',curve2(:,1),curve2(:,2),'-x',...
curve3(:,1),curve3(:,2),'-s',curve4(:,1),curve4(:,2),'-d') %plot solid lines w/ symbols
axis([0 1000 0 400])
title('Buckling Curves from Parameter Study')
legend('d=5','d=9','d=13','d=17')
xlabel('half-wavelength (mm)')
ylabel('Buckling Stress (MPa)') %because a reference load of 1MPa was used this is
%the buckling stress instead of just the load factor
The result of running this analysis is the curves in Figure 17. You can clearly see the
influence of increasing the lip length on this member. Analysis at longer lengths would
show the classic long-wavelength column buckling modes.
Figure 17
The entire finite strip analysis is contained within the line
[curve,shapes]=strip(prop,node,elem,lengths);
Also the doubler m-file is used to provide a reasonable discretization to the member, but
without having to define lots of extra elements.
27
References
The ability to perform parameter studies and batch process large amounts of finite strip
analysis is beneficial for thorough studies on the behavior. Several parameters may be
varied an investigated.
The analysis may be further automated by picking the minimums off of the curve. The
applications for this type of approach are quite general and numerous.
6. References
Cheung, Y.K. (1976). Finite Strip Method in Structural Analysis. Pergamon Press, New
York.
Hancock, G.J. (1977). “Local, Distortional and Lateral Buckling of I-Beams.” Research
Report, School of Civil Engineering, University of Sydney. R312.
Hancock, G.J. (1978). “Local, Distortional and Lateral Buckling of I-Beams.” Journal of
the Structural Division, ASCE. 104(11).
Hancock, G.J. (1994). Design of Cold-Formed Steel Structures (To Australian Standard
AS 1538-1988). 2nd Edition, Australian Institute of Steel Construction, North
Sydney, Australia.
Schafer, B.W. (1997) Cold-Formed Steel Behavior and Design: Analytical and Numerical
Modeling of Elements and Members with Longitudinal Stiffeners, Ph.D.
Dissertation, Cornell University, Ithaca, NY
28
Download