-
Notifications
You must be signed in to change notification settings - Fork 22
/
Copy pathFiberWF.tcl
43 lines (40 loc) · 1.45 KB
/
FiberWF.tcl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
##################################################################################################################
# FiberWF.tcl
#
# SubRoutine to construct a fiber section: Wide-Flange or general I-shaped section
#
##################################################################################################################
#
# Input Arguments:
#------------------
# secID Section ID
# matID Material ID
# d Section depth
# bf Flange width
# tf Flange tickness
# tw Web tickness
# nfdw Number of fibers along depth
# nftw Number of fibers along web thickness
# nfbf Number of fibers along flange width
# nftf Number of fibers along flange thickness
#
# Written by: Dr. Ahmed Elkady, University of Southampton, UK
#
##################################################################################################################
proc FiberWF {secID matID d bf tf tw nfdw nftw nfbf nftf} {
set dw [expr $d - 2 * $tf]
set y1 [expr -$d/2]
set y2 [expr -$dw/2]
set y3 [expr $dw/2]
set y4 [expr $d/2]
set z1 [expr -$bf/2]
set z2 [expr -$tw/2]
set z3 [expr $tw/2]
set z4 [expr $bf/2]
section fiberSec $secID -GJ 1.e10 {
# nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quadr $matID $nfbf $nftf $y1 $z4 $y1 $z1 $y2 $z1 $y2 $z4
patch quadr $matID $nftw $nfdw $y2 $z3 $y2 $z2 $y3 $z2 $y3 $z3
patch quadr $matID $nfbf $nftf $y3 $z4 $y3 $z1 $y4 $z1 $y4 $z4
}
}