StaticAnalysis.analyze(numSTEP)

For developers writing C++, Fortran, Java, code who have questions or comments to make.

Moderators: silvia, selimgunay, Moderators

Post Reply
GFccny
Posts: 6
Joined: Wed Oct 30, 2013 10:57 am
Location: City College New York

StaticAnalysis.analyze(numSTEP)

Post by GFccny »

Hello Opensees community,
I hope you could please help me to solve this issue.
I have experienced a problem with the class "StaticAnalysis" and the command "analyze".
briefly, I have a loop where the model is built and the load is applied in a load control, where the number of steps is 1 and lambda 1 a number of times.
the issue is that after a certain number of models the function call StaticAnalysis.analyze(1) does not return any value and reamins stack in a kind of endless loop although the max number of iterations is 20.

is possible to stop the command "analyze" after a certain amount time if stack without modifying the source code?

please let me know if require any further information.
Thank you for your help.
G
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Re: StaticAnalysis.analyze(numSTEP)

Post by fmk »

are you using a force beam column element or an nDmaterial like ManzariDafalias .. if so, the reason the analysis seems stuck is that the elements or materials are having a problem and are doing a lot of internal iterations. if not, get back to me.

as for what to do, you could do a number of analyze(1) steps inside a for loop instead of a single analysze(20). as for sopping the code w/o modifying it no. you would have to write some code, using probably threads, i.e. put the computation nin 1 thread and if it is not done after a certain amount of time, kill it. your state might be a mess (i.e. say was almost finished and certain elements have had commit invoked and others not)
GFccny
Posts: 6
Joined: Wed Oct 30, 2013 10:57 am
Location: City College New York

Re: StaticAnalysis.analyze(numSTEP)

Post by GFccny »

Thank you Frank,
I am not using nDmaterial.
I will try to follow your instructions and I will let you know.
GFccny
Posts: 6
Joined: Wed Oct 30, 2013 10:57 am
Location: City College New York

Re: StaticAnalysis.analyze(numSTEP)

Post by GFccny »

Hi Frank,
I have tried to follow your instruction, but apparentely I could not solve the issue described above.
after a certain number of pushovers in a monte carlo, the program at a point of the static analysis "analyze(1)" get hanged and does not return anymore. the recorder get in the output file when it hangs the following:

WARNING: CTestNormDispIncr::test() - failed to converge
after: 20 iterations
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 0 with domain at load factor 1


I also tried to use a thread to wrap the [StaticAnalysis::analyze(1)] function but the memory get messed up when I delete the object where I run the static analysis, I guess because I should modify OpenSees source code to acccount for the thread, but I am still trying to avoid to put my hands on the OpenSees source code.
Please let me know any suggestion.
Thank you.
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Re: StaticAnalysis.analyze(numSTEP)

Post by fmk »

i am guessing the problem is the forceBEamColumn element, the element you get if you use: "nonlinearBeamColumn", "beamWithHinges", or "forceBeamColumn". can you confirm if you are using this ele type?
GFccny
Posts: 6
Joined: Wed Oct 30, 2013 10:57 am
Location: City College New York

Re: StaticAnalysis.analyze(numSTEP)

Post by GFccny »

Hello Frank,
Thank you for your suggestion.
Yes I am using ForceBeamColum elements.
I have monitored the output of each step of analyze. apparently the problem was due to the "Element Length", that i use to read from the model to calculate the load. In same iterations some elements returned a huge vale on the order of 10e12, than the structure was loaded with a value proportional to this order and apparently this caused the analysis to hang. Since I modified the code, removing this part and applying the load in a differently it seems working fine without hanging anymore.
Thank you so much for your help.
Post Reply