push over

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

Moderators: silvia, selimgunay, Moderators

Post Reply
Amin barghaman
Posts: 10
Joined: Fri Apr 10, 2009 1:37 pm
Location: t

push over

Post by Amin barghaman »

Hi,
I am trying to model x-kneebraced frame, when the displacement is 15cm it runs successfully but when it is 15.1cm it fails to coverge. Does my model have problem or not?
this is my code
tanx for your attention

wipe
model BasicBuilder -ndm 2 -ndf 3

node 1011 0 0
node 1012 600 0
node 1013 1200 0
node 1014 1800 0
node 1015 1200 0
node 1016 600 256
node 1017 660 288
node 1018 720 320
node 1019 900 160
node 1020 660 288
node 1021 600 0
node 1022 900 160
node 1023 1140 288
node 1024 1200 256
node 1025 1140 288
node 1026 1080 320

node 102 0 320
node 103 0 320
node 104 600 320
node 105 600 320
node 106 600 320
node 107 1200 320
node 108 1200 320
node 109 1200 320
node 110 1800 320
node 111 1800 320

node 2015 1200 320
node 2016 600 576
node 2017 660 608
node 2018 720 640
node 2019 900 480
node 2020 660 608
node 2021 600 320
node 2022 900 480
node 2023 1140 608
node 2024 1200 576
node 2025 1140 608
node 2026 1080 640

node 202 0 640
node 203 0 640
node 204 600 640
node 205 600 640
node 206 600 640
node 207 1200 640
node 208 1200 640
node 209 1200 640
node 210 1800 640
node 211 1800 640

node 3015 1200 640
node 3016 600 896
node 3017 660 928
node 3018 720 960
node 3019 900 800
node 3020 660 928
node 3021 600 640
node 3022 900 800
node 3023 1140 928
node 3024 1200 896
node 3025 1140 928
node 3026 1080 960

node 302 0 960
node 303 0 960
node 304 600 960
node 305 600 960
node 306 600 960
node 307 1200 960
node 308 1200 960
node 309 1200 960
node 310 1800 960
node 311 1800 960

node 4015 1200 960
node 4016 600 1216
node 4017 660 1248
node 4018 720 1280
node 4019 900 1120
node 4020 660 1248
node 4021 600 960
node 4022 900 1120
node 4023 1140 1248
node 4024 1200 1216
node 4025 1140 1248
node 4026 1080 1280

node 402 0 1280
node 403 0 1280
node 404 600 1280
node 405 600 1280
node 406 600 1280
node 407 1200 1280
node 408 1200 1280
node 409 1200 1280
node 410 1800 1280
node 411 1800 1280

fix 1011 1 1 0
fix 1012 1 1 0
fix 1013 1 1 0
fix 1014 1 1 0
#fix 1015 1 1 0
#fix 1021 1 1 0

mass 102 14625 1.00E-06 1.00e-6
mass 105 14625 1.00E-06 1.00e-6
mass 109 14625 1.00E-06 1.00e-6
mass 111 14625 1.00E-06 1.00e-6

mass 202 14625 1.00E-06 1.00e-6
mass 205 14625 1.00E-06 1.00e-6
mass 209 14625 1.00E-06 1.00e-6
mass 211 14625 1.00E-06 1.00e-6

mass 302 14625 1.00E-06 1.00e-6
mass 305 14625 1.00E-06 1.00e-6
mass 309 14625 1.00E-06 1.00e-6
mass 311 14625 1.00E-06 1.00e-6

mass 402 14625 1.00E-06 1.00e-6
mass 405 14625 1.00E-06 1.00e-6
mass 409 14625 1.00E-06 1.00e-6
mass 411 14625 1.00E-06 1.00e-6

#Elastic material
uniaxialMaterial Elastic 1 2.1000E+06
#material used for column&Brace
#steel02
uniaxialMaterial Steel01 2 24.00E+02 2.1000E+06 2.00E-02
#18.5 0.925 0.15 0 1E-6 0 1E-6
#material used for shear yielding of knee elements
#HSS 9X7X0.5
uniaxialMaterial Hysteretic 3 77.760E+03 1.783E-03 78.5375E+03 5.000E-02 -77.760E+03 -1.783E-03 -78.5375E+03 -5.00E-02 0 0 0 0 0
#HSS 8X8X0.5
uniaxialMaterial Hysteretic 4 69.1199E+03 1.783E-03 69.8111E+03 5.00E-02 -69.1199E+03 -1.783E-03 -69.8111E+03 -5.00E-02 0 0 0 0 0
#HSS 8X5X0.5
uniaxialMaterial Hysteretic 5 69.1199E+03 1.783E-03 69.8111E+03 5.00E-02 -69.1199E+03 -1.783E-03 -69.8111E+03 -5.00E-02 0 0 0 0 0


source Wsection.tcl
#Wsection $secID $matID $d $bf $tf $tw $nfdw $nftw $nfbf $nftf
#W10X33
Wsection 1 2 24.71 20.22 11E-1 7.4E-1 4 4 4 4
# W10X30
Wsection 2 2 26.59 14.76 12.9E-1 7.6E-1 4 4 4 4
# W10X22
Wsection 3 2 25.83 14.60 9.1E-1 6.1E-1 4 4 4 4
# W10X100
Wsection 4 2 28.19 26.26 28.5E-1 17.3E-1 4 4 4 4
# W10X60
Wsection 5 2 26.03 25.63 17.3E-1 10.3E-1 4 4 4 4
# W10X39
Wsection 6 2 25.20 20.28 13.4E-1 8.0E-1 4 4 4 4
# W10X112
Wsection 7 2 28.91 26.52 31.7E-1 19.2E-1 4 4 4 4
# W10X77
Wsection 8 2 26.92 25.88 22.1E-1 13.5E-1 4 4 4 4
# W10X49
Wsection 9 2 25.41 25.46 14.2E-1 8.6E-1 4 4 4 4

source Hollowsquaresection.tcl
## Hollowsquare secID matID d tw bf tf nfdw nftw nfbf nftf
# HSS9X7X0.5
Hollowsquare 101 2 22.86 1.1811 17.78 1.1811 3 3 3 3
# HSS8X8X0.5
Hollowsquare 102 2 20.32 1.1811 20.32 1.1811 3 3 3 3
# HSS8X6X0.5
Hollowsquare 103 2 20.32 1.1811 15.24 1.1811 3 3 3 3
geomTransf Linear 1
geomTransf PDelta 2
geomTransf Corotational 3
# 1st floor
# columns
# element nonlinearBeamColumn $eleTag $iNode $jNode $numIntgrPts $secTag $transfTag <-mass $massDens> <-iter $maxIters $tol>
element nonlinearBeamColumn 101 1011 102 4 1 2
element nonlinearBeamColumn 102 1012 1016 4 7 2
element nonlinearBeamColumn 103 1016 105 4 7 2
element nonlinearBeamColumn 104 1013 1024 4 7 2
element nonlinearBeamColumn 105 1024 109 4 7 2
element nonlinearBeamColumn 106 1014 111 4 1 2

# Beams
element nonlinearBeamColumn 111 103 104 4 1501 1
element nonlinearBeamColumn 112 106 1018 4 1502 1
element nonlinearBeamColumn 113 1018 1026 4 1502 1
element nonlinearBeamColumn 114 1026 107 4 1502 1
element nonlinearBeamColumn 115 108 110 4 1501 1

# brace
element nonlinearBeamColumn 141 1015 1019 4 8 3
element nonlinearBeamColumn 142 1019 1020 4 8 3
element nonlinearBeamColumn 143 1021 1022 4 8 3
element nonlinearBeamColumn 144 1022 1023 4 8 3
#element zeroLength 145 1019 1022 -mat 2 2 2 2 -dir 1 2 3 6

# knee element
element nonlinearBeamColumn 181 1016 1017 3 1001 3
element nonlinearBeamColumn 182 1017 1018 3 1001 3
element nonlinearBeamColumn 183 1024 1025 3 1001 3
element nonlinearBeamColumn 184 1025 1026 3 1001 3

# 2nd floor
# columns
element nonlinearBeamColumn 201 102 202 4 2 2
element nonlinearBeamColumn 202 105 2016 4 4 2
element nonlinearBeamColumn 203 2016 205 4 4 2
element nonlinearBeamColumn 204 109 2024 4 4 2
element nonlinearBeamColumn 205 2024 209 4 4 2
element nonlinearBeamColumn 206 111 211 4 2 2

# Beams
element nonlinearBeamColumn 211 203 204 4 1501 1
element nonlinearBeamColumn 212 206 2018 4 1502 1
element nonlinearBeamColumn 213 2018 2026 4 1502 1
element nonlinearBeamColumn 214 2026 207 4 1502 1
element nonlinearBeamColumn 215 208 210 4 1501 1

# brace
element nonlinearBeamColumn 241 2015 2019 4 8 3
element nonlinearBeamColumn 242 2019 2020 4 8 3
element nonlinearBeamColumn 243 2021 2022 4 8 3
element nonlinearBeamColumn 244 2022 2023 4 8 3
#element zeroLength 245 2019 2022 -mat 2 2 2 2 -dir 1 2 3 6

# knee element
element nonlinearBeamColumn 281 2016 2017 3 1002 3
element nonlinearBeamColumn 282 2017 2018 3 1002 3
element nonlinearBeamColumn 283 2024 2025 3 1002 3
element nonlinearBeamColumn 284 2025 2026 3 1002 3

# 3rd floor
# columns
element nonlinearBeamColumn 301 202 302 4 3 2
element nonlinearBeamColumn 302 205 3016 4 4 2
element nonlinearBeamColumn 303 3016 305 4 4 2
element nonlinearBeamColumn 304 209 3024 4 4 2
element nonlinearBeamColumn 305 3024 309 4 4 2
element nonlinearBeamColumn 306 211 311 4 3 2

# Beams
element nonlinearBeamColumn 311 303 304 4 1501 1
element nonlinearBeamColumn 312 306 3018 4 1502 1
element nonlinearBeamColumn 313 3018 3026 4 1502 1
element nonlinearBeamColumn 314 3026 307 4 1502 1
element nonlinearBeamColumn 315 308 310 4 1501 1

# brace
element nonlinearBeamColumn 341 3015 3019 4 5 3
element nonlinearBeamColumn 342 3019 3020 4 5 3
element nonlinearBeamColumn 343 3021 3022 4 5 3
element nonlinearBeamColumn 344 3022 3023 4 5 3
#element zeroLength 345 3019 3022 -mat 2 2 2 2 -dir 1 2 3 6

# knee element
element nonlinearBeamColumn 381 3016 3017 3 1002 3
element nonlinearBeamColumn 382 3017 3018 3 1002 3
element nonlinearBeamColumn 383 3024 3025 3 1002 3
element nonlinearBeamColumn 384 3025 3026 3 1002 3

# 4th floor
# columns
element nonlinearBeamColumn 401 302 402 4 3 2
element nonlinearBeamColumn 402 305 4016 4 8 2
element nonlinearBeamColumn 403 4016 405 4 8 2
element nonlinearBeamColumn 404 309 4024 4 8 2
element nonlinearBeamColumn 405 4024 409 4 8 2
element nonlinearBeamColumn 406 311 411 4 3 2

# Beams
element nonlinearBeamColumn 411 403 404 4 1501 1
element nonlinearBeamColumn 412 406 4018 4 1502 1
element nonlinearBeamColumn 413 4018 4026 4 1502 1
element nonlinearBeamColumn 414 4026 407 4 1502 1
element nonlinearBeamColumn 415 408 410 4 1501 1

# brace
element nonlinearBeamColumn 441 4015 4019 4 9 3
element nonlinearBeamColumn 442 4019 4020 4 9 3
element nonlinearBeamColumn 443 4021 4022 4 9 3
element nonlinearBeamColumn 444 4022 4023 4 9 3
#element zeroLength 445 4019 4022 -mat 2 2 2 2 -dir 1 2 3 6

# knee element
element nonlinearBeamColumn 481 4016 4017 3 1003 3
element nonlinearBeamColumn 482 4017 4018 3 1003 3
element nonlinearBeamColumn 483 4024 4025 3 1003 3
element nonlinearBeamColumn 484 4025 4026 3 1003 3

# MP constraints
# equalDOF $rNodeTag $cNodeTag $dof1 $dof2 ...
equalDOF 1013 1015 1 2
equalDOF 1012 1021 1 2

equalDOF 102 103 1 2
equalDOF 105 104 1 2
equalDOF 105 106 1 2
equalDOF 105 2021 1 2
equalDOF 109 107 1 2
equalDOF 109 108 1 2
equalDOF 109 2015 1 2
equalDOF 111 110 1 2
equalDOF 1017 1020 1 2
equalDOF 1025 1023 1 2
equalDOF 1019 1022 1 2 3

equalDOF 202 203 1 2
equalDOF 205 204 1 2
equalDOF 205 206 1 2
equalDOF 205 3021 1 2
equalDOF 209 207 1 2
equalDOF 209 208 1 2
equalDOF 209 3015 1 2
equalDOF 211 210 1 2
equalDOF 2017 2020 1 2
equalDOF 2025 2023 1 2
equalDOF 2019 2022 1 2 3

equalDOF 302 303 1 2
equalDOF 305 304 1 2
equalDOF 305 306 1 2
equalDOF 305 4021 1 2
equalDOF 309 307 1 2
equalDOF 309 308 1 2
equalDOF 309 4015 1 2
equalDOF 311 310 1 2
equalDOF 3017 3020 1 2
equalDOF 3025 3023 1 2
equalDOF 3019 3022 1 2 3

equalDOF 402 403 1 2
equalDOF 405 404 1 2
equalDOF 405 406 1 2
equalDOF 409 407 1 2
equalDOF 409 408 1 2
equalDOF 411 410 1 2
equalDOF 4017 4020 1 2
equalDOF 4025 4023 1 2
equalDOF 4019 4022 1 2 3

pattern Plain 1 Constant {
# eleLoad -ele $eleTag1 <$eleTag2 ....> -type -beamUniform $Wz <$Wx>
eleLoad -ele 111 -type -beamUniform -26.5
eleLoad -ele 112 -type -beamUniform -26.5
eleLoad -ele 113 -type -beamUniform -26.5
eleLoad -ele 114 -type -beamUniform -26.5
eleLoad -ele 115 -type -beamUniform -26.5

eleLoad -ele 211 -type -beamUniform -26.5
eleLoad -ele 212 -type -beamUniform -26.5
eleLoad -ele 213 -type -beamUniform -26.5
eleLoad -ele 214 -type -beamUniform -26.5
eleLoad -ele 215 -type -beamUniform -26.5

eleLoad -ele 311 -type -beamUniform -26.5
eleLoad -ele 312 -type -beamUniform -26.5
eleLoad -ele 313 -type -beamUniform -26.5
eleLoad -ele 314 -type -beamUniform -26.5
eleLoad -ele 315 -type -beamUniform -26.5

eleLoad -ele 411 -type -beamUniform -26.5
eleLoad -ele 412 -type -beamUniform -26.5
eleLoad -ele 413 -type -beamUniform -26.5
eleLoad -ele 414 -type -beamUniform -26.5
eleLoad -ele 415 -type -beamUniform -26.5
}

constraints Transformation
numberer RCM
system ProfileSPD
test NormDispIncr 1.0e-6 6
algorithm Newton
integrator LoadControl 0.1
analysis Static
analyze 10
loadConst -time 0.0
puts "model Built1"

# 0.2live
pattern Plain 2 Constant {
eleLoad -ele 111 -type -beamUniform -1.2
eleLoad -ele 112 -type -beamUniform -1.2
eleLoad -ele 113 -type -beamUniform -1.2
eleLoad -ele 114 -type -beamUniform -1.2
eleLoad -ele 115 -type -beamUniform -1.2

eleLoad -ele 211 -type -beamUniform -1.2
eleLoad -ele 212 -type -beamUniform -1.2
eleLoad -ele 213 -type -beamUniform -1.2
eleLoad -ele 214 -type -beamUniform -1.2
eleLoad -ele 215 -type -beamUniform -1.2

eleLoad -ele 311 -type -beamUniform -1.2
eleLoad -ele 312 -type -beamUniform -1.2
eleLoad -ele 313 -type -beamUniform -1.2
eleLoad -ele 314 -type -beamUniform -1.2
eleLoad -ele 315 -type -beamUniform -1.2

eleLoad -ele 411 -type -beamUniform -1.2
eleLoad -ele 412 -type -beamUniform -1.2
eleLoad -ele 413 -type -beamUniform -1.2
eleLoad -ele 414 -type -beamUniform -1.2
eleLoad -ele 415 -type -beamUniform -1.2
}

constraints Transformation
numberer RCM
system ProfileSPD
test NormDispIncr 1.0e-6 6
algorithm Newton
integrator LoadControl 0.1
analysis Static
analyze 10
loadConst -time 0.0

puts "model Built"


for {set u 1} {$u <= 1} {incr u 1} {
wipe

# comment out one of lines if wish to see graphics or not
set displayMode "displayON"
#set displayMode "displayOFF"


source 4storyX.tcl


pattern Plain 3 Linear {
load 102 1 0 0
load 202 2 0 0
load 302 3 0 0
load 402 3 0 0
}

set dataDir outputX$u; # set up name of data director y
file mkdir $dataDir; # create data directory

constraints Plain
numberer RCM
# system UmfPack
system ProfileSPD
test NormDispIncr 1.0e-6 25
algorithm ModifiedNewton
integrator DisplacementControl 402 1 0.1
#integrator Newmark 0.5 0.25
analysis Static
analyze 150
loadConst -time 0.0
}
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: push over

Post by vesna »

Try adding a loop at the end of your file to handle convergence problems. In the example manual you can find good examples for this.
Amin barghaman
Posts: 10
Joined: Fri Apr 10, 2009 1:37 pm
Location: t

Re: push over

Post by Amin barghaman »

dear vesna,
thanks alot for your answer, I studied example manual but I dont know how should i use the loop.
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: push over

Post by vesna »

Here is an example of pushover analysis with target displacement (maxU) of 15 and displacement increment (dU) of 0.1.

set maxU 15.0; set dU 0.1
constraints transformation
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-6 6 2
algorithm Newton
integrator DispControl 3 1 $dU
analysis Static
set ok 0
set currentDisp 0.0
while {$ok == 0 && $currentDisp < $maxU} {
set ok [analyze 1]
if {$ok != 0} {
test NormDispIncr 1.0e-6 1000 1
algorithm ModifiedNewton –initial
set ok [analyze 1]
test NormDispIncr 1.0e-6 6 2
algorithm Newton
} set currentDisp [
nodeDisp 3
1]
}

Try to addopt this one to your case.
Amin barghaman
Posts: 10
Joined: Fri Apr 10, 2009 1:37 pm
Location: t

Re: push over

Post by Amin barghaman »

Dear vesna,
thank you very much, i used the loop it was great and I could handle coverge problem easily.
I have another question, Does one of the frame properties fail or yield, when a static pushover analysis fails to coverge?
Bests
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: push over

Post by vesna »

Convergence problem is a numerical (computational) issue. When analysis is not converging you can not say anything about the state of the element. However you can see what element is causing convergence problems and make sure it is defined in a proper way.
Amin barghaman
Posts: 10
Joined: Fri Apr 10, 2009 1:37 pm
Location: t

Re: push over

Post by Amin barghaman »

could you please tell me how can i find the element that causes convergence problem?
thank you.
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: push over

Post by vesna »

In case you have a convergence problem you get the message on opensees interpreter. The warning message gives you the information about the element that caused the problem.
Amin barghaman
Posts: 10
Joined: Fri Apr 10, 2009 1:37 pm
Location: t

Re: push over

Post by Amin barghaman »

Dear vesna,
This is the opensees interpreter massage after running analisys. I can not find which element caused covergence problem.
Could you please help me about that?
Thanks.

WARNING: CTestNormDispIncr::test() - failed to converge
after: 25 iterations
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 146 with domain a
t load factor 33347.2
OpenSees > analyze failed, returned: -3 error flag
WARNING: CTestNormDispIncr::test() - failed to converge
after: 25 iterations
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 0 with domain at
load factor 33347.2
OpenSees > analyze failed, returned: -3 error flag
Trying Newton with Initial Tangent ..
---------------------------------------------------------------------------
Amin barghaman
Posts: 10
Joined: Fri Apr 10, 2009 1:37 pm
Location: t

Re: push over

Post by Amin barghaman »

Dear vesna,
This is the opensees interpreter massage after running analisys. I can not find which element caused covergence problem.
Could you please help me about that?
Thanks.

WARNING: CTestNormDispIncr::test() - failed to converge
after: 25 iterations
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 146 with domain a
t load factor 33347.2
OpenSees > analyze failed, returned: -3 error flag
WARNING: CTestNormDispIncr::test() - failed to converge
after: 25 iterations
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 0 with domain at
load factor 33347.2
OpenSees > analyze failed, returned: -3 error flag
Trying Newton with Initial Tangent ..
---------------------------------------------------------------------------
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: push over

Post by vesna »

In your case, the convergence problem is not created by a specific element. In such a case it can be easily fixed by changing some of analysis objects.
Amin barghaman
Posts: 10
Joined: Fri Apr 10, 2009 1:37 pm
Location: t

Re: push over

Post by Amin barghaman »

thank you very much.
Post Reply