Exploring OpenSees: A Comprehensive Guide for Structural Analysis

Introduction to OpenSees

OpenSees is an open system designed for earthquake engineering simulation, developed by the Pacific Earthquake Engineering Research (PEER) Center.

OpenSees has advanced capabilities for modeling and analyzing the nonlinear response of systems using a wide range of material models, elements, and solution algorithms.

It serves as a software framework for simulating the response of structural and geotechnical systems subjected to earthquakes. Users can create finite element models and perform static and seismic analysis, as well customize and extend the OpenSees software to meet their specific needs.

How to use OpenSees

You can install OpenSees as a library to your coding environment of choice.

Primarily written in C++ with Fortran numerical libraries for linear equation solving, OpenSees allows users to write scripts in Tcl or Python. OpenSees is licensed for educational, research, and non-profit entities for non-commercial use.

For quick, simple and instant use of OpenSees, we recommend using CalcTree. OpenSees comes pre-installed on CalcTree and is free to use.

Example of using OpenSeesPy on CalcTree for Structural Analysis

Here's an example of how you can use OpenSees to add precision and automation to your engineering analysis.

2D Truss Analysis using Openseespy in CalcTree

This tool is a 2D truss analysis calculator using OpenSeesPy, allowing users to define a truss structure, input material properties, apply external forces, and visualize the results.

The interface includes sections for specifying the geometry of the truss elements and the applied loads, with support for different units. Once the input data is provided, the tool generates a structural diagram displaying the truss configuration, support conditions, and force magnitudes.

1. Definition of Material and Geometry

  • Import material and geometric properties from the CalcTree page using unit conversions.
  • Define truss member lengths and applied loads in consistent units.

2. Model Initialization

  • Use wipe() to clear any previous models.
  • Define a 2D model with 2 degrees of freedom per node using model('basic', '-ndm', 2, '-ndf', 2).

3. Node and Element Definition

  • Define node coordinates and connectivity of truss members.
  • Assign an elastic uniaxial material to the truss elements.
  • Create truss elements using element("Truss", ...).
Openseespy element's geometry definition using variable units

4. Boundary Conditions

  • Applied pin support at node 1 and a horizontal roller at node 5 using fix()

5. Load Application

  • Defined a constant time series for static loading.
  • Applied external forces at specified nodes using load().
Openseespy load Application using variable units.

6. Analysis Setup

  • Configure the solver system, constraint handler, and numerical algorithm.
  • Use analyze(1) to perform static analysis.

7. Post-Processing and Visualization

Analysis Results: Deflection on members and internal forces calculated using OpenSeesPy
  • Extract nodal displacements using nodeDisp().
  • Plot the deformed structure with an amplification factor.
  • Extract internal axial forces from elements and classified them as tension or compression.
  • Create visualizations for the undeformed structure, deformed shape, and member forces.

Getting Started with OpenSees on CalcTree

Using OpenSeesPy on CalcTree

OpenSeesPy is a Python library which comes pre-installed on CalcTree. CalcTree lets you create and run OpenSees calculations with zero setup through its cloud computing solution for physics-based engineers.

You can create sophisticated OpenSees scripts whilst providing an interactive web interface, including model viewing and clear documentation, for team members to use.

Creating an account on CalcTree is free and takes seconds to get started!

Related resources
Ready to try?

Streamline your engineering workflows today!

Join engineers from top firms who've signed up

Try CalcTree free
AECOM
ARCADIS
aurecon
Jacobs
MOTT MACDONALD
wsp