staad.pro tips and tricks.pdf

72
24 th May 2011 STAAD.Pro Tips and Tricks Carlos Aguera

Upload: satydevsinghnegi

Post on 08-Nov-2014

199 views

Category:

Documents


5 download

DESCRIPTION

Structural Design Software Trick

TRANSCRIPT

Page 1: STAAD.Pro Tips and Tricks.pdf

24th May 2011

STAAD.Pro Tips and Tricks

Carlos Aguera

Page 2: STAAD.Pro Tips and Tricks.pdf

| 2

• 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

Agenda

Page 3: STAAD.Pro Tips and Tricks.pdf

| 4

• 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

1) Macro using OpenSTAAD and VBA

Page 4: STAAD.Pro Tips and Tricks.pdf

| 5

• 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)

OpenSTAAD

Page 5: STAAD.Pro Tips and Tricks.pdf

| 6

• To Create:-

– Menu, Edit>Create New VB Macro

– Menu, Edit>Edit Existing VB Macro

• To Use:-

– Menu, Tools>Configure User Tools

– Toolbar

STAAD.Pro Macro GUI

Page 6: STAAD.Pro Tips and Tricks.pdf

| 7

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’

Page 7: STAAD.Pro Tips and Tricks.pdf

| 8

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

Page 8: STAAD.Pro Tips and Tricks.pdf

| 9

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

Page 9: STAAD.Pro Tips and Tricks.pdf

| 10

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

– 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.

Page 10: STAAD.Pro Tips and Tricks.pdf

| 11

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.

Page 11: STAAD.Pro Tips and Tricks.pdf

| 12

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

Page 12: STAAD.Pro Tips and Tricks.pdf

| 13

• 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

Create a dialog to select a load case

Page 13: STAAD.Pro Tips and Tricks.pdf

| 14

• 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.

Adding controls

Page 14: STAAD.Pro Tips and Tricks.pdf

| 15

• 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:-

Display the load case names

Page 15: STAAD.Pro Tips and Tricks.pdf

| 16

• 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

Handle a Cancel request

Page 16: STAAD.Pro Tips and Tricks.pdf

| 17

• 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)

Get the requested load case

Page 17: STAAD.Pro Tips and Tricks.pdf

| 18

– 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

Get Selected Nodes

Page 18: STAAD.Pro Tips and Tricks.pdf

| 19

• 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….

Get the results

Page 19: STAAD.Pro Tips and Tricks.pdf

| 20

• 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

Get the results

Page 20: STAAD.Pro Tips and Tricks.pdf

| 21

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

Page 21: STAAD.Pro Tips and Tricks.pdf

| 22

• 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)

Display the result

Page 22: STAAD.Pro Tips and Tricks.pdf

| 23

• The dialog should be arranged thus:-

• Save and test the macro

Display the result

Page 23: STAAD.Pro Tips and Tricks.pdf

| 24

• 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

Adding a Macro to your toolbar

Page 24: STAAD.Pro Tips and Tricks.pdf

| 25

Sample

Page 25: STAAD.Pro Tips and Tricks.pdf

| 27

• Objective

– To create a model where the results of loading in 2 construction stages are combined

• Consider the model EXAMP08 constructed in 2 stages:-

2) Stage Construction

Page 26: STAAD.Pro Tips and Tricks.pdf

| 28

Stage 1 - Initial Stage 2 - Final

Stages

Page 27: STAAD.Pro Tips and Tricks.pdf

| 29

• 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.

Philosophy

Page 28: STAAD.Pro Tips and Tricks.pdf

| 30

• 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

Example

Page 29: STAAD.Pro Tips and Tricks.pdf

| 31

• 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.

Notes

Page 30: STAAD.Pro Tips and Tricks.pdf

| 32

• 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!

Notes

Page 31: STAAD.Pro Tips and Tricks.pdf

| 34

• 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

3) Foundation

Page 32: STAAD.Pro Tips and Tricks.pdf

| 35

• Basic

– Fixed, Pinned

• Spring

– Fixed But

– Multi-linear spring

• Sub-grade modulus

– Foundation Support

• Lift Off Supports – Compression Only Springs

Analytical Supports

Page 33: STAAD.Pro Tips and Tricks.pdf

| 36

• 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

Example 1 – Support on compressible soil

Page 34: STAAD.Pro Tips and Tricks.pdf

| 37

• 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

Example 2 – Pin support on banded soil

Page 35: STAAD.Pro Tips and Tricks.pdf

| 38

• Objective

– 2ft x 3ft pads under columns with soil sub-grade 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

Example 3 – Sub Grade support

Page 36: STAAD.Pro Tips and Tricks.pdf

| 39

• Prescribed Displacements

– Used as a in load cases where there is a given displacement

• Mass Modelling,

– Missing Mass

Enforced Supports

Page 37: STAAD.Pro Tips and Tricks.pdf

| 40

• 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

Example 4 – Enforced Displacement

Page 38: STAAD.Pro Tips and Tricks.pdf

| 41

• Elastic Mat

– Assign to a selection of nodes

– Issues with ‘inclusive’ angles

• Plate Mat

– Assign to a selection of plates

Surface Supports

Page 39: STAAD.Pro Tips and Tricks.pdf

| 42

• 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

Example 5 – Slab on Grade

Page 40: STAAD.Pro Tips and Tricks.pdf

| 43

• Change support to ‘Compression Only’

• Re run the analysis

– Note iterative solution

• Upward displacement

Example 5 – Slab on Grade (continued)

Page 41: STAAD.Pro Tips and Tricks.pdf

| 44

• STAAD.Foundation

– Standalone or Integrated

• Plant Mode

– 2 specialist tools

• Toolkit Mode – 6 specialist tools:-

Foundation Design

Page 42: STAAD.Pro Tips and Tricks.pdf

| 45

• Open ‘Foundation 6.STD’

• Run the analysis and go to the Foundation Design Mode

• Set – All Supports

– Include all load cases

• Launch STAAD.Foundation

Example 6 – Foundation Design

Page 43: STAAD.Pro Tips and Tricks.pdf

| 46

• General Info

• Main>Create a New Job

– All

– Isolated

– US

– English

• Design – View the calculation sheets

– View the GA Drawing

Example 6 – Foundation Design (continued)

Page 44: STAAD.Pro Tips and Tricks.pdf

| 48

• 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

4) Buckling Analysis

Page 45: STAAD.Pro Tips and Tricks.pdf

| 49

• Iterative elastic

• Initial analysis establishes basic stiffness matrix, forces/deflections

• Both the large delta effects and the small delta effects are calculated. 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.

Standard Solver

Page 46: STAAD.Pro Tips and Tricks.pdf

| 50

• 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.

Advanced Solver

Page 47: STAAD.Pro Tips and Tricks.pdf

| 51

• 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.

Geometric Non-Linear Analysis

Page 48: STAAD.Pro Tips and Tricks.pdf

| 52

Buckling Analysis

• For an ideal column, the critical axial load is defined as:-

• 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

2

2

L

IEPcr

Page 49: STAAD.Pro Tips and Tricks.pdf

| 53

• 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:-

Example 1 – Standard Solver

Page 50: STAAD.Pro Tips and Tricks.pdf

| 54

• Close the model and activate the ‘Advanced Analysis Engine’ license

• Re-open the file and run the analysis

• View the output file:-

Example 2 – Advanced Solver

Page 51: STAAD.Pro Tips and Tricks.pdf

| 55

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

Page 52: STAAD.Pro Tips and Tricks.pdf

| 56

• 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

Example 3 – Buckling Arch (continued)

Page 53: STAAD.Pro Tips and Tricks.pdf

| 57

Example 3 - Buckling Analysis - Modes

• Buckling Factors

– 7.002

– 16.302

– 24.925 (*)

– 40.018

Page 54: STAAD.Pro Tips and Tricks.pdf

| 58

Example 3 - Buckling Analysis - Modes

• Buckling Factors

– 7.002

– 16.302

– 24.925 (*)

– 40.018

Page 55: STAAD.Pro Tips and Tricks.pdf

| 59

Example 3 - Buckling Analysis - Modes

• Buckling Factors

– 7.002

– 16.302

– 24.925 (*)

– 40.018

(*) In-plane mode

Page 56: STAAD.Pro Tips and Tricks.pdf

| 60

Example 3 - Buckling Analysis - Modes

• Buckling Factors

– 7.002

– 16.302

– 24.925 (*)

– 40.018

Buckling Load = 24.925 * 0.1kN = 2.49kN

Page 57: STAAD.Pro Tips and Tricks.pdf

| 61

• Define model as PLANE

– Arch Buckling planeframe.STD

• Restrain nodes in Z direction – Arch Buckling restrained.STD

Alternative Solutions

Page 58: STAAD.Pro Tips and Tricks.pdf

| 63

• 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

5) Angles

Page 59: STAAD.Pro Tips and Tricks.pdf

| 64

• Technical Reference ‘1.5.2 - Local coordinate system’

– A local coordinate system is associated with each member. Each axis of the local 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.

Member Local Co-ordinate Systems

Page 60: STAAD.Pro Tips and Tricks.pdf

| 65

• Principal ------------

• Geometric --------------------

• Member Loads and Forces

Axes

Page 61: STAAD.Pro Tips and Tricks.pdf

| 66

• ST specification, Z-Z axis is weak axis bending

• RA specification, Z-Z axis is strong axis bending

ST and RA Specifications

Page 62: STAAD.Pro Tips and Tricks.pdf

| 67

• BETA command

– 5.26.2 Specifying Constants for Members and Elements

• Alpha

• ANGLE

• RANGLE

Rotation and Alignment

Page 63: STAAD.Pro Tips and Tricks.pdf

| 68

• Menu:-

– Tools>Create User Table

– Type:- Angle

• Define key dimensions

– R, minor axis radius of gyration

User profiles

Page 64: STAAD.Pro Tips and Tricks.pdf

| 69

• 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

Example

Page 65: STAAD.Pro Tips and Tricks.pdf

| 70

• 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

Example (continued)

Page 66: STAAD.Pro Tips and Tricks.pdf

| 71

• 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)

Design Issues

Page 67: STAAD.Pro Tips and Tricks.pdf

| 72

• 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’

Design of Members for Compression

Page 68: STAAD.Pro Tips and Tricks.pdf

| 73

• 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

Design of Members or Flexure

Page 69: STAAD.Pro Tips and Tricks.pdf

| 74

• 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

Design of Members for Shear

Page 70: STAAD.Pro Tips and Tricks.pdf

| 75

• 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

Example 2 – Angle Design

Page 71: STAAD.Pro Tips and Tricks.pdf

| 76

• 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

Summary

Page 72: STAAD.Pro Tips and Tricks.pdf

24th May 2011

STAAD.Pro Tips and Tricks

Carlos Aguera