I want to simulate the behavior of a k-shaped bracing system, the ones that are used in steel bridges as intermediate diaphragms for lateral loads and for redistribution of vertical loads among the beams.
So I want to model a top strutt, a bottom strutt and diagonals with L-shaped elements (ignoring the eccentricity due to the connections at the moment), some plates usually welded to the webs of the beams (still modeled with frames), and a top slab connected to the bracing system through rigid links.
Then I load it in pure shear or in pure bending and shear/bending in different ratios.
The model is already existing and working in SAP2000 but I need it in OS because it is part of the analysis of a bridge database.
Also it's a way of verifying that my OS results are in agreement with SAP2000.
The geometry of the bracings is at pag 101 of this document (although it's not important the geometry):
http://www.fhwa.dot.gov/bridge/steel/pu ... mple01.pdf
I cannot get
Theoretically it is a very simple problem, just few frames each with its fiber section attached, loads at the nodes, displacement control.
I tested all the sections and they work in a one frame problem, for example a cantilever beam with vertical load.
Thanks in advance for any contribution.
K-shaped bracin modeling
Moderators: silvia, selimgunay, Moderators
-
- Posts: 8
- Joined: Tue Jan 21, 2014 11:39 am
Re: K-shaped bracin modeling
here is the code
[code]
wipe
# Beam spacing
set BS 120.
#beam depth
set bdepth 54.
#Mesh lengh (tributary area of slab)
set ML 100.
set flangewidth 14.
#slab thickness
set ST 7.5
# Create ModelBuilder
model BasicBuilder -ndm 3 -ndf 6
########################################## MATERIALS ################################################
#
#
########################################## MATERIALS ################################################
# Slab concrete
uniaxialMaterial Concrete01 1 -4.0 -0.002 -3.0 -0.0035
#clear cover
set CCov 2.
# STEEL
#uniaxialMaterial MultiLinear $matTag $u1 $f1 $u2 $f2 $u3 $f3 $u4 $f4
uniaxialMaterial MultiLinear 2 \
1.72E-03 50.\
0.015 52.\
0.0256 54.054 \
0.0572 61.6194 \
0.11 65. \
0.14 64.3924 \
0.17 63.0139 \
0.1917 0
# Reinforcing steel
set fy 60.0; # Yield stress
set E 30000.0; # Young's modulus
# tag fy E0 b
uniaxialMaterial Steel01 3 $fy $E 0.01
########################################## FIber section geometry ################################################
#
#
########################################## FIber section geometry ################################################
#mesh of the L shape edge excluding the central zone
set meshz 5
set meshy 5
set Lthick 0.3
#L shape dimensions
set lz 4.
set ly 4.
# Areas of fibers
set Area1 [expr ($lz-$Lthick)*$Lthick/$meshz]
set Area2 [expr ($ly-$Lthick)*$Lthick/$meshy]
set Areac [expr $Lthick*$Lthick]
# centroid
set zg [expr ( (($lz-$Lthick)*$Lthick*(($lz-$Lthick)/2+$Lthick)+ \
($ly-$Lthick)*$Lthick*$Lthick/2+ \
($Lthick*$Lthick*$Lthick/2))/ \
($Area1*$meshz+$Area2*$meshy+$Areac) \
)]
set yg $zg
puts "Area [expr ($Area1*$meshz+$Area2*$meshy+$Areac)]"
set zc [expr -$zg+$Lthick/2]
set yc [expr -$yg+$Lthick/2]
# eccentricity
set excy 0.0
set excz 0.0
########################################## Non-linear elements ################################################
#
#
########################################## Non-linear elements ################################################
##########################################################################################
#Lshaped
##########################################################################################
#fiber $yLoc $zLoc $A $matTag
section Fiber 10 {
for {set ID 1} {$ID <= $meshy} {incr ID} {
fiber [expr -$yg+$Lthick/2] [expr $Lthick+($lz-$Lthick)/$meshz/2+($lz-$Lthick)/$meshz*($ID-1)-$zg] $Area1 2
}
fiber $yc $zc $Areac 2
for {set ID 1} {$ID <= $meshz} {incr ID} {
fiber [expr $Lthick+($ly-$Lthick)/$meshy/2+($ly-$Lthick)/$meshy*($ID-1)-$yg] [expr -$zg+$Lthick/2] $Area2 2
}
}
##########################################################################################
#stiffners
##########################################################################################
section Fiber 11 {
patch rect 2 5 2 [expr -$flangewidth/2] [expr -1./4] [expr $flangewidth/2] [expr 1./4]
}
##########################################################################################
#slab
##########################################################################################
# slab reinforcement layer, number of n.5 bars into slab width
set nbars [expr int($BS/10.0)]
section Fiber 12 {
patch rect 1 6 2 [expr -$ST/2] [expr -$ML/2] [expr $ST/2] [expr $ML/2]
layer straight 3 $nbars 0.31 [expr $ST/2-$CCov] [expr -$ML/2] [expr $ST/2-$CCov] [expr $ML/2]
layer straight 3 $nbars 0.31 [expr -$ST/2+$CCov] [expr -$ML/2] [expr -$ST/2+$CCov] [expr $ML/2]
}
#T
uniaxialMaterial Elastic 20 [expr 100000.]
section Aggregator 1 20 T -section 10
section Aggregator 2 20 T -section 11
section Aggregator 3 20 T -section 12
########################################## NODES ################################################
#
#
########################################## NODES ################################################
#nodes per beam
puts "BS $BS"
puts "bdepth $bdepth"
##########################################################################################
#k-bracing nodes
##########################################################################################
#bottom strutt (the central node is for the diagonals connection)
node 1 0.0 0.0 0.0
node 2 [expr $BS/2] 0.0 0.0
node 3 $BS 0.0 0.0
#top strutt
node 4 0.0 [expr $bdepth-12.] 0.0
node 5 $BS [expr $bdepth-12.] 0.0
##########################################################################################
#slab nodes
##########################################################################################
node 6 0.0 [expr $bdepth-12.+10.] 0.0
node 7 $BS [expr $bdepth-12.+10.] 0.0
########################################## RESTRAINS/CONSTRAINS ################################################
#
#
########################################## RESTRAINS/CONSTRAINS ################################################
fix 1 1 1 1 0 0 0
fix 3 0 0 1 0 0 0
fix 6 1 0 1 0 0 0
fix 7 0 0 1 0 0 0
geomTransf Corotational 1 0 0 1
#rigidLink $type $masterNodeTag $slaveNodeTag
#rigid links for the eccentricity between beams and slab
rigidLink beam 6 4
rigidLink beam 7 5
########################################## ELEMENTS ################################################
#
#
########################################## ELEMENTS ################################################
# element nonlinearBeamColumn $eleTag $iNode $jNode $numIntgrPts $secTag $transfTag
#slab
element dispBeamColumn 1 6 7 5 3 1
#top strutt
element dispBeamColumn 2 4 5 5 1 1
#bott strutt
element dispBeamColumn 3 1 2 5 1 1
element dispBeamColumn 4 2 3 5 1 1
#stiffners (plate)
element dispBeamColumn 5 1 4 5 2 1
element dispBeamColumn 6 3 5 5 2 1
#diagonals
element dispBeamColumn 7 2 4 5 1 1
element dispBeamColumn 8 2 5 5 1 1
########################################## Recorder ################################################
#
#
########################################## Recorder ################################################
recorder Node -file disp.out -node 3 -dof 1 2 3 4 5 6 disp
recorder Node -file reactions6.out -node 6 -dof 1 2 3 4 5 6 reaction
recorder Node -file reactions1.out -node 1 -dof 1 2 3 4 5 6 reaction
########################################## LOADS ################################################
#
#
########################################## LOADS ################################################
pattern Plain 1 Linear {
load 3 -1 0 0 0 0 0
load 7 1 0 0 0 0 0
#load 7 0 -1 0 0 0 0
}
########################################## ANALYSIS ################################################
#
#
########################################## ANALYSIS ################################################
system BandGeneral
constraints Transformation
numberer RCM
test NormDispIncr .001 100
algorithm Newton
# integrator DisplacementControl $node $dof $incr
integrator DisplacementControl 7 1 -.000001
# integrator LoadControl $lambda <$numIter $minLambda $maxLambda>
#integrator LoadControl 0.75
analysis Static
for {set j 1} {$j <= 100} {incr j} {
# Perform the analysis
puts "step $j"
analyze 1
}
[/code]
[code]
wipe
# Beam spacing
set BS 120.
#beam depth
set bdepth 54.
#Mesh lengh (tributary area of slab)
set ML 100.
set flangewidth 14.
#slab thickness
set ST 7.5
# Create ModelBuilder
model BasicBuilder -ndm 3 -ndf 6
########################################## MATERIALS ################################################
#
#
########################################## MATERIALS ################################################
# Slab concrete
uniaxialMaterial Concrete01 1 -4.0 -0.002 -3.0 -0.0035
#clear cover
set CCov 2.
# STEEL
#uniaxialMaterial MultiLinear $matTag $u1 $f1 $u2 $f2 $u3 $f3 $u4 $f4
uniaxialMaterial MultiLinear 2 \
1.72E-03 50.\
0.015 52.\
0.0256 54.054 \
0.0572 61.6194 \
0.11 65. \
0.14 64.3924 \
0.17 63.0139 \
0.1917 0
# Reinforcing steel
set fy 60.0; # Yield stress
set E 30000.0; # Young's modulus
# tag fy E0 b
uniaxialMaterial Steel01 3 $fy $E 0.01
########################################## FIber section geometry ################################################
#
#
########################################## FIber section geometry ################################################
#mesh of the L shape edge excluding the central zone
set meshz 5
set meshy 5
set Lthick 0.3
#L shape dimensions
set lz 4.
set ly 4.
# Areas of fibers
set Area1 [expr ($lz-$Lthick)*$Lthick/$meshz]
set Area2 [expr ($ly-$Lthick)*$Lthick/$meshy]
set Areac [expr $Lthick*$Lthick]
# centroid
set zg [expr ( (($lz-$Lthick)*$Lthick*(($lz-$Lthick)/2+$Lthick)+ \
($ly-$Lthick)*$Lthick*$Lthick/2+ \
($Lthick*$Lthick*$Lthick/2))/ \
($Area1*$meshz+$Area2*$meshy+$Areac) \
)]
set yg $zg
puts "Area [expr ($Area1*$meshz+$Area2*$meshy+$Areac)]"
set zc [expr -$zg+$Lthick/2]
set yc [expr -$yg+$Lthick/2]
# eccentricity
set excy 0.0
set excz 0.0
########################################## Non-linear elements ################################################
#
#
########################################## Non-linear elements ################################################
##########################################################################################
#Lshaped
##########################################################################################
#fiber $yLoc $zLoc $A $matTag
section Fiber 10 {
for {set ID 1} {$ID <= $meshy} {incr ID} {
fiber [expr -$yg+$Lthick/2] [expr $Lthick+($lz-$Lthick)/$meshz/2+($lz-$Lthick)/$meshz*($ID-1)-$zg] $Area1 2
}
fiber $yc $zc $Areac 2
for {set ID 1} {$ID <= $meshz} {incr ID} {
fiber [expr $Lthick+($ly-$Lthick)/$meshy/2+($ly-$Lthick)/$meshy*($ID-1)-$yg] [expr -$zg+$Lthick/2] $Area2 2
}
}
##########################################################################################
#stiffners
##########################################################################################
section Fiber 11 {
patch rect 2 5 2 [expr -$flangewidth/2] [expr -1./4] [expr $flangewidth/2] [expr 1./4]
}
##########################################################################################
#slab
##########################################################################################
# slab reinforcement layer, number of n.5 bars into slab width
set nbars [expr int($BS/10.0)]
section Fiber 12 {
patch rect 1 6 2 [expr -$ST/2] [expr -$ML/2] [expr $ST/2] [expr $ML/2]
layer straight 3 $nbars 0.31 [expr $ST/2-$CCov] [expr -$ML/2] [expr $ST/2-$CCov] [expr $ML/2]
layer straight 3 $nbars 0.31 [expr -$ST/2+$CCov] [expr -$ML/2] [expr -$ST/2+$CCov] [expr $ML/2]
}
#T
uniaxialMaterial Elastic 20 [expr 100000.]
section Aggregator 1 20 T -section 10
section Aggregator 2 20 T -section 11
section Aggregator 3 20 T -section 12
########################################## NODES ################################################
#
#
########################################## NODES ################################################
#nodes per beam
puts "BS $BS"
puts "bdepth $bdepth"
##########################################################################################
#k-bracing nodes
##########################################################################################
#bottom strutt (the central node is for the diagonals connection)
node 1 0.0 0.0 0.0
node 2 [expr $BS/2] 0.0 0.0
node 3 $BS 0.0 0.0
#top strutt
node 4 0.0 [expr $bdepth-12.] 0.0
node 5 $BS [expr $bdepth-12.] 0.0
##########################################################################################
#slab nodes
##########################################################################################
node 6 0.0 [expr $bdepth-12.+10.] 0.0
node 7 $BS [expr $bdepth-12.+10.] 0.0
########################################## RESTRAINS/CONSTRAINS ################################################
#
#
########################################## RESTRAINS/CONSTRAINS ################################################
fix 1 1 1 1 0 0 0
fix 3 0 0 1 0 0 0
fix 6 1 0 1 0 0 0
fix 7 0 0 1 0 0 0
geomTransf Corotational 1 0 0 1
#rigidLink $type $masterNodeTag $slaveNodeTag
#rigid links for the eccentricity between beams and slab
rigidLink beam 6 4
rigidLink beam 7 5
########################################## ELEMENTS ################################################
#
#
########################################## ELEMENTS ################################################
# element nonlinearBeamColumn $eleTag $iNode $jNode $numIntgrPts $secTag $transfTag
#slab
element dispBeamColumn 1 6 7 5 3 1
#top strutt
element dispBeamColumn 2 4 5 5 1 1
#bott strutt
element dispBeamColumn 3 1 2 5 1 1
element dispBeamColumn 4 2 3 5 1 1
#stiffners (plate)
element dispBeamColumn 5 1 4 5 2 1
element dispBeamColumn 6 3 5 5 2 1
#diagonals
element dispBeamColumn 7 2 4 5 1 1
element dispBeamColumn 8 2 5 5 1 1
########################################## Recorder ################################################
#
#
########################################## Recorder ################################################
recorder Node -file disp.out -node 3 -dof 1 2 3 4 5 6 disp
recorder Node -file reactions6.out -node 6 -dof 1 2 3 4 5 6 reaction
recorder Node -file reactions1.out -node 1 -dof 1 2 3 4 5 6 reaction
########################################## LOADS ################################################
#
#
########################################## LOADS ################################################
pattern Plain 1 Linear {
load 3 -1 0 0 0 0 0
load 7 1 0 0 0 0 0
#load 7 0 -1 0 0 0 0
}
########################################## ANALYSIS ################################################
#
#
########################################## ANALYSIS ################################################
system BandGeneral
constraints Transformation
numberer RCM
test NormDispIncr .001 100
algorithm Newton
# integrator DisplacementControl $node $dof $incr
integrator DisplacementControl 7 1 -.000001
# integrator LoadControl $lambda <$numIter $minLambda $maxLambda>
#integrator LoadControl 0.75
analysis Static
for {set j 1} {$j <= 100} {incr j} {
# Perform the analysis
puts "step $j"
analyze 1
}
[/code]