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

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

Recorders Not Recording?

Update September 13, 2021: The issue described in this post has been resolved as of OpenSeesPy version 3.3.0.1. Python is one of the best things to happen with OpenSees. Unfortunately, the break from Tcl has not been squeaky clean. A very sticky transition point has been element recorders. When we wrote the internal setResponse functions … Continue reading Recorders Not Recording?

Gimme All Your Damping, All Your Mass and Stiffness Too

Just because OpenSees is open source does not mean it is a fully transparent box. This is mostly because documentation has lagged behind development. So, pessimists would say the box is semi-opaque while optimists would characterize it as semi-transparent. But a few parts of OpenSees are definitely housed in an opaque box. Take, for instance, … Continue reading Gimme All Your Damping, All Your Mass and Stiffness Too

Just Another Python Module

When OpenSees got off the ground, many finite element analysis software packages relied on fixed format input. So, it was important to integrate OpenSees with a fully functional scripting language to give users flexibility in creating applications without requiring users to write and compile C++ main() functions. I don't remember all the factors that went … Continue reading Just Another Python Module