Registry / ai-ml / openseespylinux

openseespylinux

JSON →
library3.8.0.0pypypiunverified

OpenSeesPy is a Python wrapper for the OpenSees finite element analysis framework, widely used for simulating structural and geotechnical systems. The `openseespylinux` package provides a pre-compiled, optimized version of OpenSeesPy specifically for Linux environments, enabling high-performance numerical simulations without needing to compile OpenSees from source. It is currently at version 3.8.0.0 and typically updates in alignment with major OpenSees releases.

pip install openseespylinux
INSTALL
IMPORT
SIG · OPENSEESPYLINUX
O
openseespylinux
ai-mlpythonv3.8.0.0
Install
3.3s avg
Import
Disk
222MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v3.7.1.2 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.920 runs
installs and imports cleanly · install 0.0s · import 0.000s · 193MB
glibc
py 3.103.920 runs
installs and imports cleanly · install 3.3s · import 0.000s · 194MB
222MB installed
● package 222MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

ops
import openseespy.opensees as ops
import openseespy
The core OpenSees commands are exposed via the `opensees` submodule, aliased as `ops` by convention.

This example demonstrates a basic static analysis of a simple truss element, including model definition, material/element assignment, boundary conditions, loading, analysis, and result retrieval. It's crucial to call `ops.wipe()` before defining a new model.

import openseespy.opensees as ops # 1. Start a new model (2D, 3 DoF per node) ops.wipe() ops.model('basic', '-ndm', 2, '-ndf', 3) # 2. Define a uniaxial elastic material (tag 1, E=3000) ops.uniaxialMaterial('Elastic', 1, 3000.0) # 3. Define nodes ops.node(1, 0.0, 0.0) ops.node(2, 10.0, 0.0) # 4. Define boundary conditions (fixed at node 1) ops.fix(1, 1, 1, 1) # 5. Define an elastic truss element (tag 1, nodes 1-2, Area=1.0, material tag 1) ops.element('Truss', 1, 1, 2, 1.0, 1) # 6. Define a time series (constant) and load pattern ops.timeSeries('Constant', 1) ops.pattern('Plain', 1, 1) ops.load(2, 0.0, -100.0, 0.0) # Apply 100 units downward load at node 2 # 7. Define analysis parameters ops.integrator('LoadControl', 0.1) ops.numberer('RCM') ops.constraints('Plain') ops.system('BandGeneral') ops.algorithm('Newton') ops.analysis('Static') # 8. Perform analysis in 10 steps ops.analyze(10) # 9. Get results (Y-displacement of node 2) disp_y = ops.nodeDisp(2, 2) print(f"Y-displacement at node 2: {disp_y}") # 10. End model and clear memory ops.wipe()
Debug
Known issues
breakingThe `openseespylinux` package is strictly for Linux operating systems. Attempting to install or run it on Windows or macOS will result in `ImportError` or `OSError` due to incompatible binaries.
fix
Ensure you are using a Linux environment (native, WSL, Docker, or VM) for installation and execution. For other operating systems, consider `openseespy` (if available for your OS) or building from source.
affects: All versions
breaking`openseespylinux` requires Python 3.12 or newer. Installing with older Python versions will likely lead to `ModuleNotFoundError` or other runtime `ImportError` issues.
fix
Verify your active Python version (`python --version`) and ensure it is 3.12 or greater. Use a virtual environment to manage Python versions if necessary.
affects: All versions
gotchaThe standard and correct way to access OpenSees commands is `import openseespy.opensees as ops`. A common mistake is to simply use `import openseespy`, which does not expose the command API directly.
fix
Always use `import openseespy.opensees as ops` to ensure access to all OpenSees commands (e.g., `ops.model()`, `ops.node()`).
affects: All versions
gotchaIt is critical to call `ops.wipe()` at the beginning of any new model definition or before running multiple independent analyses within the same Python script. Failure to do so can lead to unintended interactions and incorrect results from previously defined model components.
fix
Always include `ops.wipe()` as the very first command when defining a new OpenSees model.
affects: All versions
Upgrade
Version history
3.8.0.0latest on PyPI · released Mar 18, 2026
Audit
Dependencies

No dependency data recorded yet.

Agent activity
11 hits · last 30 days
node
10
Resources
openseespylinux — pip install openseespylinux · libregistry