PEER logo
  • Docs 
  • Examples 
  •  

Corotational02

2 min read • 400 words

This page develops 5 examples that demonstrate improvements of the Corotational02 transformation over the existing CrdTransf classes in OpenSees.

On this page
1) Objectivity and Self-Stressing   2) Accuracy in pure flexure   3) Convergence with Bathe’s Cantilever   4) Reliability under large rotations   5) Computational efficiency   6) Shear deformations  
Download
  • 01/main.py
  • 01/Test01-Force-Geom01.tcl
  • 01/Test01-Force-Geom02.tcl
  • 01/Test01-Prism-Geom01.tcl
  • 01/Test01-Prism-Geom02.tcl

To install the required dependencies create a virtual environment and run:

python -m pip install -Ur requirements.txt

All tests can be run in a Posix shell by sourcing the script test.sh.

1) Objectivity and Self-Stressing  

This example demonstrates a severe bug in the existing corotational formulation.

Setup  

A cantilever is discretized by 8 beam elements. No loading is applied. Two methods of static analysis are considered: load and displacement control.

Expectation  

Because no loading is applied, both methods of analysis should not produce any displacement.

Outcome  

The original corotational formulation gives rise to non-zero nodal displacements, and therefore fails the experiment. The severity of the problem is particularly clear in the case of displacement control, where after 200 steps a drift over 10% is produced.

When Corotational02 is used, the displacements remain at exactly 0 at all nodes, in all DOFs.

2) Accuracy in pure flexure  

Setup  

This problem furnishes one of the few known closed form solutions of a beam undergoing finite rotations. A cantilever oriented along the e1\mathbf{e}_1 coordinate basis is subjected to a concentrated moment at its tip with magnitude λπ2EI/Le3\lambda \pi 2 EI/L \mathbf{e}_3 . A discretization of 5 finite elements is employed and the load factor λ\lambda is scaled linearly from 00 to 11 in 5 increments.

Expectation  

The analytic solution of the geometrically exact boundary value problem is given by:

{x(ξ)=EIMsin⁡ϑ(ξ) E1+EIM(cos⁡ϑ(ξ)−1) E2ϑ(ξ)=ξMEI\left\{ \begin{aligned} \boldsymbol{x}(\xi)&=\frac{EI}{M} \sin \vartheta(\xi) \, \mathbf{E}_1 + \frac{EI}{M}\left(\cos \vartheta(\xi)-1\right) \, \mathbf{E}_2 \\ \vartheta(\xi) &= \xi \frac{M}{EI} \end{aligned} \right.

which furnishes a tip displacement e1⋅x(L)=−1\mathbf{e}_1 \cdot \boldsymbol{x}(L) = -1 .

Outcome  

Corotational -1.05208167300369859198
Corotational02 -1.000000000000076

3) Convergence with Bathe’s Cantilever  

This example demonstrates the convergence characteristics of the new corotational transformations. The standard problem of a curved 45-degree cantilever is implemented. The following variants are investigated:

Test02-Geom01
This is the formulation that is currently available in OpenSees as the Corotational transformation. It can be executed with both the OpenSees executable, and the xara executable.
Test02-Geom02

4) Reliability under large rotations  

5) Computational efficiency  

6) Shear deformations  

This example demonstrates the use of the Corotational02 transformation to represent a shear-deformable cantilever. The setup is that of Section 4.2.2 from Perez and Filippou (2024).

Test06-Prism-Geom01
This is the formulation that is currently available in OpenSees as the Corotational transformation. It can be executed with both the OpenSees executable, and the xara executable.
Test06-Prism-Geom02
 Arch Instability
Extrusion with bricks 
On this page:
1) Objectivity and Self-Stressing   2) Accuracy in pure flexure   3) Convergence with Bathe’s Cantilever   4) Reliability under large rotations   5) Computational efficiency   6) Shear deformations  
Corotational02
Corotational02
A gallery of technical examples using OpenSees.
Code licensed BSD, docs CC BY-NC 4.0
 
Links
Home 
About 
Docs 
Examples
Working with solids 
Nonlinear dynamics 
Basic Statics 
Community
Issues   
Discussions   
Contribute 
PEER
Code copied to clipboard