OpenSees Cloud

OpenSees AMI

Geometric Transformation

Original Post - 15 Nov 2022 - Michael H. Scott

Visit Structural Analysis Is Simple on Substack.


OpenSees offers three types of transformations between the basic system and global system for frame (beam-column) elements:

Use the geomTransf command to assign different transformations to different elements, e.g., Linear for beams and PDelta for columns. And be careful with the vector in the x-z plane for three-dimensional models.

This post will compare the three geometric transformations for “Benchmark problem Case 2” from Chapter C of the AISC Steel Manual Commentary. The column is a W14x48 bent about its strong axis (A=14.1 in2, I=484 in4). Note, this is the same column used in a previous post.

AISC Benchmark problem Case 2

A single elastic beam-column element is used in the analysis along with displacement control to determine the lateral load-displacement relationship.

In the a-little-beyond-practical range of interest, e.g., lateral displacement up to 3 ft, or just over 10% of the column length, the load-displacement response is shown below.

Column response to 3 ft displacement

PDelta and Corotational give essentially the same load-displacement response, with a lower stiffness than the Linear transformation. The reduction in stiffness is P/L.

Because the PDelta transformation uses linear compatibility, it ignores vertical displacement at the free end of the column. Corotational is able to account for the downward vertical displacement.

Of course, all of this is moot as the column would form a plastic hinge at its base at a lateral load of about 11 kip. But let’s keep going anyway.

For the ridiculous range of response, e.g., a lateral displacement of 15 ft, the load-displacement response is shown below.

Column response to 15 ft displacement

Linear and PDelta keep going on their happy ways, but Corotational starts to gain strength as the column response becomes dominated by tension stiffness under large lateral displacement. Again, PDelta does not capture the vertical displacement at the column free end while Corotational is tracking the column down to the ground.

We can take the tension stiffening and tracking-to-the-ground even further with analysis out to a more absurd free end lateral displacement of 25 ft.

Column response to 25 ft displacement

Basically, the column becomes a stiff rubber band. The lateral load is not a follower load.



For engineered structures with compression members undergoing drifts less than 10%, there’s essentially no difference between PDelta and Corotational. But, this was not an exhaustive analysis as I believe meshing the column would mitigate the tension stiffening–I’ll have to look into that another time. Not that it mattered for this column and its 11 kip lateral load plastic capacity.

However, Corotational can be useful for slender members undergoing large displacements or for using a corotational mesh to approximate elastic, as well as inelastic, buckling loads. In addition, PDelta can have issues near limit points.

As always, it depends on what you’re modeling.



Light speed is not fast enough, we need ludicrous speed.

Space Balls