tcl procedure for creating a W or I steel fiber section

If you have a script you think might be useful to others post it
here. Hopefully we will be able to get the most useful of these incorporated in the manuals.

Moderators: silvia, selimgunay, Moderators

Post Reply
mohsenVazirizade
Posts: 17
Joined: Wed Oct 14, 2015 12:08 am
Location: Sharif University of Technology; University of Arizona

tcl procedure for creating a W or I steel fiber section

Post by mohsenVazirizade » Wed May 11, 2016 6:15 am

proc Isection { secID matID d bf tw tf Nfx Nfy Nwx Nwy} {
# ###################################################################
# Isection $secID $matID $d $bf $tf $tw $nfdw $nftw $nfbf $nftf
# _________________________________________________________________ #
# Because the shape may be distorted here
# You can download the code here: https://www.zeta-uploader.com/1864663169
# _________________________________________________________________ #

# This Procedure creat an stimated I-sectio with nominal properties using section Fiber command
# create a standard W section given the nominal section properties
# written: Mohsen Vazirizade s.m.vazirizade@gmail.com
# date: 05/2016
# INPUT Parameters
# secID - section ID number
# matID - material ID number
# d = nominal depth dw=d-2tf
# tw = web thickness
# bf = flange width
# tf = flange thickness
# Nfx = number of fibers along flange width (X-direction or JK)
# Nfy = number of fibers along flange thickness (Y-direction or IJ)
# Nwx = Number of fibers along Web thickness (X-direction or IJ)
# Nwy = Number of fibers along Web depth (Y-direction or JK)
#Isection 7 1 .2 .1 .01 .02 2 10 1 20
#Isection { secID matID d bf tw tf Nfx Nfy Nwx Nwy}
# y
# ^
# |
# |
# |
# |
# ------->x
#
# | bf |
# _ _____________
# |_____ tw_____| |||||| Nfx = Nfy
# | |
# | | =
# | | =
# d | |tf |||| Nwx = Nwy
# | | =
# | | =
# _____| |_____
# _ |_____________|
set dw [expr $d - 2 * $tf]
set x1 [expr -$bf/2]
set x2 [expr -$tw/2]
set x3 [expr $tw/2]
set x4 [expr $bf/2]
set y1 [expr -$d/2]
set y2 [expr -$dw/2]
set y3 [expr $dw/2]
set y4 [expr $d/2]
section fiberSec $secID {
# NIJ NJK xI yI xJ yJ xK yK xL yL
patch quad $matID $Nfx $Nfy $x1 $y1 $x4 $y1 $x4 $y2 $x1 $y2
patch quad $matID $Nwx $Nwy $x2 $y2 $x3 $y2 $x3 $y3 $x2 $y3
patch quad $matID $Nfx $Nfy $x1 $y3 $x4 $y3 $x4 $y4 $x1 $y4
}

Post Reply