Fibers of Higher Dimensions

When we talk about fiber sections in OpenSees, we often refer to Bernoulli sections where each fiber is in a state of uniaxial stress. This approach captures axial-moment interaction, which is important for reinforced concrete columns, whose cross-sections are defined using patch and layer commands. Those same patch and layer commands can be used for … Continue reading Fibers of Higher Dimensions

You Know You’ll Have to Write About It

The odds are, if you're running OpenSees analyses, you're going to write about it, whether it's a thesis/dissertation, technical report, funding proposal, conference paper, or journal article. Several writing books are available and some are very good. One book that I've found useful is Becoming an Academic Writer by Patricia Goodson. The title may sound … Continue reading You Know You’ll Have to Write About It

Last Committed Stiffness

With the rayleigh command, OpenSees allows you to input three stiffness proportional damping factors: 1) the current tangent stiffness, 2) the initial stiffness, and 3) the last committed stiffness. Each option has drawbacks. The current tangent stiffness is problematic because the tangent stiffness can change significantly at each iteration of the equilibrium solution algorithm. The … Continue reading Last Committed Stiffness

Ordinary Eigenvalues

There are three applications of eigenvalue analysis in structural engineering. Vibration analysis and buckling analysis involve generalized eigenvalue analysis. OpenSees does vibration eigenvalue analysis pretty well, but does not perform buckling eigenvalue analysis--although you might be able to fake the geometric stiffness matrix for simple frame models. The third application of eigenvalue analysis is ordinary … Continue reading Ordinary Eigenvalues

The Prevalence of OpenSees in JSE

In Write It Up, Paul J. Silvia describes three journal tiers that apply to any field: Journals that everyone in your field sees as among the best (smallest tier)Important journals that contain most of the field's work (largest tier)"The seamy underbelly of scholarly publishing" In my opinion, the ASCE Journal of Structural Engineering (JSE) is … Continue reading The Prevalence of OpenSees in JSE

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

A Quad Out West

I wrote this limerick in 2000 after coding the four node quad element in OpenSees. I once programmed a quad out West, Displacement-based, so not the best. Debugged emphatically, Converges quadratically. It even passes the patch test. I'm no Chris Jones. This and the algorithmic limerick are the extent of my limerick library.

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