analyze failed, returned: -3 error flag

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

Moderators: silvia, selimgunay, Moderators

Post Reply
MichaelDupuis
Posts: 20
Joined: Mon Apr 25, 2011 1:31 pm
Location: UBC

analyze failed, returned: -3 error flag

Post by MichaelDupuis »

Hello, thanks for any help anyone can provide in advance, I am sure that other people have experienced this same problem, and I have scoured the community forums for a solution that works for me, however I have not come across anything, so here is my issue:

I have built a 3D model with 6 DOF. The model and code is quite complex so I won't post the entire code, but rather just the key components. I have modeled a 2 storey RC frame building with several concrete shear walls and 6 steel concentrically braced frames. I have successfully conducted both a modal and static analysis on the building. I have also viewed the building geometry and mode shapes and everything seems acceptable at this early stage.

The beams and columns are modeled with a fiber section applied to 'dispBeamColumn' elements with 'rigidLink beam' used to connect the beam end and columns ends while simulating the relatively stiff joints of the frame. I have also used 'dispBeamColumn' elements with fiber sections to model the braced frames. The walls are modelled with 'shellMITC4' elements. There is a 'rigidDiaphragm' representing the slab at each floor level. At the ground level, there is a set of support nodes which are fully fixed and then a second set of overlapping nodes connected by an 'equalDOF' command to the aforementioned support nodes. There are also a couple 'truss' elements which connect to nodes constrained by 'rigidLink's and also to nodes connected to 'dispBeamColumn's



Everything seems to be OK until I attempt to do a dynamic time history analysis with 3 load patterns representing each orthogonal component of an earthquake record. The load patterns and analysis are defined as follows:

rayleigh $a0 0.0 $a1 0.0

# Define Dynamic Loading
#----------------------------------
pattern UniformExcitation 2 1 -accel $accelX
pattern UniformExcitation 3 2 -accel $accelY
pattern UniformExcitation 4 3 -accel $accelZ
puts "4053"
# Define Dynamic Analysis Parmaeters
#----------------------------------
constraints Transformation
numberer Plain
system BandGeneral
test NormDispIncr 1.0e-8 10 5
algorithm Newton
integrator Newmark 0.5 0.25
analysis Transient

set dtanalysis 0.001
set NumStepsanalysis [expr int($eqduration/$dtanalysis)]
puts "4077"
set ok [analyze $NumStepsanalysis $dtanalysis]

if {$ok != 0} {
set ok 0
set controlTime [getTime]
while {$controlTime < $eqduration && $ok == 0} {
set ok [analyze 1 $dtanalysis]
set controlTime [getTime];
set ok [analyze 1 $dtanalysis]
if {$ok != 0} {
puts "!!!!!!!!!!!!!!!!!!!!!!Trying NewtonWithLineSearch .."
set writeFile [open "${dir9}/Status.txt" "WRONLY CREAT APPEND"]
puts $writeFile "!!!!!!!!!!!!!!!!!!!!!!Trying NewtonWithLineSearch .. \n"
close $writeFile
algorithm NewtonLineSearch .8
set ok [analyze 1 $dtanalysis]
algorithm Newton
set failurecounttransient "NewtonWithLineSearch"
}
if {$ok != 0} {
puts "!!!!!!!!!!!!!!!!!!!!Trying Newton with Initial Tangent .."
set writeFile [open "${dir9}/Status.txt" "WRONLY CREAT APPEND"]
puts $writeFile "!!!!!!!!!!!!!!!!!!!!!!Trying Newton with Initial Tangent ..\n"
close $writeFile
test NormDispIncr 1.0e-8 100 0
algorithm Newton -initial
set ok [analyze 1 $dtanalysis]
test NormDispIncr 1.0e-8 100 0
algorithm Newton
set failurecounttransient "Newton"
}
if {$ok != 0} {
puts "!!!!!!!!!!!!!!!!!Trying Broyden .."
set writeFile [open "${dir9}/Status.txt" "WRONLY CREAT APPEND"]
puts $writeFile "!!!!!!!!!!!!!!!!!!!!!!Trying Broyden .. \n"
close $writeFile
algorithm Broyden 8
set ok [analyze 1 $dtanalysis]
algorithm Newton
set failurecounttransient "Broyden"
}
}
}


When I try to run this analysis, the analysis fails and I get the following message:

WARNING BandGenLinLapackSolver::solve() -LAPACK routine returned 1
WARNING Broyden::solveCurrentStep() -the LinearSysOfEqn failed in solve()
DirectIntegrationAnalysis::analuze() - the Algorithm failed at time 0.101 # (the time at which the static and modal analysis finished)
OpenSees > analyze failed, returned: -3 error flag

Thanks for any help anyone can provide, sorry for any ignorance on my part, sorry if this is a blatant repeat of another post.
Michael
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: analyze failed, returned: -3 error flag

Post by vesna »

It may be a memory problem. Try to repeat the analysis without doing eigen analysis.

Try also this:

constraints Transformation
numberer RCM
system UmfPack
test NormDispIncr 1.0e-8 10 5
algorithm Newton
integrator Newmark 0.5 0.25
analysis Transient
MichaelDupuis
Posts: 20
Joined: Mon Apr 25, 2011 1:31 pm
Location: UBC

Re: analyze failed, returned: -3 error flag

Post by MichaelDupuis »

Thanks for the help vesna,

I think the problem might have been that I was using rigidLink elements in series. I modified my original model and replaced all the rigidLinks with really stiff elastic beam columns and this allowed the analysis to run. Therefore, it wasn't a stability or connectivity problem.

In the end I ended up moving to a simpler model to shorten the run times for the time history analysis. Is their anyway to attach jpegs to posts?

Thanks,
Michael
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: analyze failed, returned: -3 error flag

Post by vesna »

What you had was a connectivity problem. You can not have rigidLink element is series. It is always better to model rigid elements with elastic elements.

There is no way to attach jpegs to posts. What you could do is to post it somewhere else and to provide the link to that post.
Post Reply