Legend has it that some published research results based on nonlinear dynamic analysis–incremental dynamic analyses, seismic fragility curves, Monte Carlo simulations, etc.–considered a non-convergent OpenSees model to indicate structural collapse or failure.

Let’s think about this for a minute.

Here is the displacement response in two orthogonal directions at the top of a nearly 50 m tall structural model subjected to two components of earthquake ground motion. The analysis fails to converge at about 11 seconds into a 60 second simulation.

Has this structural model collapsed? At 0.4 m, or less than 1% drift, probably not.

If the performance criteria is that the displacement remain under 0.5 m, did this structural model perform acceptably? Maybe, but it sure looks like the displacement is headed to 0.5 m in a hurry.

Oops, I forgot to define damping! Rayleigh–1.5% at periods 0.5 sec and 5.0 sec.

Let’s run that again.

Much better. There’s some residual displacement, but no collapse, no failure.

For this model, a small amount of damping makes a difference, killing off the higher modes of response; however, there’s many other ways to remedy non-convergence, e.g., by using variable time steps and algorithm switching. But first, check your model.

I definitely attempt to stay positive all the time. I have been involved in the development, maintenance, and growth of OpenSees since its early days. Recently, I've taken an interest in learning Python and improving my academic writing.
View all posts by Michael H. Scott

Published

11 thoughts on “Non-Convergence Is Not Structural Collapse”

Dear Professor Scott
Thank you for your post. You discussed the nuances of non- convergence topics. Your observation of the issues and narrative on them is awesome.

Thanks Prof Scott for highlighting this important issue.

The same ‘belief’ of non-convergence as a sign of failure is also popular among Geotechnical FEA colleagues, particularly while analysing static slope stability using the Strength Reduction Method. May be, the same was true or a meaningful conclusion during the days of FEA implemented in Computers of late ’80s and early ’90s. However, for today’s sophisticated non-linear solvers (both for commercial and more so for OSS like OpenSees, Code-aster, RealESSI etc.), coupled with decent computing powers of today’s common PCs/laptops (let alone be the cloud computing platforms), such a conclusion is no longer valid. For example, in a slope analysis problem, instead of relying on non-convergence to identify failure, one needs to monitor the (static) load-settlement response and also many a times the shear strain contours showing failure bands/surfaces within the slope. In a nutshell, your observations are true, not only specifically for OpenSees or Dynamic Analysis, but also for a wide range of FEA applications.

Can no convergence be solved with using more digits in calculations. Maybe you can use in c++ bignum library – arbitrary precision arithmetic and check whether using more digits in a calculation can improve convergence.

Sir, I think it may. In example Fortran has single precision and double precision for variables. In example Ls-Dyna (Livermore Software-Now Ansys purchased) has two versions, SNG (Single Precision) and DBL (Double Precision) (https://www.lstc.com/download/ls-dyna_(win)).

OpenSees uses all double precision variables, at least on the C++ side. If you think it may make a difference, then come up with a MWE in OpenSees that demonstrates the issue.

Could you please send me your email address, so I can send you matlab files. In 32 digits, calculations do not converge, but in 64 it converges. A very simple example.

Dear Professor Scott

Thank you for your post. You discussed the nuances of non- convergence topics. Your observation of the issues and narrative on them is awesome.

LikeLiked by 1 person

Thanks Prof Scott for highlighting this important issue.

The same ‘belief’ of non-convergence as a sign of failure is also popular among Geotechnical FEA colleagues, particularly while analysing static slope stability using the Strength Reduction Method. May be, the same was true or a meaningful conclusion during the days of FEA implemented in Computers of late ’80s and early ’90s. However, for today’s sophisticated non-linear solvers (both for commercial and more so for OSS like OpenSees, Code-aster, RealESSI etc.), coupled with decent computing powers of today’s common PCs/laptops (let alone be the cloud computing platforms), such a conclusion is no longer valid. For example, in a slope analysis problem, instead of relying on non-convergence to identify failure, one needs to monitor the (static) load-settlement response and also many a times the shear strain contours showing failure bands/surfaces within the slope. In a nutshell, your observations are true, not only specifically for OpenSees or Dynamic Analysis, but also for a wide range of FEA applications.

LikeLiked by 1 person

Can no convergence be solved with using more digits in calculations. Maybe you can use in c++ bignum library – arbitrary precision arithmetic and check whether using more digits in a calculation can improve convergence.

LikeLiked by 1 person

I doubt that will make a difference. The non-convergence is almost always due to modeling issues, not numerical calculation/round off issues.

LikeLike

Sir, I think it may. In example Fortran has single precision and double precision for variables. In example Ls-Dyna (Livermore Software-Now Ansys purchased) has two versions, SNG (Single Precision) and DBL (Double Precision) (https://www.lstc.com/download/ls-dyna_(win)).

LikeLike

OpenSees uses all double precision variables, at least on the C++ side. If you think it may make a difference, then come up with a MWE in OpenSees that demonstrates the issue.

LikeLike

I cannot implement it to openSees, maybe I can use my own matlab codes. I do not know c++ very well

LikeLiked by 1 person

If you’re going to be precise, you’d better be accurate!!!!

LikeLiked by 2 people

Could you please send me your email address, so I can send you matlab files. In 32 digits, calculations do not converge, but in 64 it converges. A very simple example.

LikeLiked by 1 person

How about you send me a detailed description of the FE model and I’ll see if I can reproduce the non-convergence in OpenSees?

LikeLiked by 1 person

Ok, I am sending

LikeLiked by 1 person