Skip to main content

Nonlinear finite element analysis.

Project description

opensees

PEER Logo

Nonlinear finite element analysis.


Latest PyPI version PyPI Downloads

opensees is a Python package that provides an intuitive API for nonlinear finite element analysis, implemented in C++ through the OpenSees framework. OpenSees features state-of-the-art finite element formulations and solution algorithms, including mixed formulations for beams and solids, over 200 material models, and an extensive collection of continuation algorithms to solve highly nonlinear problems.

The opensees package supports interactive post processing via the sees package.

The package may be used as a drop-in replacement for both OpenSees.exe and OpenSeesPy (see Getting Started below), and generally provides a substantial performance boost.

This package is experimental and not yet intended for public use.

Features

  • Performance Switching Python scripts to use opensees typically results in a 4x to 5x performance boost.
  • Interactive Tasks: Easily return stiffness, mass, and damping matrices as NumPy arrays and join meshes without duplicate nodes and constraints.
  • Extensive Modeling Library: State-of-the-art element formulations with over 200 material models to choose from.
  • Continuation Algorithms: Robust algorithms for solving highly nonlinear problems.
  • Intuitive and Reliable The core OpenSees runtime has been redesigned so that all program state is encapsulated in user-instantiated classes, and global variables/singletons are avoided. This eliminates several preexisting vulnerabilities to inadvertent state corruption.

Additional features include:

  • Convert OpenSeesPy scripts into equivalent Tcl files that can be used for faster processing or serialization. Unlike most conversion utilities, this conversion is done exactly and does not rely on hand-rolled parsing.

  • The package can be installed with pip for Python versions 3.7 - 3.12 on Linux, MacOS and Windows, but eigenvalue analysis is currently broken on Windows.

[!NOTE] This package is independent of the openseespy library, which is documented in the OpenSees documentation website. OpenSeesPy can be installed by running the following command:

pip install opensees[py]

Getting Started

The opensees package can be installed into a Python environment in the standard manner. For example, using pip:

pip install opensees

There are several ways to use the opensees package:

  • To execute Tcl procedures from a Python script, just create an instance of the opensees.tcl.Interpreter class and call its eval() method:

    interp = opensees.tcl.Interpreter()
    interp.eval("model Basic -ndm 2")
    interp.eval("print -json")
    
  • To start an interactive interpreter run the shell command:

    python -m opensees
    

    To quit the interpreter, just run exit:

    opensees > exit
    
  • The opensees package exposes a compatibility layer that exactly reproduces the OpenSeesPy functions, but does so without mandating a single global program state. To run OpenSeesPy scripts, just change the import:

    import openseespy.opensees
    

    to

    import opensees.openseesrt
    

    For true stateless modeling, the Model class should be used instead of the legacy model function; documentation is under development.

Development

To compile the project see help/compiling

See also

  • osmg OpenSees Model Generator
  • sees Modern rendering library
  • mdof Optimized system identification library
  • sdof Optimized integration for single degree of freedom systems

For more projects by the STAIRlab, visit https://github.com/STAIRlab .

Support

PEER Logo Caltrans Logo STAIRlab Logo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

opensees-0.1.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

opensees-0.1.8-cp313-cp313-macosx_14_0_arm64.whl (21.9 MB view details)

Uploaded CPython 3.13 macOS 14.0+ ARM64

opensees-0.1.8-cp312-cp312-win_amd64.whl (90.2 MB view details)

Uploaded CPython 3.12 Windows x86-64

opensees-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

opensees-0.1.8-cp312-cp312-macosx_14_0_arm64.whl (21.9 MB view details)

Uploaded CPython 3.12 macOS 14.0+ ARM64

opensees-0.1.8-cp311-cp311-win_amd64.whl (90.2 MB view details)

Uploaded CPython 3.11 Windows x86-64

opensees-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

opensees-0.1.8-cp311-cp311-macosx_14_0_arm64.whl (21.9 MB view details)

Uploaded CPython 3.11 macOS 14.0+ ARM64

opensees-0.1.8-cp310-cp310-win_amd64.whl (90.2 MB view details)

Uploaded CPython 3.10 Windows x86-64

opensees-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

opensees-0.1.8-cp310-cp310-macosx_14_0_arm64.whl (21.9 MB view details)

Uploaded CPython 3.10 macOS 14.0+ ARM64

opensees-0.1.8-cp39-cp39-win_amd64.whl (90.2 MB view details)

Uploaded CPython 3.9 Windows x86-64

opensees-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

File details

Details for the file opensees-0.1.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a6eeae74c63f47d3c0a00be655429f74e88868307e10dbae529a44638fce3d31
MD5 6f575fd20ccc00aa8cff2f7d32c782a7
BLAKE2b-256 64b472d293eea475d9e9c9faed9434c81754d57c196ae0ef63036fa5a5911920

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 27a097b768a1ef4169ddac892da2203997be1bf60a9165bcafcff4d1e130464e
MD5 4b601ae254fbe9c8f311fec680b7895a
BLAKE2b-256 ea1f4d09e7043c5fcf421ad61bd042b4600ce5e753c8eefec4edbce694731045

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: opensees-0.1.8-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 90.2 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for opensees-0.1.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c992792d8a66c93f9c8ca917c5046bb03edf4ebdd56996daad534be3ea617bba
MD5 5f153f934b971983e80dc4c848f60e74
BLAKE2b-256 f4c8355b3f12abae9dd82d3e7edca9593bb11d6ed2b2ac12b722bb3ed78f7e1e

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 abb9da7115621f14cd12430fec33bc6b25fe652f4dd5cc57fc34407e802099e0
MD5 f3c2cfc6939557221406b34c559e2f44
BLAKE2b-256 6896c8c2992e4fa515cc346c3ebfff1bc0333810e48744ca7fcd04ebda7bf0a4

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 45652b9f110e69aecabc442490ee9029de1261726d4776d9135d0a2c6543518c
MD5 9183b88f79c2ec5b226b67a6e2f892ba
BLAKE2b-256 507939f79d5e703f4bbfb3a3d62b2d898287b015d6772c97fa87bd48ce5f1eee

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: opensees-0.1.8-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 90.2 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for opensees-0.1.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c5af54d8c09657c5e85a1cae4c22ba2b7b4fadf73ff2ca72353fdafad0da79ad
MD5 6ac52a39d2408ed4d127d4f30675ace7
BLAKE2b-256 1436dbe69178eb8ed6bf68f912116a1bff4510f00ecab741010a4c6f4110f180

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5e312924eda20f4fdcaddc05a2072bb4d1445f4b0a453fa6324109a5582bbe07
MD5 68c42e015afb6c7be3cdd9b05bec4116
BLAKE2b-256 065369a0a2834f13abdb724d71e20cadbd731c7398eda6a48ab6d38081d40d6f

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4f889a956e28bcf004e9aac562fd249264daf640dd0a5e7aec8ce7f80ebf420c
MD5 6a7c53592e3e4a561e7f0a611bd31aad
BLAKE2b-256 896260e8a87da2e6733d730903b520ae9b7992364ee104e3855e7c3ade2b2a9a

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: opensees-0.1.8-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 90.2 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for opensees-0.1.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 7961130e182c70876e728c288bd065cbe2bbd420d96bbda97806f781e060e82d
MD5 389703fd90436e5ce88baccc79adcaff
BLAKE2b-256 a298bd8e91f2e101846ea64ccc5489da153e805fdfaf45f56161648d6d246423

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c9bb914dea0d367e6a2afb7751bde5774e42eab271aac3df11fecf863feb41a1
MD5 0da1d22cfa3d5b499c0ea75b99bf0cd0
BLAKE2b-256 78232592d8e2bd5b35f0e7fde8980042436156afdce656164a31a1a789ce14d9

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 3f9e244ddbfe6410a8768e41d2f076be224613e432cea97b99c15fbfbfcc8d19
MD5 f7c70c7eae101c88777eca3d1dd3440e
BLAKE2b-256 76c7c25905a8ee4df107efe68cbd05127fd56d4ed94bdf3162d43c8782e4f461

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: opensees-0.1.8-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 90.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for opensees-0.1.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 5ef109470af1d67d4a3b7de6f46b4a09dddd0c773b435327e7606a72c543c98d
MD5 9422d14e2dd66f321d5e8ab99acb2242
BLAKE2b-256 e2eea451877de98abbb2d882f1aa9997e811271c4a3254267d1f9c1fb08ea38f

See more details on using hashes here.

File details

Details for the file opensees-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opensees-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 23e463d17b1d9382dc16efbfed911615ebdd6e1432d56d0f3420ca10cf996977
MD5 c6f5f0f3e152aad1102662f6e4341955
BLAKE2b-256 0417470083e1f69da330be1da4715ca797c5b121e6e3986f83877ca333b962d8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page