Wrong with the nonlinear dynamic elastoplastic analysis

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

Moderators: silvia, selimgunay, Moderators

Post Reply
YoungXu
Posts: 14
Joined: Wed May 21, 2014 2:12 am
Location: University of XinJiang

Wrong with the nonlinear dynamic elastoplastic analysis

Post by YoungXu »

Hi
I want to run the nonlinear dynamic elastoplastic analysis about a simply RC structure. But the error remind that
"WARNING:CTestEnergyIncr::test<>-failed to converge
after:300 interations
NewtnRaphson::solveCurrentStep<>-the ConvergenceTest object failed in test<>
DirectIntegrationAnalysis::analyze<>the Algorithm failed at time 0.18
OpenSees > analyze failed, returned: -3 error flag"
What's wrong with it? What should I do? Please help me! Thanks!

#--------------------------------------
model BasicBuilder -ndm 2 -ndf 3
file mkdir recorder
#--------------------------------------
node 1 +0.000000E+00 +0.000000E+00 -ndf 3
node 2 +0.000000E+00 +2.100000E+03 -ndf 3 -mass 10 10 0
node 3 +0.000000E+00 +4.200000E+03 -ndf 3 -mass 10 10 0
node 4 +0.000000E+00 +6.300000E+03 -ndf 3 -mass 10 10 0
node 5 +2.700000E+03 +0.000000E+00 -ndf 3
node 6 +2.700000E+03 +2.100000E+03 -ndf 3 -mass 10 10 0
node 7 +2.700000E+03 +4.200000E+03 -ndf 3 -mass 10 10 0
node 8 +2.700000E+03 +6.300000E+03 -ndf 3 -mass 10 10 0
node 9 +5.400000E+03 +0.000000E+00 -ndf 3
node 10 +5.400000E+03 +2.100000E+03 -ndf 3 -mass 10 10 0
node 11 +5.400000E+03 +4.200000E+03 -ndf 3 -mass 10 10 0
node 12 +5.400000E+03 +6.300000E+03 -ndf 3 -mass 10 10 0
node 13 +8.100000E+03 +0.000000E+00 -ndf 3
node 14 +8.100000E+03 +2.100000E+03 -ndf 3 -mass 10 10 0
node 15 +8.100000E+03 +4.200000E+03 -ndf 3 -mass 10 10 0
node 16 +8.100000E+03 +6.300000E+03 -ndf 3 -mass 10 10 0
#--------------------------------------
fix 1 1 1 1
fix 5 1 1 1
fix 9 1 1 1
fix 13 1 1 1
#--------------------------------------
# Material "C40": matTag fc' epsc0 fcu' epsu
uniaxialMaterial Concrete01 1 -2.680000E+01 -2.000000E-03 -1.000000E+01 -3.500000E-03
# Material "HRB335": matTag Fy E b a1 a2 a3 a4
uniaxialMaterial Steel01 2 +3.350000E+02 +2.000000E+05 +1.000000E-02 +0.000000E+00 +1.000000E+00 +0.000000E+00 +1.000000E+00
#--------------------------------------
# Section "Beam Section": secTag
section Fiber 1 {
# PatchQuad "Concrete Size": matTag NSIJ NSJK Iy Iz Jy Jz Ky Kz Ly Lz
patch quad 1 10 10 -1.250000E+02 -1.250000E+02 +1.250000E+02 -1.250000E+02 +1.250000E+02 +1.250000E+02 -1.250000E+02 +1.250000E+02
# LayerStraight "Steel Up": matTag numBar areaBar yStart zStart yEnd zEnd
layer straight 2 2 +2.827400E+01 -1.020000E+02 +1.020000E+02 +1.020000E+02 +1.020000E+02
# LayerStraight "Steel Lower": matTag numBar areaBar yStart zStart yEnd zEnd
layer straight 2 3 +2.827400E+01 -1.020000E+02 -1.020000E+02 +1.020000E+02 -1.020000E+02
}

# Section "Column Section": secTag
section Fiber 2 {
# PatchQuad "Concrete Size": matTag NSIJ NSJK Iy Iz Jy Jz Ky Kz Ly Lz
patch quad 1 10 10 -1.500000E+02 -1.500000E+02 +1.500000E+02 -1.500000E+02 +1.500000E+02 +1.500000E+02 -1.500000E+02 +1.500000E+02
# LayerStraight "Steel Up"
layer straight 2 3 +7.850000E+01 -1.250000E+02 +1.250000E+02 +1.250000E+02 +1.250000E+02
# LayerStraight "Steel Middle"
layer straight 2 2 +7.850000E+01 -1.250000E+02 +0.000000E+00 +1.250000E+02 +0.000000E+00
# LayerStraight "Steel Lower"
layer straight 2 3 +7.850000E+01 -1.250000E+02 -1.250000E+02 +1.250000E+02 -1.250000E+02
}
#--------------------------------------
geomTransf Corotational 1
geomTransf Linear 2
#--------------------------------------
#Column
# eleTag iNode jNode numIntgrPts secTag transTag
element nonlinearBeamColumn 1 1 2 5 2 1
element nonlinearBeamColumn 2 5 6 5 2 1
element nonlinearBeamColumn 3 9 10 5 2 1
element nonlinearBeamColumn 4 13 14 5 2 1
element nonlinearBeamColumn 5 2 3 5 2 1
element nonlinearBeamColumn 6 6 7 5 2 1
element nonlinearBeamColumn 7 10 11 5 2 1
element nonlinearBeamColumn 8 14 15 5 2 1
element nonlinearBeamColumn 9 3 4 5 2 1
element nonlinearBeamColumn 10 7 8 5 2 1
element nonlinearBeamColumn 11 11 12 5 2 1
element nonlinearBeamColumn 12 15 16 5 2 1
#Beam
element nonlinearBeamColumn 13 2 6 5 1 2
element nonlinearBeamColumn 14 6 10 5 1 2
element nonlinearBeamColumn 15 10 14 5 1 2
element nonlinearBeamColumn 16 3 7 5 1 2
element nonlinearBeamColumn 17 7 11 5 1 2
element nonlinearBeamColumn 18 11 15 5 1 2
element nonlinearBeamColumn 19 4 8 5 1 2
element nonlinearBeamColumn 20 12 16 5 1 2
#--------------------------------------
recorder Node -file recorder/NodeDisp.out -time -nodeRange 1 16 -dof 1 2 3 disp
recorder Node -file recorder/NodeVel.out -time -nodeRange 1 16 -dof 1 2 3 vel
recorder Node -file recorder/NodeAcces.out -time -nodeRange 1 16 -dof 1 2 3 accel
recorder Node -file recorder/NodeEigen1.out -time -nodeRange 1 16 -dof 1 2 3 "eigen 1"
recorder Node -file recorder/NodeEigen2.out -time -nodeRange 1 16 -dof 1 2 3 "eigen 2"
recorder Node -file recorder/NodeEigen3.out -time -nodeRange 1 16 -dof 1 2 3 "eigen 3"
recorder Node -file recorder/NodeEigen4.out -time -nodeRange 1 16 -dof 1 2 3 "eigen 4"
#--------------------------------------
set dt 0.02
set scale [expr 0.2*1000*9.81]
timeSeries Path 1 -filePath ElCentro.txt -dt $dt -factor [expr $scale]
pattern UniformExcitation 1 1 -accel 1
#--------------------------------------
set xDamp 0.05
set nEigenI 1
set nEigenJ 2
set lambdaN [eigen [expr $nEigenJ]]
set lambdaI [lindex $lambdaN [expr $nEigenI-1]]
set lambdaJ [lindex $lambdaN [expr $nEigenJ-1]]
set omegaI [expr pow($lambdaI,0.5)]
set omegaJ [expr pow($lambdaJ,0.5)]
set alphaM [expr $xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)]
set betaKcurr [expr 2.*$xDamp/($omegaI+$omegaJ)]
rayleigh $alphaM $betaKcurr 0 0
#--------------------------------------
constraints Transformation
numberer Plain
system BandGeneral
test EnergyIncr 1e-4 200
algorithm Newton
integrator Newmark 0.5 0.25
analysis Transient

#--------------------------------------
# Finally perform the analysis
# ------------------------------
# perform an eigenvalue analysis
set pi [expr acos(-1.0)]
set lambda [eigen -fullGenLapack 4]
puts "\nEigenvalues at start of transient:"
puts "| lambda | omega | period | frequency |"
foreach lambda $lambda {
set omega [expr pow($lambda,0.5)]
set period [expr 2.0*$pi/$omega]
set frequ [expr 1.0/$period]
puts [format "| %5.3e | %8.4f | %7.4f | %9.4f |" $lambda $omega $period $frequ]
}

# open output file for writing
set outFileID [open elapsedTime.txt w]
# perform the transient analysis
set tTot [time {
for {set i 1} {$i < 1000} {incr i} {
set t [time {analyze 1 $dt}]
puts $outFileID $t
#puts "step $i"
}
}]
puts "\nElapsed Time = $tTot \n"
# close the output file
close $outFileID

wipe
exit
Post Reply