I can't analyze this file !!!!!!!!!!

Forum for OpenSees users to post questions, comments, etc. on the use of the OpenSees interpreter, OpenSees.exe

Moderators: silvia, selimgunay, Moderators

Post Reply
Morteza Dehghani
Posts: 2
Joined: Mon Oct 23, 2006 1:43 pm
Location: Ecole Polytechnique de Montreal

I can't analyze this file !!!!!!!!!!

Post by Morteza Dehghani »

Hi every body
I prepare a analytical model for 3 story chevron braced frame in opensess but i can't analyze it. I check my model more and more but i cant find the problem. please verify my model.
Thanks all
Morteza

Here is the file ---- end of file contains source file for WsectionR


#################################
# Pushover Analysis of 3 Story Inverted V Braced Frame #
# Units kN-m #
# Columns have 3 ponits along their length #
# Floor Beams have 10 Points along their length #
# Bracing have 2 Points along their Length #
# Dehghani, Morteza #
wipe
model BasicBuilder -ndm 2 -ndf 3


# set Basic variables #
set Lx 9.15
set Lx2 [expr 0.5*$Lx]
set Ly 4.00
set T [expr atan($Ly/$Lx2)]
set Im 750
set x1 0.00
set x2 $Lx

set y1 0.00
set y2 $Ly
set y3 [expr 2 * $Ly]
set y4 [expr 3 * $Ly]
set PinchX 0.5
set PinchY 0.3
set damage1 0.0
set damage2 0.0
set pi [expr 2*asin(1.0)]
# Nodes
# Ground Point - Left Hand #
node 1 $x1 $y1 0.00
node 191 $x1 $y1 0.00

# Ground Point - Right Hand #
node 5 $x2 $y1 0.00
node 591 $x2 $y1 0.00


# First Floor - Left Hand #
node 2 $x1 $y2 0.00
node 291 $x1 $y2 0.00
node 2101 $x1 $y2 0.00


# First Floor - Right Hand #
node 6 $x2 $y2 0.00
node 965 $x2 $y2 0.00
node 6101 $x2 $y2 0.00


# Between Master Joints for Col 1 - L #
node 121 $x1 [expr $y1 + ($y2-$y1) / 2] 0.0
# Between Master Joints for Col 1 - R #
node 561 $x2 [expr $y1 + ($y2-$y1) / 2] 0.0
# Middle Point of First Floor Beam #
node 9 [expr 0.5*$x2] $y2 0.00
node 192 [expr 0.5*$x2] $y2 0.00

node 592 [expr 0.5*$x2] $y2 0.00


# Between Master Joints for beam 1 - L #
node 292 [expr $x1 + 1 * ($x2 - $x1) / 10] $y2 0.0
node 293 [expr $x1 + 2 * ($x2 - $x1) / 10] $y2 0.0
node 294 [expr $x1 + 3 * ($x2 - $x1) / 10] $y2 0.0
node 295 [expr $x1 + 4 * ($x2 - $x1) / 10] $y2 0.0
# Between Master Joints for beam 1 - R #
node 961 [expr $x1 + 6 * ($x2 - $x1) / 10] $y2 0.0
node 962 [expr $x1 + 7 * ($x2 - $x1) / 10] $y2 0.0
node 963 [expr $x1 + 8 * ($x2 - $x1) / 10] $y2 0.0
node 964 [expr $x1 + 9 * ($x2 - $x1) / 10] $y2 0.0


# Second Floor #
# Second Floor - Left Hand #
node 3 $x1 $y3 0.00
node 3101 $x1 $y3 0.00
node 3111 $x1 $y3 0.00

# Between Master Joints for Col 2 - L #
node 231 $x1 [expr $y2 + ($y3-$y2) / 2] 0.0
# Between Master Joints for Col 2 - R #
node 671 $x2 [expr $y2 + ($y3-$y2) / 2] 0.0
# Second Floor - Right Hand #
node 7 $x2 $y3 0.00
node 1075 $x2 $y3 0.00
node 7111 $x2 $y3 0.00

# Middle Point of Second Floor Beam #
node 10 [expr 0.5*$x2] $y3 0.00
node 2102 [expr 0.5*$x2] $y3 0.00

node 6102 [expr 0.5*$x2] $y3 0.00


# Between Master Joints for beam 2 - L #
node 3102 [expr $x1 + 1 * ($x2 -$x1) / 10] $y3 0.0
node 3103 [expr $x1 + 2 * ($x2 -$x1) / 10] $y3 0.0
node 3104 [expr $x1 + 3 * ($x2 -$x1) / 10] $y3 0.0
node 3105 [expr $x1 + 4 * ($x2 -$x1) / 10] $y3 0.0
# Between Master Joints for beam 2 - R #
node 1071 [expr $x1 + 6 * ($x2 -$x1) / 10] $y3 0.0
node 1072 [expr $x1 + 7 * ($x2 -$x1) / 10] $y3 0.0
node 1073 [expr $x1 + 8 * ($x2 -$x1) / 10] $y3 0.0
node 1074 [expr $x1 + 9 * ($x2 -$x1) / 10] $y3 0.0


# Thrid Floor #
# Third Floor - Left Hand #
node 4 $x1 $y4 0.00
node 4111 $x1 $y4 0.00

# Thrid Floor - Right Hand #
node 8 $x2 $y4 0.00
node 1185 $x2 $y4 0.00


# Between Master Joints for Col 3 - L #
node 341 $x1 [expr $y3 + ($y4-$y3) / 2] 0.0
# Between Master Joints for Col 3 - R #
node 781 $x2 [expr $y3 + ($y4-$y3) / 2] 0.0


# Middle Point of Thrid Floor Beam #
node 11 [expr 0.5*$x2] $y4 0.00
node 3112 [expr 0.5*$x2] $y4 0.00

node 7112 [expr 0.5*$x2] $y4 0.00


# Between Master Joints for beam 3 - L #
node 4112 [expr $x1 + 1 * ($x2 -$x1) / 10] $y4 0.0
node 4113 [expr $x1 + 2 * ($x2 -$x1) / 10] $y4 0.0
node 4114 [expr $x1 + 3 * ($x2 -$x1) / 10] $y4 0.0
node 4115 [expr $x1 + 4 * ($x2 -$x1) / 10] $y4 0.0
# Between Master Joints for beam 3 - R #
node 1181 [expr $x1 + 6 * ($x2 -$x1) / 10] $y4 0.0
node 1182 [expr $x1 + 7 * ($x2 -$x1) / 10] $y4 0.0
node 1183 [expr $x1 + 8 * ($x2 -$x1) / 10] $y4 0.0
node 1184 [expr $x1 + 9 * ($x2 -$x1) / 10] $y4 0.0

# Connectivity Data #
equalDOF 1 191 1 2

equalDOF 5 591 1 2

equalDOF 2 2101 1 2
equalDOF 2 291 1 2

equalDOF 9 192 1 2
equalDOF 9 592 1 2

equalDOF 6 965 1 2
equalDOF 6 6101 1 2

equalDOF 3 3101 1 2
equalDOF 3 3111 1 2

equalDOF 10 2102 1 2
equalDOF 10 6102 1 2

equalDOF 7 1075 1 2
equalDOF 7 7111 1 2

equalDOF 4 4111 1 2
equalDOF 11 3112 1 2
equalDOF 11 7112 1 2

equalDOF 8 1185 1 2
# Boundry Conditions #

fix 1 1 1 1
fix 5 1 1 1

# Define material #
set fy 240000; #Yield Stress
set E 2.1e8; #Young Modolus
set b 0.003; #Strain Hardening Ratio
uniaxialMaterial Steel02 1 $fy $E $b 18.5 0.925 0.15
# Define Col. 1 Section H450-12-25*400 #
source WSection.tcl
set dc1 0.450
set twc1 0.012
set tfc1 0.025
set bfc1 0.400
set hwc1 [expr $dc1-2*$tfc1]
Wsection 1 1 $dc1 $twc1 $bfc1 $tfc1 10 2 2 20
# Define Cross Section Properties of c1 #
set Afc1 [expr $bfc1*$tfc1]; # Area of Flange #
set qc1 [expr 0.5*($hwc1+$tfc1)]; # Moment Arm of Flange #
set Ixc1 [expr ( pow ($hwc1,3) * $twc1 / 12 ) + 2 * $Afc1 * pow ($qc1,2) ]; # Major Moment of Inertia #
set Iyc1 [expr ( pow ($bfc1,3) * $tfc1 / 6 ) + ( pow ($twc1,3) * $hwc1 )]; # Minor Moment of Interia #
set Ac1 [expr 2 * $Afc1 + $hwc1 * $twc1] ; # Area of section #
set rxc1 [expr sqrt($Ixc1 / $Ac1)] ; # Radious of Gyration about x #
set ryc1 [expr sqrt($Iyc1 / $Ac1)] ; # Radious of Gyration about y #
set Sxc1 [expr 2 * $Ixc1 / $dc1] ; # Modolus of Section About x #
set Syc1 [expr 2 * $Iyc1 / $bfc1] ; # Modolus of Section About y #
set Zxc1 [expr ( pow ($hwc1,2) * $twc1 / 4 ) + 2 * $bfc1 * pow ($tfc1,2) / 4 + 2 * $Afc1 * $qc1] ; # Plastic Modolus of Section About x #

set Zyc1 [expr ( pow ($twc1,2) * $hwc1 / 4 ) + 2 * ( pow ($bfc1,2) * $tfc1 / 4 )]; # Plastic Modolus of Section About y #

# Define Col. 2 Section H450-12-25*250 #
set dc2 0.450
set twc2 0.012
set tfc2 0.025
set bfc2 0.250
set hwc2 [expr $dc2-2*$tfc2]
Wsection 4 1 $dc2 $twc2 $bfc2 $tfc2 10 2 2 20
# Define Cross Section Properties of c2 #
set Afc2 [expr $bfc2*$tfc2]; # Area of Flange #
set qc2 [expr 0.5*($hwc2+$tfc2)]; # Moment Arm of Flange #
set Ixc2 [expr ( pow ($hwc2,3) * $twc2 / 12 ) + 2 * $Afc2 * pow ($qc2,2) ]; # Major Moment of Inertia #
set Iyc2 [expr ( pow ($bfc2,3) * $tfc2 / 6 ) + ( pow ($twc2,3) * $hwc2 )]; # Minor Moment of Interia #
set Ac2 [expr 2 * $Afc2 + $hwc2 * $twc2] ; # Area of section #
set rxc2 [expr sqrt($Ixc2 / $Ac2)] ; # Radious of Gyration about x #
set ryc2 [expr sqrt($Iyc2 / $Ac2)] ; # Radious of Gyration about y #
set Sxc2 [expr 2 * $Ixc2 / $dc2] ; # Modolus of Section About x #
set Syc2 [expr 2 * $Iyc2 / $bfc2] ; # Modolus of Section About y #
set Zxc2 [expr ( pow ($hwc2,2) * $twc2 / 4 ) + 2 * $bfc2 * pow ($tfc2,2) / 4 + 2 * $Afc2 * $qc2] ; # Plastic Modolus of Section About x #

set Zyc2 [expr ( pow ($twc2,2) * $hwc2 / 4 ) + 2 * ( pow ($bfc2,2) * $tfc2 / 4 )]; # Plastic Modolus of Section About y #

# Define Col. 3 Section H450-12-25*200 #
set dc3 0.450
set twc3 0.012
set tfc3 0.025
set bfc3 0.200
set hwc3 [expr $dc3-2*$tfc3]
Wsection 7 1 $dc3 $twc3 $bfc3 $tfc3 10 2 2 20
# Define Cross Section Properties of c3 #
set Afc3 [expr $bfc3*$tfc3]; # Area of Flange #
set qc3 [expr 0.5*($hwc3+$tfc3)]; # Moment Arm of Flange #
set Ixc3 [expr ( pow ($hwc3,3) * $twc3 / 12 ) + 2 * $Afc3 * pow ($qc3,2) ]; # Major Moment of Inertia #
set Iyc3 [expr ( pow ($bfc3,3) * $tfc3 / 6 ) + ( pow ($twc3,3) * $hwc3 )]; # Minor Moment of Interia #
set Ac3 [expr 2 * $Afc3 + $hwc3 * $twc3] ; # Area of section #
set rxc3 [expr sqrt($Ixc3 / $Ac3)] ; # Radious of Gyration about x #
set ryc3 [expr sqrt($Iyc3 / $Ac3)] ; # Radious of Gyration about y #
set Sxc3 [expr 2 * $Ixc3 / $dc3] ; # Modolus of Section About x #
set Syc3 [expr 2 * $Iyc3 / $bfc3] ; # Modolus of Section About y #
set Zxc3 [expr ( pow ($hwc3,2) * $twc3 / 4 ) + 2 * $bfc3 * pow ($tfc3,2) / 4 + 2 * $Afc3 * $qc3] ; # Plastic Modolus of Section About x #

set Zyc3 [expr ( pow ($twc3,2) * $hwc3 / 4 ) + 2 * ( pow ($bfc3,2) * $tfc3 / 4 )]; # Plastic Modolus of Section About y #


# Define Beam. Section H1080-15-40*400 #
set db1 1.080
set twb1 0.015
set tfb1 0.040
set bfb1 0.400
set hwb1 [expr $db1-2*$tfb1]
Wsection 2 1 $db1 $twb1 $bfb1 $tfb1 40 2 4 20
# Define Cross Section Properties of b1 #
set Afb1 [expr $bfb1*$tfb1]; # Area of Flange #
set qb1 [expr 0.5*($hwb1+$tfb1)]; # Moment Arm of Flange #
set Ixb1 [expr ( pow ($hwb1,3) * $twb1 / 12 ) + 2 * $Afb1 * pow ($qb1,2) ]; # Major Moment of Inertia #
set Iyb1 [expr ( pow ($bfb1,3) * $tfb1 / 6 ) + ( pow ($twb1,3) * $hwb1 )]; # Minor Moment of Interia #
set Ab1 [expr 2 * $Afb1 + $hwb1 * $twb1] ; # Area of section #
set rxb1 [expr sqrt($Ixb1 / $Ab1)] ; # Radious of Gyration about x #
set ryb1 [expr sqrt($Iyb1 / $Ab1)] ; # Radious of Gyration about y #
set Sxb1 [expr 2 * $Ixb1 / $db1] ; # Modolus of Section About x #
set Syb1 [expr 2 * $Iyb1 / $bfb1] ; # Modolus of Section About y #
set Zxb1 [expr ( pow ($hwb1,2) * $twb1 / 4 ) + 2 * $bfb1 * pow ($tfb1,2) / 4 + 2 * $Afb1 * $qb1] ; # Plastic Modolus of Section About x #

set Zyb1 [expr ( pow ($twb1,2) * $hwb1 / 4 ) + 2 * ( pow ($bfb1,2) * $tfb1 / 4 )]; # Plastic Modolus of Section About y #

# Define Beam. Section H1060-15-30*400 #
set db2 1.060
set twb2 0.015
set tfb2 0.030
set bfb2 0.400
set hwb2 [expr $db2-2*$tfb2]
Wsection 5 1 $db2 $twb2 $bfb2 $tfb2 40 2 4 20
# Define Cross Section Properties of b2 #
set Afb2 [expr $bfb2*$tfb2]; # Area of Flange #
set qb2 [expr 0.5*($hwb2+$tfb2)]; # Moment Arm of Flange #
set Ixb2 [expr ( pow ($hwb2,3) * $twb2 / 12 ) + 2 * $Afb2 * pow ($qb2,2) ]; # Major Moment of Inertia #
set Iyb2 [expr ( pow ($bfb2,3) * $tfb2 / 6 ) + ( pow ($twb2,3) * $hwb2 )]; # Minor Moment of Interia #
set Ab2 [expr 2 * $Afb2 + $hwb2 * $twb2] ; # Area of section #
set rxb2 [expr sqrt($Ixb2 / $Ab2)] ; # Radious of Gyration about x #
set ryb2 [expr sqrt($Iyb2 / $Ab2)] ; # Radious of Gyration about y #
set Sxb2 [expr 2 * $Ixb2 / $db2] ; # Modolus of Section About x #
set Syb2 [expr 2 * $Iyb2 / $bfb2] ; # Modolus of Section About y #
set Zxb2 [expr ( pow ($hwb2,2) * $twb2 / 4 ) + 2 * $bfb2 * pow ($tfb2,2) / 4 + 2 * $Afb2 * $qb2] ; # Plastic Modolus of Section About x #

set Zyb2 [expr ( pow ($twb2,2) * $hwb2 / 4 ) + 2 * ( pow ($bfb2,2) * $tfb2 / 4 )]; # Plastic Modolus of Section About y #

# Define Beam. Section H1060-15-30*300 #
set db3 1.060
set twb3 0.015
set tfb3 0.030
set bfb3 0.300
set hwb3 [expr $db3-2*$tfb3]
Wsection 8 1 $db3 $twb3 $bfb3 $tfb3 40 2 4 20
# Define Cross Section Properties of b3 #
set Afb3 [expr $bfb3*$tfb3]; # Area of Flange #
set qb3 [expr 0.5*($hwb3+$tfb3)]; # Moment Arm of Flange #
set Ixb3 [expr ( pow ($hwb3,3) * $twb3 / 12 ) + 2 * $Afb3 * pow ($qb3,2) ]; # Major Moment of Inertia #
set Iyb3 [expr ( pow ($bfb3,3) * $tfb3 / 6 ) + ( pow ($twb3,3) * $hwb3 )]; # Minor Moment of Interia #
set Ab3 [expr 2 * $Afb3 + $hwb3 * $twb3] ; # Area of section #
set rxb3 [expr sqrt($Ixb3 / $Ab3)] ; # Radious of Gyration about x #
set ryb3 [expr sqrt($Iyb3 / $Ab3)] ; # Radious of Gyration about y #
set Sxb3 [expr 2 * $Ixb3 / $db3] ; # Modolus of Section About x #
set Syb3 [expr 2 * $Iyb3 / $bfb3] ; # Modolus of Section About y #
set Zxb3 [expr ( pow ($hwb3,2) * $twb3 / 4 ) + 2 * $bfb3 * pow ($tfb3,2) / 4 + 2 * $Afb3 * $qb3] ; # Plastic Modolus of Section About x #
set Zyb3 [expr ( pow ($twb3,2) * $hwb3 / 4 ) + 2 * ( pow ($bfb3,2) * $tfb3 / 4 )]; # Plastic Modolus of Section About y #


# Define Bracing Section H340-10-20*300 #
source WSectionR.tcl
set dbr1 0.340
set twbr1 0.010
set tfbr1 0.020
set bfbr1 0.300
set hwbr1 [expr $dbr1-2*$tfbr1]

# Define Cross Section Properties of br1 #
set Afbr1 [expr $bfbr1*$tfbr1]; # Area of Flange #
set qbr1 [expr 0.5*($hwbr1+$tfbr1)]; # Moment Arm of Flange #
set Ixbr1 [expr ( pow ($hwbr1,3) * $twbr1 / 12 ) + 2 * $Afbr1 * pow ($qbr1,2) ]; # Major Moment of Inertia #
set Iybr1 [expr ( pow ($bfbr1,3) * $tfbr1 / 6 ) + ( pow ($twbr1,3) * $hwbr1 )]; # Minor Moment of Interia #
set Abr1 [expr 2 * $Afbr1 + $hwbr1 * $twbr1] ; # Area of section #
set rxbr1 [expr sqrt($Ixbr1 / $Abr1)] ; # Radious of Gyration about x #
set rybr1 [expr sqrt($Iybr1 / $Abr1)] ; # Radious of Gyration about y #
set Sxbr1 [expr 2 * $Ixbr1 / $dbr1] ; # Modolus of Section About x #
set Sybr1 [expr 2 * $Iybr1 / $bfbr1] ; # Modolus of Section About y #
set Zxbr1 [expr ( pow ($hwbr1,2) * $twbr1 / 4 ) + 2 * $bfbr1 * pow ($tfbr1,2) / 4 + 2 * $Afbr1 * $qbr1] ; # Plastic Modolus of Section About x #
set Zybr1 [expr ( pow ($twbr1,2) * $hwbr1 / 4 ) + 2 * ( pow ($bfbr1,2) * $tfbr1 / 4 )]; # Plastic Modolus of Section About y #
set Lbr1 [expr sqrt ( pow (($y2-$y1),2)+ pow (($x2-$x1)/2,2) )]
set Ptbr1 [expr $Abr1*$fy];# Tensile Strength of Br1 #
set dybr1 [expr $Ptbr1 * $Lbr1 / ( $E * $Abr1 )]; # Yield Displacement of Br1 #
set Landa_br1 [expr $Lbr1 / $rybr1]
set Febr1 [expr pow ($pi,2) * $E / pow ($Landa_br1,2)]
if { $Landa_br1 < [expr 4.71 * sqrt ($E/$fy)] } {
set Fcrbr1 [expr ( pow (0.658,($fy/$Febr1))) * $fy]
} else {
set Fcrbr1 [expr 0.877 * $Febr1]
}
set Pcrbr1 [expr -$Abr1 * $Fcrbr1]
set dcrbr1 [expr $Pcrbr1 * $Lbr1 / ($E * $Abr1)]

uniaxialMaterial Hysteretic 2 $Ptbr1 $dybr1 [expr 1.33*$Ptbr1] [expr 12*$dybr1] [expr 0.8*$Ptbr1] [expr 13*$dybr1] $Pcrbr1 $dcrbr1 [expr 0.2*$Pcrbr1] [expr 7*$dcrbr1] [expr 0.2*$Pcrbr1] [expr 8*$dcrbr1] $PinchX $PinchY $damage1 $damage2 0.0
section Aggregator 3 2 P
# Define Bracing Section H330-8-15*300 #
set dbr2 0.330
set twbr2 0.008
set tfbr2 0.015
set bfbr2 0.300
set hwbr2 [expr $dbr2-2*$tfbr2]

# Define Cross Section Properties of br2 #
set Afbr2 [expr $bfbr2*$tfbr2]; # Area of Flange #
set qbr2 [expr 0.5*($hwbr2+$tfbr2)]; # Moment Arm of Flange #
set Ixbr2 [expr ( pow ($hwbr2,3) * $twbr2 / 12 ) + 2 * $Afbr2 * pow ($qbr2,2) ]; # Major Moment of Inertia #
set Iybr2 [expr ( pow ($bfbr2,3) * $tfbr2 / 6 ) + ( pow ($twbr2,3) * $hwbr2 )]; # Minor Moment of Interia #
set Abr2 [expr 2 * $Afbr2 + $hwbr2 * $twbr2] ; # Area of section #
set rxbr2 [expr sqrt($Ixbr2 / $Abr2)] ; # Radious of Gyration about x #
set rybr2 [expr sqrt($Iybr2 / $Abr2)] ; # Radious of Gyration about y #
set Sxbr2 [expr 2 * $Ixbr2 / $dbr2] ; # Modolus of Section About x #
set Sybr2 [expr 2 * $Iybr2 / $bfbr2] ; # Modolus of Section About y #
set Zxbr2 [expr ( pow ($hwbr2,2) * $twbr2 / 4 ) + 2 * $bfbr2 * pow ($tfbr2,2) / 4 + 2 * $Afbr2 * $qbr2] ; # Plastic Modolus of Section About x #
set Zybr2 [expr ( pow ($twbr2,2) * $hwbr2 / 4 ) + 2 * ( pow ($bfbr2,2) * $tfbr2 / 4 )]; # Plastic Modolus of Section About y #
set Lbr2 [expr sqrt ( pow (($y2-$y1),2)+ pow (($x2-$x1)/2,2) )]
set Ptbr2 [expr $Abr2*$fy];# Tensile Strength of br2 #
set dybr2 [expr $Ptbr2 * $Lbr2 / ( $E * $Abr2 )]; # Yield Displacement of br2 #
set Landa_br2 [expr $Lbr2 / $rybr2]
set Febr2 [expr pow ($pi,2) * $E / pow ($Landa_br2,2)]
if { $Landa_br2 < [expr 4.71 * sqrt ($E/$fy)] } {
set Fcrbr2 [expr ( pow (0.658,($fy/$Febr2))) * $fy]
} else {
set Fcrbr2 [expr 0.877 * $Febr2]
}
set Pcrbr2 [expr -$Abr2 * $Fcrbr2]
set dcrbr2 [expr $Pcrbr2 * $Lbr2 / ($E * $Abr2)]

uniaxialMaterial Hysteretic 3 $Ptbr2 $dybr2 [expr 1.33*$Ptbr2] [expr 12*$dybr2] [expr 0.8*$Ptbr2] [expr 13*$dybr2] $Pcrbr2 $dcrbr2 [expr 0.2*$Pcrbr2] [expr 7*$dcrbr2] [expr 0.2*$Pcrbr2] [expr 8*$dcrbr2] $PinchX $PinchY $damage1 $damage2 0.0
section Aggregator 6 3 P
# Define Bracing Section H270-8-15*240 #
set dbr3 0.270
set twbr3 0.008
set tfbr3 0.015
set bfbr3 0.240
set hwbr3 [expr $dbr3-2*$tfbr3]
set Afbr3 [expr $bfbr3*$tfbr3]; # Area of Flange #
set qbr3 [expr 0.5*($hwbr3+$tfbr3)]; # Moment Arm of Flange #
set Ixbr3 [expr ( pow ($hwbr3,3) * $twbr3 / 12 ) + 2 * $Afbr3 * pow ($qbr3,2) ]; # Major Moment of Inertia #
set Iybr3 [expr ( pow ($bfbr3,3) * $tfbr3 / 6 ) + ( pow ($twbr3,3) * $hwbr3 )]; # Minor Moment of Interia #
set Abr3 [expr 2 * $Afbr3 + $hwbr3 * $twbr3] ; # Area of section #
set rxbr3 [expr sqrt($Ixbr3 / $Abr3)] ; # Radious of Gyration about x #
set rybr3 [expr sqrt($Iybr3 / $Abr3)] ; # Radious of Gyration about y #
set Sxbr3 [expr 2 * $Ixbr3 / $dbr3] ; # Modolus of Section About x #
set Sybr3 [expr 2 * $Iybr3 / $bfbr3] ; # Modolus of Section About y #
set Zxbr3 [expr ( pow ($hwbr3,2) * $twbr3 / 4 ) + 2 * $bfbr3 * pow ($tfbr3,2) / 4 + 2 * $Afbr3 * $qbr3] ; # Plastic Modolus of Section About x #
set Zybr3 [expr ( pow ($twbr3,2) * $hwbr3 / 4 ) + 2 * ( pow ($bfbr3,2) * $tfbr3 / 4 )]; # Plastic Modolus of Section About y #
set Lbr3 [expr sqrt ( pow (($y2-$y1),2)+ pow (($x2-$x1)/2,2) )]
set Ptbr3 [expr $Abr3*$fy];# Tensile Strength of br3 #
set dybr3 [expr $Ptbr3 * $Lbr3 / ( $E * $Abr3 )]; # Yield Displacement of br3 #
set Landa_br3 [expr $Lbr3 / $rybr3]
set Febr3 [expr pow ($pi,2) * $E / pow ($Landa_br3,2)]
if { $Landa_br3 < [expr 4.71 * sqrt ($E/$fy)] } {
set Fcrbr3 [expr ( pow (0.658,($fy/$Febr3))) * $fy]
} else {
set Fcrbr3 [expr 0.877 * $Febr3]
}
set Pcrbr3 [expr -$Abr3 * $Fcrbr3]
set dcrbr3 [expr $Pcrbr3 * $Lbr3 / ($E * $Abr3)]

uniaxialMaterial Hysteretic 4 $Ptbr3 $dybr3 [expr 1.33*$Ptbr3] [expr 12*$dybr3] [expr 0.8*$Ptbr3] [expr 13*$dybr3] $Pcrbr3 $dcrbr3 [expr 0.2*$Pcrbr3] [expr 7*$dcrbr3] [expr 0.2*$Pcrbr3] [expr 8*$dcrbr3] $PinchX $PinchY $damage1 $damage2 0.0
section Aggregator 9 4 P
# Define Cross Section Properties of br3 #


geomTransf Linear 1
geomTransf Linear 2
geomTransf Linear 3

# define elements #
set np 4
set maxiter 20
set tol 1.0e-16 ; # Tag i j I.P SecID Tran IterationCTRL
# First Floor - Left Hand Columns Element #
element nonlinearBeamColumn 1 1 121 $np 1 2 -iter $maxiter $tol
element nonlinearBeamColumn 121 121 2 $np 1 2 -iter $maxiter $tol

# First Floor - Right Hand Columns Element #
element nonlinearBeamColumn 5 5 561 $np 1 2 -iter $maxiter $tol
element nonlinearBeamColumn 561 561 6 $np 1 2 -iter $maxiter $tol

# Second Floor - Left Hand Columns Elements #
element nonlinearBeamColumn 2 2 231 $np 1 2 -iter $maxiter $tol
element nonlinearBeamColumn 231 231 3 $np 4 2 -iter $maxiter $tol
# Second Floor - Right Hand Columns Elements #
element nonlinearBeamColumn 6 6 671 $np 1 2 -iter $maxiter $tol
element nonlinearBeamColumn 671 671 7 $np 4 2 -iter $maxiter $tol

# Third Floor - Left Hand Columns Elements #
element nonlinearBeamColumn 3 3 341 $np 4 2 -iter $maxiter $tol
element nonlinearBeamColumn 341 341 4 $np 7 2 -iter $maxiter $tol
# Third Floor - Right Hand Columns Elements #
element nonlinearBeamColumn 7 7 781 $np 4 2 -iter $maxiter $tol
element nonlinearBeamColumn 781 781 8 $np 7 2 -iter $maxiter $tol


# First Floor Beam - Left Hand elements #
element nonlinearBeamColumn 291 291 292 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 292 292 293 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 293 293 294 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 294 294 295 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 295 295 9 $np 2 3 -iter $maxiter $tol

# First Floor Beam - Right Hand elements #
element nonlinearBeamColumn 9 9 961 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 961 961 962 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 962 962 963 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 963 963 964 $np 2 3 -iter $maxiter $tol
element nonlinearBeamColumn 964 964 965 $np 2 3 -iter $maxiter $tol

# Second Floor Beam - Left Hand elements #
element nonlinearBeamColumn 3101 3101 3102 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 3102 3102 3103 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 3103 3103 3104 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 3104 3104 3105 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 3105 3105 10 $np 5 3 -iter $maxiter $tol

# Second Floor Beam - Right Hand elements #
element nonlinearBeamColumn 10 10 1071 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 1071 1071 1072 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 1072 1072 1073 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 1073 1073 1074 $np 5 3 -iter $maxiter $tol
element nonlinearBeamColumn 1074 1074 1075 $np 5 3 -iter $maxiter $tol

# Third Floor - Left Hand Beam Elements #
element nonlinearBeamColumn 4111 4111 4112 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 4112 4112 4113 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 4113 4113 4114 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 4114 4114 4115 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 4115 4115 11 $np 8 3 -iter $maxiter $tol

# Third Floor - Right Hand Beam Elements #
element nonlinearBeamColumn 11 11 1181 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 1181 1181 1182 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 1182 1182 1183 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 1183 1183 1184 $np 8 3 -iter $maxiter $tol
element nonlinearBeamColumn 1184 1184 1185 $np 8 3 -iter $maxiter $tol

# Second Floor Bracing - Left Hand elements #
element nonlinearBeamColumn 191 191 192 $np 3 1 -iter $maxiter $tol
element nonlinearBeamColumn 591 591 592 $np 3 1 -iter $maxiter $tol

# Second Floor Bracing - Right Hand elements #
element nonlinearBeamColumn 2101 2101 2102 $np 6 1 -iter $maxiter $tol
element nonlinearBeamColumn 6101 6101 6102 $np 6 1 -iter $maxiter $tol


#Thrid Floor - Left Hand Columns Element #
element nonlinearBeamColumn 3111 3111 3112 $np 9 1 -iter $maxiter $tol
element nonlinearBeamColumn 7111 7111 7112 $np 9 1 -iter $maxiter $tol


# Define Recorders #
recorder Node -file FrameDisp.out -time -node 11 -dof 1 disp

# Create the Display #
# a window to plot the nodal displacements versus load
set displayMode "ON"
if {$displayMode == "ON"} {
recorder plot FrameDisp.out Monotonic_Response 10 500 300 300 -columns 2 1
# create the display
recorder display FrameDef 10 200 400 300 -wipe
# next three commmands define viewing system, all values in global coords
vrp 1 1 0;# point on the view plane in global coord, center of local viewing system
vup 0 1 0;# dirn defining up direction of view plane
vpn 0 0 1;# direction of outward normal to view plane

# next three commands define view, all values in local coord system
prp 1 1 100; # eye location in local coord sys defined by viewing system

viewWindow -10 10 -10 10; # view bounds uMin, uMax, vMin, vMax in local coords

plane 0 150; # distance to front and back clipping planes from eye
port -1 1 -1 1; # area of window that will be drawn into
projection 1; # projection mode
fill 1;# fill mode
display 1 0 10;
}
# Define Initial Imperfection Load #
# set Lbr [expr sqrt($Lx2*$Lx2+$Ly*$Ly)]
# set P [expr 48*$E*$Iybr1/$Im/$Lbr/$Lbr]

#pattern Plain 1 Linear {
# load 333 [expr $P*sin($T)] [expr -1*$P*cos($T)] 0.0 -const

# load 334 [expr -1*$P*sin($T)] [expr -1*$P*cos($T)] 0.0 -const


#}
# First, gravity analysis
#set GravSteps 10;
#integrator LoadControl [expr 1./$GravSteps] 1 [expr 1./$GravSteps] [expr 1./$GravSteps]
#test NormDispIncr 1.0e-8 20 0
#algorithm Newton
#constraints Plain
#numberer RCM
#system BandGeneral
#analysis Static
#analyze $GravSteps
#loadConst -time 0.0

# Define Pushover Pattern #
set Vs 2155; # Static Base Shear
pattern Plain 1 Linear {
load 9 [expr 345/$Vs] 0.0 0.0
load 10 [expr 690/$Vs] 0.0 0.0
load 11 [expr 1120/$Vs] 0.0 0.0
}
# Define Loding Control #
set DmaxPush 0.20; # Maximum Dispalcement at end of Brace
set DxPush 0.0005; # Incremental dispalcement
set Nsteps [expr int($DmaxPush/$DxPush)]
integrator DisplacementControl 11 1 $DxPush
constraints Transformation
numberer RCM
system BandGeneral
test EnergyIncr 1.0e-10 20
algorithm Newton
analysis Static
analyze $Nsteps


------ Here is the Source file for WsectionR---- used for rotated wide flange fiber section -----



# Wsection.tcl: tcl procedure for creating a wide flange steel fiber section
# written: Remo M. de Souza
# date: 06/99
# modified: 08/99 (according to the new general modelbuilder)
# modified: 7/Oct/05, to include MatlabOut functionality, so
# that you can plot the section fibers in Matlab!

# +-----------------------+ + +
# | | | tf |
# +----------+ +----------+ + |
# | | | |
# y | | | |
# | | | | |
# z--+ ->| |<- tw | dw | d
# | | | |
# | | | |
# | | | |
# +----------+ +----------+ + |
# | | | tf |
# +-----------------------+ + +
# bf



# input parameters
# secID - section ID number
# matID - material ID number
# d = nominal depth
# tw = web thickness
# bf = flange width
# tf = flange thickness
# nfdw = number of fibers along web depth
# nftw = number of fibers along web thickness
# nfbf = number of fibers along flange width
# nftf = number of fibers along flange thickness

proc WsectionR {secID matID d tw bf tf nfdw nftw nfbf nftf {MatlabOut 0}} {
set dw [expr $d - 2 * $tf]
if {$dw<=0} {
puts "Error: Wsection beam depth is too small"
exit
}
set y1 [expr -$bf/2]
set y2 [expr -$tw/2]
set y3 [expr $tw/2]
set y4 [expr $bf/2]
set z1 [expr -$d/2]
set z2 [expr -$dw/2]
set z3 [expr $dw/2]
set z4 [expr $d/2]
#
section fiberSec $secID {
# nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quadr $matID $nftf $nfbf $y1 $z2 $y1 $z1 $y4 $z1 $y4 $z2
patch quadr $matID $nfdw $nftw $y2 $z3 $y2 $z2 $y3 $z2 $y3 $z3
patch quadr $matID $nftf $nfbf $y1 $z4 $y1 $z3 $y4 $z3 $y4 $z4
}

if { $MatlabOut == 1 } {
set matfile [open "WsectionfiberS$secID.out" "w"]
puts $matfile "Wsection d=$d, tw=$tw, bf=$bf, tf=$tf"
puts $matfile "patch quadr $matID $nfbf $nftf $y1 $z1 $y1 $z2 $y4 $z2 $y4 $z1
"
puts $matfile "patch quadr $matID $nftw $nfdw $y2 $z2 $y2 $z3 $y3 $z3 $y3 $z2

"
puts $matfile "patch quadr $matID $nfbf $nftf $y1 $z3 $y4 $z3 $y4 $z4 $y1 $z4"
close $matfile
}
}
silvia
Posts: 3909
Joined: Tue Jan 11, 2005 7:44 am
Location: Degenkolb Engineers
Contact:

Post by silvia »

are you using the latest executable?
also, please define Vs as an integer(just put a period at the end of the number), and try that.
Silvia Mazzoni, PhD
Structural Consultant
Degenkolb Engineers
235 Montgomery Street, Suite 500
San Francisco, CA. 94104
Post Reply