OpenSees Cloud

OpenSees AMI

An OpenSeesSPecial Request

Original Post - 21 Aug 2022 - Michael H. Scott

Visit Structural Analysis Is Simple on Substack.


Due to sendSelf() and recvSelf() implementation neglect, OpenSeesSP is broken. I want it to work.

Not for OpenSees Cloud, we’ll do fine without OpenSeesSP.

Instead, it’s for everyone out there who wants to run a large model locally without encountering stubborn errors or jumping through hoops to use OpenSeesMP.

So, I have a small request–even if you never intend to use OpenSeesSP. At the end of your scripts, after your analysis but before you call the wipe command or whatever, add three extra commands to send/receive the model to/from a local File database.

#
# End of analysis
#

ops.database('File','ILoveSP')
ops.save(32)
ops.restore(32)

#
# Do more stuff, wipe, or whatever
#

These commands invoke the same functions (the aforementioned sendSelf() and recvSelf()) to send model data between processors in an OpenSeesSP analysis. Only, you don’t need multiple processors or MPI to use the database commands–one processor and a hard drive is all you need.

The database name, 'ILoveSP', can be whatever you want. The commit tag, 32, can also be whatever integer you want, just use the same tag for save and restore.

If no errors appear as a result of these three commands, great! You can delete the commands from your script and try it on another model. You can also remove all the local ILoveSP.*.*.32 files created by the save command.

But if you see an error like below, or any other error involving sendSelf(), recvSelf(), or FEM_ObjectBroker such as those shown in this post, let me know (by e-mail or a GitHub issue) and I’ll fix it.

Database error with Truss::sendSelf

Provide a screenshot of the error messages and let me know as much information as possible about the element or material model that caused the problem. For example, in the screenshot above, yes, it’s a truss with element tag 8, but I would also need to know which material model element 8 uses.

Most of the time, it’s an easy fix.