You are on page 1of 7

And regarding the Compression only spring option i have one doubt

whether you apply loads combinations as the basic loads or u define basic loads and load combinations
i.e whether u apply Dl and LL as two basic loads
and define a combination DL+LL
or
apply the basic load by combining Dl+LL and analyse it
because compression only spring is a non linear analysis
and staad simply adds the responses in combinations you will not get correct results unless each and
every combination shall be defined as a primary load cases and no load combination should be applied
You can any use any option from the Staad
but i found Plate mat option is the better one
what ever the option you choose make sure tick the option print influeance areas of support
and make sure that there is no warning regarding the influence area
cross check the total influence area should be equal to the area of the foundation
if you use Elastic mat option chances are that your influences for certain elements are very high in
irregural meshing (traingular and even observed in some cases of 4 noded elements also)
in such cases using Plate mat option has given correct results

1. STAAD.Pro Tips and TricksCarlos Aguera24th May 2011


2. 2. Agenda The following are the topics to be covered in this workshop of STAAD.Pro Tips
and Tricks 1) Macros and OpenSTAAD 2) Stage Construction 3) Foundations 4)
Buckling Analysis 5) Angle Profiles |2
3. 3. 1) Macro using OpenSTAAD and VBA Objective To create a macro to review the results
of a model and display the maximum displacement from a user selection of nodes. Create a
VBA project Create and use an OpenSTAAD Object Test STAAD.Pro is open and a model
loaded. Get analysis results from STAAD.Pro Display a dialog with results in STAAD.Pro |4
4. 4. OpenSTAAD What is OpenSTAAD? ASCII Input data (*.STD) Output data (*.ANL)
Binary Results (*.BMD, REA, DSP..) Inside STAAD.Pro in a macro External using
ANY suitable environment (but STAAD.Pro must be running locally in the background) |5
5. 5. STAAD.Pro Macro GUI To Create:- Menu, Edit>Create New VB Macro Menu,
Edit>Edit Existing VB Macro To Use:- Menu, Tools>Configure User Tools Toolbar |6
6. 6. Start a new Project Open the STAAD example file, EXAMP08.STD Start a new VB
Macro project from the menu Edit>Create New VB Macro Navigate to My Documents,
enter the file name:- BE Together 2011.VBS and click New |7
7. 7. Create the macro Create an instance of OpenSTAAD Object. Sub Main () Dim oStd
As Object Set oStd = GetObject(,"StaadPro.OpenSTAAD") .. Set oStd = Nothing
Exit Sub |8
8. 8. Check your work, Test 1 Add a break point by clicking on in the grey column to the right of
the line:- Set oStd = Nothing Run the macro by clicking on the green arrow |9
9. 9. Check that a file is loaded Add the following after the line that creates the OpenSTAAD
object:- Dim stdFile As String oStd.GetSTAADFile(stdFile,"TRUE") If stdFile = "" Then

10.

11.

12.

13.

14.

15.

16.

17.

18.

19.

MsgBox "This macro can only be run with a valid STAAD file loaded.", vbOkOnly Set oStd
= Nothing Exit Sub End If oStd.GetSTAADFile(stdFile,"TRUE") is the first use of the
OpenSTAAD object created in the previous step. | 10
10. Check your work, Test 2 Add a break point by clicking on in the grey column to the right
of the line:- oStd.GetSTAADFile(stdFile, "TRUE") Run the macro by clicking on the green
arrow Click on the Step Over icon on the toolbar and hover over the text stdFile. This
should display the file name and path of the currently open STAAD file. | 11
11. Getting Load Case data Add the following after the End If test to see if a file is loaded: Dim i as Integer Dim LCases As Integer Dim lstLoadNums() As Long Dim lstLoads()
As String LCases = oStd.Load.GetPrimaryLoadCaseCount() ReDim
lstLoadNums(LCases) ReDim lstLoads(LCases)
oStd.Load.GetPrimaryLoadCaseNumbers lstLoadNums For i =0 To LCases-1
lstLoads(i)= CStr(lstLoadNums(i)) &" : " & oStd.Load.GetLoadCaseTitle(lstLoadNums(i))
Next i | 12
12. Create a dialog to select a load case Add the following after the units:- Dim nResult
As Integer Dim LCName As String Dim LoadCase As Long Then with the cursor located
after these click on the Edit User Dialog icon on the toolbar to add a dialog | 13
13. Adding controls Add OK and Cancel buttons Add a text string, Double click on it and
change the caption to Load Case Click on the >> button and change the caption of the
dialog box to Select Load Case Click on the List box icon and add it onto the dialog box,
resize it so that it better fits the space. Click on the Save and Exit Icon. | 14
14. Display the load case names Note how the new commands have been added To
display the load change:- ListBox 40,49,320,70,ListArray(),.ListBox1 To ListBox
40,49,320,70,lstLoads(),.ListBox1 Save and Run the macro:- | 15
15. Handle a Cancel request To find out if a button was pressed change the line:- Dialog
dlg To nResult = Dialog (dlg) Add the following immediately after:- If nResult <> -1
Then Set oStd = Nothing Exit Sub End If | 16
16. Get the requested load case If the cancel was not pressed, then the selected item in the
list should be converted to the load case using the following:- LoadCase =
lstLoadNums(dlg.ListBox1) LCName =lstLoads(dlg.ListBox1) | 17
17. Get Selected Nodes Dim NumSelectedNodes As Long Dim SelNodeArray() As Long
NumSelectedNodes = oStd.Geometry.GetNoOfSelectedNodes ( ) If NumSelectedNodes
>0 Then ReDim SelNodeArray(NumSelectedNodes) oStd.Geometry.GetSelectedNodes (
SelNodeArray, 1) Else MsgBox Please Select Nodes, vbOkOnly Endif | 18
18. Get the results Define the following variables after the check to make sure that there are
indeed some nodes selected:- Dim j as Integer Dim NodeNo As Long Dim
DisplArray(6) As Double Dim MaxDisplArray(6) As Double Dim NodeArray(6) As String
Then. | 19
19. Get the results Add the following to get the displacement data:- For i=0 To
NumSelectedNodes-1 NodeNo = SelNodeArray(i) oStd.Output.GetNodeDisplacements
(NodeNo, LoadCase, DisplArray()) For j= 0 To 5 If Abs(DisplArray(j)) >
Abs(MaxDisplArray(j)) Then MaxDisplArray(j)= DisplArray(j) NodeArray(j)="N" &
CStr(NodeNo) End If Next j Next i | 20

20. 20. Dealing with units Add the following after the loop to build the name array Dim unit As
Integer Dim DispLabel As String unit=oStd.GetBaseUnit Select Case unit Case 1
DispLabel="in" Case 2 DispLabel="met" Case Else DispLabel="???" End Select |
21
21. 21. Display the result Create a new dialog box, dlg2, called Max Deflection Add an OK
button and 14 text strings:- Text, "Load case:" Text, LCName Text,"X:, Text,"Y:,
Text,"Z:" Text, CStr(MaxDisplArray(0)), Text, CStr(MaxDisplArray(1)), Text,
CStr(MaxDisplArray(2)) Text, X DispLabel, Text, Y DispLabel, Text, Z DispLabel Text,
NodeArray(0), Text, NodeArray(1), Text, NodeArray(2) | 22
22. 22. Display the result The dialog should be arranged thus:- Save and test the macro | 23
23. 23. Adding a Macro to your toolbar Click on the menu item Tools>Configure User Tools.
Click on the icon New, and add the text Max Deflection to the name. Click on the
button to the right of the Command string and navigate to the My Documents folder and
select the BE Together macro | 24
24. 24. Sample | 25
25. 25. 2) Stage Construction Objective To create a model where the results of loading in 2
construction stages are combined Consider the model EXAMP08 constructed in 2 stages:- |
27
26. 26. Stages Stage 1 - Initial Stage 2 - Final | 28
27. 27. Philosophy When considering stage construction, it is very important that the matrix for
the initial model includes every DOF that will be active at some point. Each
model/construction stage should be completed with an analysis and CHANGE command.
Inactive members do not reduce the matrix size, but may leave nodes disconnected and
warnings reported. Supports and releases can be changed for each stage With multiple
models SET NL needs to be defined. | 29
28. 28. Example Objective To analyse a model built in 2 stages and combining the forces
from both stages. Open file Examp08mod.STD Open the model in the Editor Run the
analysis Review Output file Note warning messages View results in the Post-Processing
Mode | 30
29. 29. Notes Load cases are unique in all models/stages, e.g. if load case 1 for say dead loads
exists in the initial model, then it should not appear again in one of the other stages. An
alternative load case number should be selected The GUI will display members which are
INACTIVE as they may be active in some load cases, but not others. | 31
30. 30. Notes If a self weight command is used in the different stages and the results
combined, then this will include self weight on members in each of the stages. Consider the
use of assigning self weight to only members added during that stage. The Member Query
dialog does not display bending moments on members that are inactive in one or more load
cases! | 32
31. 31. 3) Foundation Objective To understand the methods available of accounting for a pad
foundation as supports for a STAAD.Pro model Supports Point Traditional Spring
Multi-linear spring Foundation Surface Elastic Mat Plate Mat STAAD.Foundation | 34

32. 32. Analytical Supports Basic Fixed, Pinned Spring Fixed But Multi-linear spring
Sub-grade modulus Foundation Support Lift Off Supports Compression Only Springs |
35
33. 33. Example 1 Support on compressible soil Objective:- Model a Pin support on
compressible soil Open file Foundation 1.STD go to page General>Support Click on
Create and on the Fixed But sheet and enter:- KFY 100 kip/in Release directions MX,
MY, MZ Assign to the base of all the columns Run the analysis Vertical displacement N2,
-18.875 inch | 36
34. 34. Example 2 Pin support on banded soil Objective:- 3 bands of soil below foundation,
10 inches of 100 kips/in 10 inches of 200 kips/in 10 inches of 500 kips/in Open file
Foundation2.STD and go to page General>Support Create and assign this multi-linear
definition to all supports Run the analysis Vertical displacement N2, -14.675 inch | 37
35. 35. Example 3 Sub Grade support Objective 2ft x 3ft pads under columns with soil subgrade of 100 kip/ft2/ft Open file Foundation 3.STD go to page General>Support Create
and assign the Foundation support defined as above Run the analysis Vertical
Displacement N2, -7.493 inch | 38
36. 36. Enforced Supports Prescribed Displacements Used as a in load cases where there is
a given displacement Mass Modelling, Missing Mass | 39
37. 37. Example 4 Enforced Displacement Objective Prescribe a 0.5 inch Z displacement in
load case #2 at Node 13 Open file Foundation 4.STD Define an ENFORCED BUT FX FY
Assign to node 13 Define a 0.5 inch Support Displacement Load in load case #2 and
assign to node 13 Run the analysis | 40
38. 38. Surface Supports Elastic Mat Assign to a selection of nodes Issues with inclusive
angles Plate Mat Assign to a selection of plates | 41
39. 39. Example 5 Slab on Grade Objective Open file Foundation5.STD Create and
assign a PLATE MAT in Y with a sub grade of 100 kip/ft2/ft (initially non directional) Assign
to all plates View the loading then run the analysis | 42
40. 40. Example 5 Slab on Grade (continued) Change support to Compression Only Re
run the analysis Note iterative solution Upward displacement | 43
41. 41. Foundation Design STAAD.Foundation Standalone or Integrated Plant Mode 2
specialist tools Toolkit Mode 6 specialist tools:- | 44
42. 42. Example 6 Foundation Design Open Foundation 6.STD Run the analysis and go to
the Foundation Design Mode Set All Supports Include all load cases Launch
STAAD.Foundation | 45
43. 43. Example 6 Foundation Design (continued) General Info Main>Create a New Job
All Isolated US English Design View the calculation sheets View the GA Drawing |
46
44. 44. 4) Buckling Analysis Objective To understand the methods and principals of the
buckling analysis in STAAD.Pro Standard Engine Load Factor Advanced Engine
Buckling Modes Geometric Non-Linear Analysis Can identify buckling by monitoring
deformations due to incremental addition of loading | 48
45. 45. Standard Solver Iterative elastic Initial analysis establishes basic stiffness matrix,
forces/deflections Both the large delta effects and the small delta effects are calculated.

46.

47.

48.

49.

50.
51.
52.

53.
54.
55.
56.
57.
58.

59.

These terms are the terms of the Kg matrix which are multiplied by the estimated BF
(buckling factor) and then added to the global stiffness matrix K. | 49
46. Advanced Solver First, the primary deflections are calculated by linear static analysis
based on the provided external loading. Primary deflections are used to calculate member
axial forces. These forces are used to calculate geometric stiffness terms. Both the large
delta effects and the small delta effects for members are calculated. These terms are the
terms of the Kg matrix. An eigenvalue problem is formed. | [ K ] - BFi*[ Kg ] | = 0
STAAD.Pro reports up to 4 buckling factors (BF) and associated buckling mode shapes
calculated. | 50
47. Geometric Non-Linear Analysis The geometric non-linearity can be accounted for in the
analysis by updating the global stiffness matrix and the global geometric stiffness matrix
[K+Kg] on every step based on the deformed position. The deformations significantly alter
the location or distribution of loads, such that equilibrium equations must be written with
respect to the deformed geometry, which is not known in advance. | 51
48. 2 L B = D = 1m, L = 10m E = 2.17*10^7 kN/m^3 I = (B*D^3)/12 = 0.083 m^4 Thus
Pcr = 177780 kN | 52I Pcr E2 Buckling Analysis For an ideal column, the critical axial
load is defined as:49. Example 1 Standard Solver Objective Confirmation of Euler Buckling load on a
simple column. Check that Advanced Analysis Engine is NOT set. Open file
Column.STD Run the analysis and view the output file:- | 53
50. Example 2 Advanced Solver Close the model and activate the Advanced Analysis
Engine license Re-open the file and run the analysis View the output file:- | 54
51. Example 3 Buckling Arch Objective To view buckling shapes of a pinned arch
Simple arch Pinned support Lateral restraint at crown Point load applied at crown | 55
52. Example 3 Buckling Arch (continued) Close any open model and check that the
Advanced Analysis Engine License is set. Open file Arch Buckling.STD Run the analysis
Go to the Post-Processing Mode>Buckling Page. May be necessary to reset the Mode
Shape scale using Structure Diagrams>Scales | 56
53. Example 3 - Buckling Analysis - Modes Buckling Factors 7.002 16.302 24.925 (*)
40.018 | 57
54. Example 3 - Buckling Analysis - Modes Buckling Factors 7.002 16.302 24.925 (*)
40.018 | 58
55. Example 3 - Buckling Analysis - Modes Buckling Factors 7.002 16.302 24.925 (*)
40.018 (*) In-plane mode | 59
56. Example 3 - Buckling Analysis - Modes Buckling Factors 7.002 16.302 24.925 (*)
40.018 Buckling Load = 24.925 * 0.1kN = 2.49kN | 60
57. Alternative Solutions Define model as PLANE Arch Buckling planeframe.STD
Restrain nodes in Z direction Arch Buckling restrained.STD | 61
58. 5) Angles Objective To understand the correct use of analysis and design of angle
profiles in STAAD.Pro to AISC 360-05 Geometric and Principal Angles Standard and User
Profiles Design issues | 63
59. Member Local Co-ordinate Systems Technical Reference 1.5.2 - Local coordinate
system A local coordinate system is associated with each member. Each axis of the local

60.
61.
62.
63.
64.

65.

66.

67.

68.

69.

70.

orthogonal coordinate system is also based on the right hand rule. Fig. 1.5 shows a beam
member with start joint i and end joint j. The positive direction of the local x-axis is
determined by joining i to j and projecting it in the same direction. The right hand rule may be
applied to obtain the positive directions of the local y and z axes. The local y and z-axes
coincide with the axes of the two principal moments of inertia. Note that the local coordinate
system is always rectangular. | 64
60. Axes Principal ------------ Geometric -------------------- Member Loads and Forces | 65
61. ST and RA Specifications ST specification, Z-Z axis is weak axis bending RA
specification, Z-Z axis is strong axis bending | 66
62. Rotation and Alignment BETA command 5.26.2 Specifying Constants for Members
and Elements Alpha ANGLE RANGLE | 67
63. User profiles Menu:- Tools>Create User Table Type:- Angle Define key dimensions
R, minor axis radius of gyration | 68
64. Example Objective To see effect of point load on end of cantilevers formed from angle
sections Open file Angle.STD Assign a 1 kip point load to the free ends of all the
cantilevers Run the analysis and view the end displacements | 69
65. Example (continued) Member 1, bending about weak principal axis (ST) Large vertical
end displacement only Member 2, bending about strong principal axis (RA) Small vertical
end displacement only Member 3, bending about geometric axis Resolve into principal
axes | 70
66. Design Issues Typically angles are used as axial only members, i.e. TRUSS AISC
360-05 Section E Design of Members for Compression, E5 Single angle compression
members (p35) Section F - Design of Members for Flexure, F10 Single Angles (p58)
Section G Design of Members for Shear, G4 Single Angles (p68) | 71
67. Design of Members for Compression Compressive strength defined by equations in
clause E3 (E7 if slender). Choice of equation E3-2 or E3-3 defined by slenderness, KL/r
For Angles, effective slenderness ratios dependent upon L/rx where rx = radius of gyration
about geometric axis parallel to connected leg Un-equal angles STAAD.Pro assumes
longer leg (in future will add LEG parameter) Equal angles rx is the same for both legs
Reported in output as CL.E | 72
68. Design of Members or Flexure User specified AXIS 1 Principal (default) 2
Geometric (only permitted if with continuous lateral-torsional restraint) Lateral-Torsional
Buckling F10, part 2 Calculated using Me, the elastic-torsional buckling moment Effective
length Leg Local Buckling F10, part 3 Is considered and reported if governing Reported
in output as:- CL.F-Major and CL.F-Minor | 73
69. Design of Members for Shear Clause G4 The nominal shear strength, Vn, of a single
angle leg shall be determined using Equation G2-1 AXIS 1 Principal Longer leg is used
in calculation of Major Shear, Shorter leg is used in calculation of Minor shear Forces are
as reported by the analysis engine AXIS 2 Geometric Forces are resolved and used in
legs as defined above Reported in output as:- CL.G-Major and CL.G-Minor | 74
70. Example 2 Angle Design Objective To see effects of AXIS on an angle design
Open file Angle 2.STD Run the analysis and view the results Edit the input file and

remove comments from the start of the 2 TRACK commands. Re-run the analysis and view
the results | 75
71. 71. Summary 1) Macros and OpenSTAAD Creating a macro using VBA 2) Stage
Construction Using the INACTIVE command 3) Foundations Analysis and Design 4)
Buckling Analysis Standard and Advanced solver methods and results 5) Angle Profiles
Analysis and design | 76
72. 72. STAAD.Pro Tips and TricksCarlos Aguera24th May 2011
"Direct Y" is what I use, which tells it that the spring support is in the Y direction. This then pins
the footing in the X and Z directions. "Yonly" literally only means Y direction only. So if you have
any shear defined, the mat will fly off to infinite, so to speak. I use the command "Spring
Tension" to tell it that the springs are tension only. This way the soils wont be modeled as
capable of holding down the mat. With the tension only command, it will iterate until it
converges. However, it might not ever converge, which will tell you your mat is not large
enough.
2. I use Plate Mat. One of the tutorials I believe it is, describes the use of plate mat vs elastic
mat.
3. Whether you include the walls for the stiffness is up to you. I would say it depends on the
geometry. I have done both, though not on the same mat, so I can't compare the effect.
4. You can change the input units for that you enter your value of 75 pci, rather than converting
to KSF/ft. This is what I do, as I have a feel for pci, and none for the other units.
5. Yes, I have modeled plates this thick. I think I have gone as high as 4 ft. Like I said, we were
spectical at first, but after running some verifications, we felt satisfied with the results. I strongly
encourage you to do the same. At the very least, it can give you an indication that you have
modeled the mat and springs correctly. I ususally try to keep my elements about the same width
as the depth. THough I do add more in tricky areas. I have used both 3 and 4 noded, again to
get a feel for it. I usually use 3 noded, as that is what the autop mesher creates by default using
the new parametric plate modeling function in 2004. This function is great as you define the
corners of the mat, and any internal nodes you need for loads, walls etc. Then it auto meshes for
you, including all the internal points you defined.
Hope this helps clarify a bit

You might also like