Invertible Does Not Mean Stable

That you can invert a stiffness matrix does not tell you everything about the numerical stability of a structural model built in OpenSees or any other finite element software. In fact, no finite element software actually forms the inverse of the stiffness matrix, but let's go with the misleading terminology anyway. Consider the beam shown … Continue reading Invertible Does Not Mean Stable

The Good, the Not So Bad, and the Full General

Just like shopping for a new refrigerator, picking a linear equation solver in OpenSees (via the system command) can lead to paralysis of choice. And while you can consult Consumer Reports for the pros and cons of refrigerators A, B, and C, the only way to figure out the pros and cons of OpenSees solvers … Continue reading The Good, the Not So Bad, and the Full General

What Is a Good Penalty Number?

I often see the penalty constraint handler used with seemingly high penalty numbers like the following: ops.constraints('Penalty',1e18,1e18) I'm not sure why these specific numbers are used so often in scripts, but I suspect these values were used in an old example and have been passed down. And while the 1e18 values might have worked for … Continue reading What Is a Good Penalty Number?

Handling a Doubt

After a post on the "constraint matrix not identity" warning message, a couple people followed up (one by post comment and the other by direct communication) that they didn't realize the Plain constraint handler works with equalDOF constraints. The Plain constraint handler has not always been able to handle equalDOF constraints--I vaguely recall Frank modifying … Continue reading Handling a Doubt