questions about example SS_IC1.TCL

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

Moderators: silvia, selimgunay, Moderators

Post Reply
SUMMERER
Posts: 16
Joined: Wed Jun 03, 2020 6:36 pm

questions about example SS_IC1.TCL

Post by SUMMERER »

Hello, I'd like to ask a question.I am working on a case "example SS_IC1.TCL" on the official website:.Out-of-xml section5. I add a recoder:"recorder Node -file section5.out -xml section5.out -time -node 13 -dof 3 disp "wants to get the moment curvature of the column end.
However, when I output the relationship of bending moment curvature, I find that the curvature is not consistent with the original text.The "-Dof 3" output by node 12 in the zero-length element is the curvature of the zero-length element.Since the original code used "KPS, in" units, I transformed it to obtain the curvature result (1/in) * (1/ (25.4/1000)), thus obtaining the curvature under "m" units.But my results were more than eight times different from the article's.
Is my understanding wrong?Or is it a unit conversion problem?
Please help me ! Thanks!
SUMMERER
Posts: 16
Joined: Wed Jun 03, 2020 6:36 pm

Re: questions about example SS_IC1.TCL

Post by SUMMERER »

#example ss_ic1.tcl
# bridge T-joint
# -----------------
# Units: kips, in.

# Pushover analysis multiple dispBeamColumn with strain penetration

# modeling the circular RC column in a bridge T-joint tested by
# Sri Sritharan
# "Seismic response of column/cap beam tee connections
# with cap beam prestressing" Ph.D. thesis, UCSD


# Create ModelBuilder (with two dimensions and 2 DOF/node)
model basic -ndm 2 -ndf 3

# Create nodes
# tag X Y
node 1 0.0 -48.0
node 2 0.0 -30.0
node 3 0.0 -12.0
node 4 0.0 0.0
node 5 0.0 12.0
node 6 0.0 30.0
node 7 0.0 48.0
node 8 12.0 0.0
node 9 19.0 0.0
node 10 40.0 0.0
node 11 61.5 0.0
node 12 84.0 0.0
node 13 12.0 0.0
# Fix supports at base of column
# Tag DX DY RZ
fix 1 1 1 0
fix 7 1 0 0
#equalDOF $rNodeTag $cNodeTag $dof1 $dof2
equalDOF 8 13 2

# Define materials for nonlinear columns
##column Core CONCRETE tag f'c ec0 f'cu ecu
uniaxialMaterial Concrete01 1 -6.38 -0.004 -5.11 -0.014
uniaxialMaterial Concrete01 200 -6.38 -0.004 -5.11 -0.014
##column Cover CONCRETE tag f'c ec0 f'cu ecu
uniaxialMaterial Concrete01 2 -4.56 -0.002 0.0 -0.006
##column stub CONCRETE tag E
uniaxialMaterial Elastic 3 2280

##beam CONCRETE tag f'c ec0 f'cu ecu
uniaxialMaterial Concrete01 4 -5.76 -0.002 0.0 -0.006

## STEEL rebar
##STEEL02 tag $Fy $E $b $R0 $cR1 $cR2 $a1 $a2 $a3 $a4
uniaxialMaterial Steel02 5 65.0 29000 0.02 18.5 0.925 0.15 0.04 1.0 0.04 1.0
uniaxialMaterial Steel02 6 62.8 29000 0.02 18.5 0.925 0.15 0.00 1.0 0.00 1.0
uniaxialMaterial Elastic 7 29000

#uniaxialMaterial StrPen01 $Tag $sy $fy $su $fu $Kz $R $Cd $db $fc $la
uniaxialMaterial Bond_SP01 400 65 0.02 97.5 0.7 0.50 0.7 0.0 1.0 4.35 25.0

# Define cross-section for nonlinear column
set colDia 24; # bending in this direction (local and global y)
set cover 1.38;
set bcent 1.81; # [expr $cover+0.197+0.5]
set As 0.60; # Area of no. 7 bar
set R [expr $colDia/2.0]
set Rc [expr $colDia/2.0-$cover]
set Rb [expr $colDia/2.0-$bcent]

section Fiber 1 {
# core concrete fibers
patch circ 1 70 22 0.0 0.0 0.0 $Rc 0.0 360.0
# concrete cover fibers
patch circ 2 70 2 0.0 0.0 $Rc $R 0.0 360.0
# reinforcing fibers
layer circ 5 14 $As 0.0 0.0 $Rb -90.0 244.3
}
section Fiber 2 {
# core concrete fibers
patch circ 3 70 22 0.0 0.0 0.0 $Rc 0.0 360.0
# concrete cover fibers
patch circ 3 70 2 0.0 0.0 $Rc $R 0.0 360.0
# reinforcing fibers
layer circ 5 14 $As 0.0 0.0 $Rb -90.0 244.3
}

section Fiber 5 {
# core concrete fibers
patch circ 200 70 22 0.0 0.0 0.0 $Rc 0.0 360.0
# concrete cover fibers
patch circ 2 70 2 0.0 0.0 $Rc $R 0.0 360.0
# reinforcing fibers
layer circ 400 14 $As 0.0 0.0 $Rb -90.0 244.3
}

# Define cross-section for nonlinear cap beam
set bmw 27; # bending in this direction (local and global y)
set bmh 24; # bending in this direction (local and global y)
set cover 1.38;
set bcent 1.81; # [expr $cover+0.197+0.5]

set aw [expr $bmw/2.0]
set ac [expr $bmw/2.0-$cover]
set ab [expr $bmw/2.0-$bcent]
set bw [expr $bmh/2.0]
set bc [expr $bmh/2.0-$cover]
set bb [expr $bmh/2.0-$bcent]

section Fiber 3 {
# concrete fibers
patch quad 4 48 1 -$bw -$aw $bw -$aw $bw $aw -$bw $aw
# reinforcing fibers
layer straight 6 7 $As -$bb $ab -$bb -$ab
layer straight 6 7 $As $bb $ab $bb -$ab
}

# Define column elements
## Geometry of coloumn elements
geomTransf Linear 1

# Number of integration points along length of element
set np 5

# Create the columns using displacement controlled beam-column elements
# tag ndI ndJ nsecs secID transfTag
element dispBeamColumn 1 1 2 $np 3 1
element dispBeamColumn 2 2 3 $np 3 1
element dispBeamColumn 3 3 4 $np 3 1
element dispBeamColumn 4 4 5 $np 3 1
element dispBeamColumn 5 5 6 $np 3 1
element dispBeamColumn 6 6 7 $np 3 1
element dispBeamColumn 7 4 8 $np 2 1
element dispBeamColumn 8 13 9 $np 1 1
element dispBeamColumn 9 9 10 $np 1 1
element dispBeamColumn 10 10 11 $np 1 1
element dispBeamColumn 11 11 12 $np 1 1
# zeroLengthSection tag ndI ndJ secID
element zeroLengthSection 12 8 13 5

# Set up and perform analysis
## Create recorders
recorder Node -file topdispac.out -time -node 12 -dof 2 disp
recorder Node -file rot4ac.out -time -node 4 -dof 3 disp
recorder Node -file rot8ac.out -time -node 8 -dof 3 disp

recorder Node -file section5.out -xml section5.out -time -node 13 -dof 3 disp

recorder Drift drift84ac.out 4 8 2 1
recorder Drift curvatureac.out 8 9 3 1
recorder Drift curvatureac1.out 13 9 3 1
recorder Element -file secstrspac.out -time -ele 8 section 5 fiber -$Rb 0 5 stressStrain
recorder Element -file secstrsnac.out -time -ele 8 section 5 fiber $Rb 0 5 stressStrain
recorder Element -file secstrcac.out -time -ele 8 section 5 fiber $Rc 0 1 stressStrain
recorder plot topdispac.out Node12_Ydisp 10 10 300 300 -columns 2 1

set P -90.0
pattern Plain 1 "Constant" {
load 12 $P 0.0 0.0
}

# Define analysis parameters
integrator LoadControl 0
system SparseGeneral -piv
test NormDispIncr 1.0e-4 2000
numberer Plain
constraints Plain
algorithm KrylovNewton
analysis Static

# Do one analysis for constant axial load
analyze 1

# Define reference force
pattern Plain 2 "Linear" {
load 12 0.0 1.0 0.0
}

set dU1 -0.02
set dU2 0.02

# Perform the analysis
integrator DisplacementControl 12 2 $dU1
analyze 33
integrator DisplacementControl 12 2 $dU2
analyze 65
integrator DisplacementControl 12 2 $dU1
analyze 32

integrator DisplacementControl 12 2 $dU1
analyze 67
integrator DisplacementControl 12 2 $dU2
analyze 134
integrator DisplacementControl 12 2 $dU1
analyze 67

integrator DisplacementControl 12 2 $dU1
analyze 101
integrator DisplacementControl 12 2 $dU2
analyze 202
integrator DisplacementControl 12 2 $dU1
analyze 101

integrator DisplacementControl 12 2 $dU1
analyze 135
integrator DisplacementControl 12 2 $dU2
analyze 270
integrator DisplacementControl 12 2 $dU1
analyze 135

integrator DisplacementControl 12 2 $dU1
analyze 202
integrator DisplacementControl 12 2 $dU2
analyze 404
integrator DisplacementControl 12 2 $dU1
analyze 202
selimgunay
Posts: 916
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: questions about example SS_IC1.TCL

Post by selimgunay »

You can not get the curvature at a section by using the Node recorder. You should use the element recorder. Please see the example at the bottom of the page at the below link.

https://opensees.berkeley.edu/wiki/inde ... t_Recorder
SUMMERER
Posts: 16
Joined: Wed Jun 03, 2020 6:36 pm

Re: questions about example SS_IC1.TCL

Post by SUMMERER »

selimgunay wrote: Wed Aug 12, 2020 5:12 pm You can not get the curvature at a section by using the Node recorder. You should use the element recorder. Please see the example at the bottom of the page at the below link.

https://opensees.berkeley.edu/wiki/inde ... t_Recorder
thanks for your replying, selimgunay! :D
I looked at the command flow, but I still didn't quite understand what it meant
"recorder Element -file Element1.out -time -ele 1 3 section 1 fiber 0.10 0.10 stressStrain"
For zerolength section element, using "recorder Element -file Element1.out -time -ele 1 section fiber 0.10 0.10 stressStrain". Is the coordinate 0.10 0.10 the distance from the center of the circle of the section?
In addition, if I get the stress strain, how do I convert it to moment curvature?

I don't quite understand the output of this case. May I ask you something?
1."recorder Drift curvatureac.out 8 9 3 1" and "recorder Drift curvatureac1.out 13 9 3 1",what do these two commands means? Is Curvature?
2.Code "set bcent 1.81; # [expr $cover+0.197+0.5] " .What's BCENT?I don't understand why the protective thickness should be added with 0.197 and 0.5 (PS: these two Numbers never appear).
Looking forward to your reply!!
Regard
selimgunay
Posts: 916
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: questions about example SS_IC1.TCL

Post by selimgunay »

Yes that gives you the stress and strain, for the curvature you should use

recorder Element -file Element1.out -time -ele 1 section deformation

for the moment, it should be

recorder Element -file Element1.out -time -ele 1 section force
SUMMERER
Posts: 16
Joined: Wed Jun 03, 2020 6:36 pm

Re: questions about example SS_IC1.TCL

Post by SUMMERER »

selimgunay wrote: Thu Aug 13, 2020 7:48 pm Yes that gives you the stress and strain, for the curvature you should use

recorder Element -file Element1.out -time -ele 1 section deformation

for the moment, it should be

recorder Element -file Element1.out -time -ele 1 section force
Thank you for your answer!Dear selimgunay! I used the two codes you gave me, took Mz and kappaZ to draw the moment-curvature diagram (converted them into international units for comparison), but I found that my curvature was about 8 times greater than that in the scholar's literature.I'm doing it the right way?
The code I used as follows:
recorder Element -xml Element12Def.out -time -ele 12 section deformation
recorder Element -xml Element12For.out -time -ele 12 section force
Hope to get your reply!
selimgunay
Posts: 916
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: questions about example SS_IC1.TCL

Post by selimgunay »

You should also specify the section number like

recorder Element -xml Element12Def.out -time -ele 12 section 1 deformation
recorder Element -xml Element12For.out -time -ele 12 section 1 force
SUMMERER
Posts: 16
Joined: Wed Jun 03, 2020 6:36 pm

Re: questions about example SS_IC1.TCL

Post by SUMMERER »

selimgunay wrote: Sat Aug 15, 2020 9:30 am You should also specify the section number like

recorder Element -xml Element12Def.out -time -ele 12 section 1 deformation
recorder Element -xml Element12For.out -time -ele 12 section 1 force
Dear selimgunay, hank you for your reply and apologize for my late reply!
I tried this code and the result not right, and I used the code you recommended before
" recorder Element -xml Data2/Element12Dsp.out -time -ele 12 section deformation
recorder Element -xml Data2/Element12Frc.out -time -ele 12 section forces "
The moment is similar to that in the literature, but the curvature is about 12 times greater, but the unit I used is "in", so the units of output curvature should not require conversion of units (1/in).
Thank you for your patient reply and look forward to your reply!!
selimgunay
Posts: 916
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: questions about example SS_IC1.TCL

Post by selimgunay »

If the moments are similar, curvatures should also be like that. If there is a factor of 12, it looks like there is an issue with units. Curvature units should be in 1/length unit, you are right. You can also double check everything to see if it satisfies M/EI=curvature in the elastic range.
SUMMERER
Posts: 16
Joined: Wed Jun 03, 2020 6:36 pm

Re: questions about example SS_IC1.TCL

Post by SUMMERER »

selimgunay wrote: Tue Aug 18, 2020 5:10 pm If the moments are similar, curvatures should also be like that. If there is a factor of 12, it looks like there is an issue with units. Curvature units should be in 1/length unit, you are right. You can also double check everything to see if it satisfies M/EI=curvature in the elastic range.
Thanks again selimgunay!I still have a lot to learn from you!
I'm going to check the model again to see if it's a unit problem!
You are so kind!
selimgunay
Posts: 916
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: questions about example SS_IC1.TCL

Post by selimgunay »

You're welcome.
Post Reply