How Many Clicks Does It Take?

Coding single degree of freedom (SDF) response in order to generate earthquake response spectra is a rite of passage in earthquake engineering research and education. I wrote my first response spectrum in MATLAB. Nowadays, people are likely to use Python. To generate response spectra in OpenSees, you can create a simple one-dimensional model of SDF … Continue reading How Many Clicks Does It Take?

PSA: OpenSees Commands Are Case Sensitive

I recently had a conversation with an experienced OpenSees user who asked why distributed loads were not working on their elastic beam-column model. I initially thought something must have changed in GitHub, but was relieved when I looked at their input file and saw the following: pattern Plain 2 Linear { eleLoad -ele 10020001 -type … Continue reading PSA: OpenSees Commands Are Case Sensitive

Don’t Forget to Take a Selfie

If you've programmed your own UniaxialMaterial in OpenSees, you were likely hyper-focused on correct implementation of the constructor and the methods for state determination, getStress and commitState. Rightfully so. But there are a couple UniaxialMaterial methods, and a code addition elsewhere, that are critically important when using the database command to save/restore your model or … Continue reading Don’t Forget to Take a Selfie

OpenSeesPy Is Not Terrible for the Environment

This tweet made the rounds in late September, early October. Those new to OpenSeesPy, or unaware of how it works, might have been alarmed. I'm here to reassure you that OpenSeesPy is not a huge CO2 producer like native Python code. https://twitter.com/R_Trotta/status/1309457430267523072 OpenSeesPy is C++ code that calls the Python C/C++ API so that you … Continue reading OpenSeesPy Is Not Terrible for the Environment