内容发布更新时间 : 2025/1/8 14:38:05星期一 下面是文章的全部内容请认真阅读。
# Written by wyy # Units: N, m, sec
wipe; #wipe memery for new calculation
model basic -ndm 2 -ndf 3; #2-d problem, 3-degree of freedom per node ## Define constant
set PI [expr 2*asin(1.0)] #等于π set g 9.81; ## Data input
set hCol 0.36; # Height of Column set bCol 0.50; # Width of Column
set colAspect 4.86; # Column aspect ratio: L/D 柱子的纵横比
set v [expr 0.1]; # Column axial load rate --> P = v*f'c*Ag 轴向荷载率 set LCol [expr $hCol*$colAspect]; # Column length 柱长 set fc -4.16E7; # Concrete compressive strength set fpc -5.747E+7 set epsc0 -0.006328 set fpcu -3.302E+7 set epsu -0.0215 #set ratio 0.3 #set ft 5.474E+5 set Ec 2.43E10
set colArea [expr $hCol*$bCol]; # Column cross-section area 横截面积 set P [expr 2*$v*$fc*$colArea]; # Column axial load 轴向荷载 #set P [expr -576000-691484]
set m [expr -$P/$g]; # Beam nodal mass 节点质量 set beamArea $colArea; # Beam cross-section area set GJ 1.0e15; # Torsional stiffness 扭转刚度 set np 3; # Number of integration points
## Define uniaxial materials
# Core concrete (confined约束混凝土)
uniaxialMaterial Concrete01 1 [expr $fpc] $epsc0 $fpcu $epsu
#uniaxialMaterial Concrete02 1 [expr $fpc] $epsc0 $fpcu $epsu $ratio $ft $Ets
# Cover concrete (unconfined无约束)
uniaxialMaterial Concrete01 2 [expr $fc] -0.002 0 -0.005 # STEEL
## Cover steel Tube
#set fy 3.67e8; # Yield stress
#set E 2.0E11; # Young's modulus E=200000000kN/m # tag fy E0 b
#uniaxialMaterial Steel01 3 $fy $E 0.01 # STEEL
set fy 3.2E8 set fu 4.59E8 set Es 2.0E11
set Esh 6E9 ; # 0.03*Es set esh 0.016 ; # 8*ey set eult 0.08 ;# 40*ey set lsr 6.0 set beta 1.0 set r 0.8
set gama 0.8 set Cf 0.7
set alpha 0.506 set Cd 0.7
uniaxialMaterial ReinforcingSteel 3 $fy $fu $Es $Esh $esh $eult -GABuck $lsr $beta $r $gama -CMFatigue $Cf $alpha $Cd
# Post-tension threaded rod tag E0 eyt eyc initial strain(以负为正) set beta1 1.0 set r1 0.5 set gama1 0.5 set Cf1 0.4
set alpha1 0.3 set Cd1 0.3
uniaxialMaterial ReinforcingSteel 4 1.25E9 1.5E9 1.95E11 $Esh 0.06 0.3 -GABuck $lsr $beta1 $r1 $gama1 -CMFatigue $Cf1 $alpha1 $Cd1
# ---
# Post-tension threaded rod tag E0 eyt eyc initial strain(以负为正,通过输入初始应变的方式施加预应力)
#uniaxialMaterial ElasticPP 4 1.95e11 [expr 0.0086+0.0043] [expr 0.0086-0.0043] -0.0043
# -----
## Define nodes # tag X Y
node 1 0.0 0.0
node 2 0.0 [expr 0.2*$LCol] node 3 0.0 [expr 0.4*$LCol] node 4 0.0 [expr 0.6*$LCol] node 5 0.0 [expr 0.8*$LCol] node 6 0.0 $LCol ## Nodal mass # node MX MY RZ mass 6 $m $m 0.0
# Boundary conditions # node DX DY RZ fix 1 1 1 1 #fix 2 0 0 0 #fix 3 0 0 0 #fix 4 0 0 0 #fix 5 0 0 0 fix 6 0 0 0
# Define cross-section for nonlinear columns # ------------------------------------------ # set some parameters set colWidth 0.36 set colDepth 0.5
set cover 0.024
set As [expr $PI*pow(0.01,2)/4]; # area of no. 7 bars π*D2/4 (PI=π) set APs [expr 7*$PI*pow(0.005,2)/4]; # area of no. 7 bars
# some variables derived from the parameters
set y1 [expr $colWidth/2.0] set z1 [expr $colDepth/2.0]
section Fiber 2 {
# Create the concrete core fibers patch rect 1 20 20 [expr $cover-$y1] [expr $cover-$z1] [expr $y1-$cover] [expr $z1-$cover]
# Create the concrete cover fibers (top, bottom, left, right) patch rect 2 20 1 [expr -$y1] [expr $z1-$cover] $y1 $z1
patch rect 2 20 1 [expr -$y1] [expr -$z1] $y1 [expr $cover-$z1]
patch rect 2 2 1 [expr -$y1] [expr $cover-$z1] [expr $cover-$y1] [expr $z1-$cover] patch rect 2 2 1 [expr $y1-$cover] [expr $cover-$z1] $y1 [expr $z1-$cover] # Create the reinforcing fibers (left, right,top,bottom)
layer straight 3 9 $As [expr $cover-$y1] [expr $cover-$z1] [expr $cover-$y1] [expr $z1-$cover]
layer straight 3 9 $As [expr $y1-$cover] [expr $cover-$z1] [expr $y1-$cover] [expr $z1-$cover] layer straight 3 4 $As [expr $y1-$cover-(0.360-0.048)/5] [expr $z1-$cover] [expr $cover+(0.360-0.048)/5-$y1] [expr $z1-$cover] layer straight 3 4 $As [expr $y1-$cover-(0.360-0.048)/5] [expr $cover-$z1] [expr $cover+(0.360-0.048)/5-$y1] [expr $cover-$z1] layer straight 4 3 $APs -0.13 -0.20 -0.13 0.20 layer straight 4 3 $APs 0.13 -0.20 0.13 0.20 }
## Define torsional stiffness and attach it to section uniaxialMaterial Elastic 10 $GJ
## attach torsion to flexure and create a new section IDtag ## tag uniTag uniCode secTag
section Aggregator 1 10 T -section 2 # Define column elements # tag vecxz
geomTransf Linear 1 # Plastic region
# tag ndI ndJ nsecs secID transfTag element nonlinearBeamColumn 1 1 2 $np 1 1 element nonlinearBeamColumn 2 2 3 $np 1 1 element nonlinearBeamColumn 3 3 4 $np 1 1 element nonlinearBeamColumn 4 4 5 $np 1 1 element nonlinearBeamColumn 5 5 6 $np 1 1 # Define beam element
# tag $iNode $jNode $secTag
# Record nodal displacements
recorder Node -file S3-1.out -time -node 6 -dof 1 disp
recorder plot S3-1.out nodeDispbpc 10 10 300 600 -columns 2 1
recorder Element -file date/steel-p.out -time -ele 1 section 1 fiber [expr $cover-$y1] [expr $cover-$z1] stressStrain
recorder Element -file date/steel-l.out -time -ele 1 section 1 fiber [expr -$cover+$y1] [expr $cover-$z1] stressStrain
recorder Element -file date/confined-concrete-p.out -time -ele 1
section 1 fiber [expr 2*$cover-$y1] [expr 2*$cover-$z1] stressStrain recorder Element -file date/confined-concrete-l.out -time -ele 1