Getting the Digits

In a recent post, I pointed out that the LobattoBeamIntegration class uses only ten, instead of 16, significant figures for the locations and weights of the integration points. Those six missing digits made for a perfectly fine demonstration of how to use the isclose function for verification. But, in the bigger picture, omitting six significant … Continue reading Getting the Digits

Critical Buckling Loads via CBDI

Curvature-based displacement interpolation (CBDI) is a method of approximating the transverse deflection at each integration point, or section, of a force-based frame element in order to account for geometric nonlinearity within the basic system, i.e., "P-little-delta" effects. Neuenhofer and Filippou (1998) describe the complete CBDI formulation for force-based elements. But one piece of the formulation, … Continue reading Critical Buckling Loads via CBDI

Corotational Rigid Offsets

Unlike Linear and PDelta, rigid joint offsets are not an option for the Corotational geometric transformation in OpenSees. And the lack of corotational rigid offsets is not due to theoretical limitations, simply no one has taken the time to implement the equations. The two-dimensional case would not be terrible. But three-dimensional offsets? No thanks, not … Continue reading Corotational Rigid Offsets

Plate Rebar Material

Where fiber sections integrate stresses over two dimensions for beam-column line elements, fiber sections integrate stresses through only one dimension for shell elements. Either way, you're performing volume integrals, whether it's two dimensions in the section and one in the element or one dimension in the section and two in the element. The LayeredShellFiberSection, where … Continue reading Plate Rebar Material

Is It Close Enough?

The locations and weights for Gauss-Lobatto beam integration, the de facto beam integration for force-based elements, are hard-coded in the OpenSees source code. For most cases in the LobattoBeamIntegration class, the locations and weights are written to only ten significant figures instead of 16 or more. Although I am certain that leaving six sig-figs on … Continue reading Is It Close Enough?

Torsional Buckling

From time to time, I dabble with the OpenSees warping elements developed at the University of Sydney in 2011 for doubly symmetric sections, then in 2016 for open sections. Since my last foray into warping, I've taken the nonlinear displacement-based formulation from "it compiles" to "it works". Some other ancillary changes to the warping fiber … Continue reading Torsional Buckling

Murum, cura te ipsum

OpenSees has its fair share of element implementations that are computationally inefficient. Fortunately, most of those elements are never used. But among elements that are used, SFI-MVLEM is the undisputed champion. Whereas the standard MVLEM element uses a uniaxial material in each fiber, the SFI-MVLEM element accounts for the interaction of axial and shear stress ($latex \sigma_{11}$ … Continue reading Murum, cura te ipsum