Skip to content

MonashSmartStructures/ospgrillage

Repository files navigation

ospgrillage logo

Code style: black License: MIT version GitHub issues GitHub pull requests PyPI GitHub Workflow Status GitHub Workflow Status GitHub Workflow Status GitHub commit activity GitHub last commit Contributor Covenant codecov status DOI

Overview

ospgrillage is a python wrapper of the OpenSeesPy package to speed up the creation of bridge deck grillage models. OpenSeesPy is a python interpreter of the well-know Open System for Earthquake Engineering Simulation (OpenSees) software framework. ospgrillage provides a simple python API which allows users to:

  1. Quickly generate and analyze a bridge deck grillage model in the OpenSeesPy model space, including many forms of loading and load cases;
  2. Export a py file containing the OpenSeesPy commands, which on execution, creates the prescribed OpenSeesPy grillage model.

The ability to use ospgrillage directly to do bridge deck analysis, or to export the OpenSeesPy command file for further editing, facilites an enormous range of use cases in both practice and research.

Documentation

ospgrillage's full documentation can be found here.

Installation

Install using pip:

    pip install ospgrillage

Refer to installation for more information.

Contributions

Check out our contributing guide to learn more on contributing, coding rules, community Code of Conduct and more.

Citing

If you use ospgrillage in you work, please cite the corresponding JOSS paper:

Ngan J.W. and Caprani, C.C. (2022), "ospgrillage: A bridge deck grillage analysis preprocessor for OpenSeesPy", Journal of Open Source Software, 7(77), 4404, doi.org/10.21105/joss.04404

Capabilities

Modelling

Bridge Deck Models

  • Beam elements only - a traditional form of model
  • Beam elements with rigid links - a modification of the traditional form for box sections
  • Shell and beam elements - the modern form of modelling, but with more complex results interpretation

Meshing

  • Single-span decks
  • Skewed (Oblique) and Orthogonal meshes
  • Positive and negative skew angles
  • Allows for skew mesh to be set up to 30 degrees
  • Allows for orthogonal mesh to be set no less than 11 degrees
  • Grillage elements grouped automatically for easy assignment of properties
  • Autodetect edges of spans as supporting nodes
  • Allows for diaphragms / end slabs
  • Allows for unit width properties for transverse slab/members
  • Pinned and roller supports

Element types

The following OpenSees element types are supported:

  • elasticBeamColumn
  • TimoshenkoBeamColumn
  • Shell elements

Materials

  • A JSON materials library file for codified common material properties

Utilities

Load types

  • Nodal loads
  • Point loads
  • Line loads
  • Patch loads
  • Compound loads (any combination of the above load types)

Analysis

  • Load cases contain arbitrary multiple load types, including compound loads
  • Moving load analysis of arbitrary load types through compound loads

Post-processing

  • Output results utilise python's xarray format
  • Retrieve result envelopes from xarray results
  • Query options for moving load
  • Plotting displacement and force component from the results

Credits

  • Mayer Melhem for producing the documentation illustrations and the design of the ospgrillage logo.