OpenSees Cloud

OpenSees AMI

Beam With Hinges Interior Redux

Original Post - 30 Nov 2023 - Michael H. Scott

Visit Structural Analysis Is Simple on Substack.


When it was but a wee blog, I wrote a post expressing second thoughts on how I presented the elastic interior of the beamWithHinges element in Scott and Fenves (2006). The post had a lot of words, but no figures or examples. So, let’s try again.

Consider a simple span comprised of one beamWithHinges element, i.e., a forceBeamColumn element with HingeRadau integration. The beam has plastic hinges and a bilinear moment-curvature relationship assigned to all sections. Point loads of equal magnitude are applied just inside the plastic hinge regions, giving constant moment over the beam interior–basically the opposite of what the beamWithHinges element is supposed to be good at.

Beam with two point loads

For this simple model, pick your favorite E, A, I, and My for the section, and use an lp that is about 10% of the span length.

If you increase the magnitude of the point loads until the bending moment on the beam interior exceeds the section yield moment, you will get different results with “the-interior-is-elastic” from Scott and Fenves (2006) versus what’s actually implemented in OpenSees.

ops.geomTransf('Linear',18)

ops.uniaxialMaterial('Elastic',1,E*A)
ops.uniaxialMaterial('Hardening',2,E*I,My,0,0.05*E*I)
ops.section('Aggregator',5,1,'P',2,'Mz')

# As described in JSE (2006)
ops.element('beamWithHinges',1,1,2,5,lp,5,lp,E,A,I,18)

# As implemented in OpenSees
ops.beamIntegration('HingeRadau',17,5,lp,5,lp,5)
ops.element('forceBeamColumn',1,1,2,18,17)

ops.timeSeries('Linear',1)
ops.pattern('Plain',1,1)
ops.eleLoad('-ele',1,'-type','beamPoint',-1.0,lp/L)
ops.eleLoad('-ele',1,'-type','beamPoint',-1.0,1-lp/L)

The relationship between applied load and rotation at the supports is shown below, where yielding initiates when the moment on the beam interior exceeds the yield moment.

Load-rotation relationships

This example should make it clear that the interior of a “beam with hinges” element does not have to be elastic!