Using fiber sections and the corotational geometric transformation is an easy way to simulate combined material and geometric nonlinearity in column members. A previous post examined this approach for steel columns where residual stresses play an important role in the axial load capacity. In this post, I will show the corotational mesh approach for non-sway … Continue reading Slender Things
Author: Michael H. Scott
OpenSeesBf
OpenSees started with Tcl and is now riding the wave of Python's popularity. But, it's not too soon to ask which language the next OpenSees interpreter will use. In my opinion, Julia is the front runner. However, I would like to put a bid in for Brainf*ck, an esoteric programming language shown to me a … Continue reading OpenSeesBf
Interpolation of Ground Acceleration
There was a question on GitHub a few months ago about whether or not OpenSees uses linear interpolation when the analysis time step is smaller than the time step (digitization) of an input ground acceleration. This is a good question as I've used other software that does not interpolate and instead uses the acceleration of … Continue reading Interpolation of Ground Acceleration
Don’t Think, Just Throw
The uncertainty of an OpenSees analysis often stops people in their tracks. What will happen if I use this input for that model? Will I be able to simulate this behavior? What if the analysis fails to converge? Don't think. Just throw. https://youtu.be/qa3EseH3Hgc Nothing bad is going to happen if you have an incorrect input … Continue reading Don’t Think, Just Throw
The Little IDA
In Fundamentals of Structural Mechanics, Hjelmstad solves a "little" one-dimensional Boundary Value Problem (BVP) for linear-elasticity before moving on to the three-dimensional BVP, which is full of mathematical difficulties. Hjelmstad's reasoning is sound. "Some of these difficulties are of great importance, while others are simply a nuisance. Reducing the issue to its simplest case helps … Continue reading The Little IDA
Not All at Once
I've been working on a project where we use OpenSees to analyze structural models for several load cases. We only care if the models can support the full load, not so much how they get to the full load. We apply all the load in one step with load control and Newton-Raphson. If that succeeds, … Continue reading Not All at Once
No Exit
Have you ever seen OpenSees.exe vanish all of a sudden or received a "Kernel died" message when running OpenSeesPy in a Jupyter Notebook? The C++ exit() function is the likely culprit. Or a segmentation fault. But this post will focus on the exit() function. Some grepping and line counting reveals over 2,000 calls to exit() … Continue reading No Exit
Non-Prismatic Frame Elements
Long before the BeamIntegration abstraction, there was only Gauss-Lobatto integration for force-based elements, with a single section model copied to each integration point. This made it impossible to use a single element to simulate the response of an RC member with different reinforcing details along its length, or any member that was inherently non-prismatic. While … Continue reading Non-Prismatic Frame Elements
Failed to Get Compatible …
If you've used the force-based beam-column element in OpenSees, you've likely come across this warning involving element forces and deformations: I've encountered this warning many times and so have others. In fact, I lifted the above image from a recent post on the OpenSees Facebook group. I tried to come up with a MWE to … Continue reading Failed to Get Compatible …
Every OpenSees Tutorial
There's plenty of excellent OpenSees tutorials online. But some other OpenSees tutorials feel like this sardonic, mock programming tutorial. When you watch the video, replace "outdated library" with "OpenSees", "Java" with "Tcl", and "Minecraft" with "incremental dynamic analyses for a portfolio of 3D reinforced concrete frames". https://youtu.be/MAlSjtxy5ak Pretty accurate, right? Let me know in the … Continue reading Every OpenSees Tutorial
