I’ve teased Concrete23 for some time now--so long that ChatGPT believes the model to be real. As you know though, Concrete23 was meant to be a riff on the material models in OpenSees that are clones of something else, but with one or two mutations. Like Concrete02IS’s addition of user-defined initial stiffness to Concrete02, or whatever insignificance ModIMKPinching02 … Continue reading Concrete23andMe
Category: Constitutive Models
Section Warping Analysis
Loading a ZeroLengthSection element is the easiest approach to compute the moment-curvature and shear force-shear deformation response of fiber sections in OpenSees. However, we cannot do a section warping analysis with a zero length element like we can with non-warping sections--at least not without modifying the ZeroLengthSection element to handle seven DOFs per node. That source code modification is … Continue reading Section Warping Analysis
One Fiber at a Time
A few years after G3 became OpenSees, UCFyber became XTRACT. In those intervening years, to accommodate section data exported from UCFyber, we added the fiber command to OpenSees, allowing you to add a single fiber to a section based on the fiber's (y,z) coordinates, area, and material tag. Several section analysis software packages have sprung … Continue reading One Fiber at a Time
J2 Plasticity Parameters
Ed "C++" Love wrote the J2Plasticity model in the early days of OpenSees because he needed a nonlinear constitutive model for testing his ShellMITC4 implementation. As far as I know, J2Plasticity was the first multi-axial plasticity model added to OpenSees--or at least the first among models that are relevant today. As shown in the documentation, … Continue reading J2 Plasticity Parameters
Long Term Column Loading
Practically all analyses of reinforced concrete columns in OpenSees assume the loading is short term--concrete as strong as it was at 28 days out of the hopper. Depending on what you're doing, not accounting for long term load effects, i.e., concrete creep and shrinkage, may not be a big deal. But the effects of creep … Continue reading Long Term Column Loading
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
Multi-Linear Parallel
If you have used the ElasticPP uniaxial material in OpenSees, you may have wondered why the input for the yield point is the yield strain instead of the yield stress. There's actually a good reason the input is yield strain as opposed to yield stress. But first, a short back story is necessary in order … Continue reading Multi-Linear Parallel
Material Testing with White Noise
Pushes, pulls, and cyclic strain histories of increasing magnitude are solid approaches to testing the stress-strain response of material models. But I'm not convinced these tests will hit every code block of a material model implementation. I mean, have you seen all the nested if-statements and uninitialized local variables that went into Concrete23? Although I … Continue reading Material Testing with White Noise
Rectangular Hollow Structural Sections
A hollow structural section (HSS) is manufactured from steel and is either rectangular, square, or circular. This post will address rectangular HSS, inclusive of square HSS. Round HSS is a little easier to define and will be the subject of another post. There are a couple options in OpenSees for defining material nonlinear rectangular HSS … Continue reading Rectangular Hollow Structural Sections
Section Integration
If we can use procedures in Tcl or Python to lay out fiber patches and layers for standard section types, e.g., doubly-reinforced RC sections and wide flange steel sections, then why do we need the SectionIntegration class? You cannot say that it is not useful to have commands that define fibers in terms of basic … Continue reading Section Integration
