Structural analysis solvers tailored for semi-analytical models
- Linear statics: [K]{u} = {f}
- Eigensolver for Linear buckling: ([K] + lambda[KG]){u} = 0
- Eigensolver for dynamics: ([K] + lambda^2[M]){u} = 0
- Nonlinear statics using Newton-Raphson
- Nonlinear statics using the Arc-Length method
Currently these solvers are pretty much compatible with my other repositories panels, buckling.
Citing this library
Saullo G. P. Castro (2026). Structural analysis solvers tailored for semi-analytical models (Version 0.4.0). Zenodo. DOI: https://doi.org/10.5281/zenodo.2581212.
Documentation
The documentation is available on: https://saullocastro.github.io/structsolve.
History
See CHANGELOG.md for the details of each version.
- version 0.4.0 (2026-09-17)
- Newton-Raphson with full Newton iterations and a relative convergence criterion by default, reaching quadratic convergence with exact tangent stiffness matrices
- Fixed the load-factor bookkeeping of Newton-Raphson, which could finish before reaching the full load
- Arc-length methods (Riks and Crisfield) rewritten, able to trace limit points, snap-through and snap-back until a load factor of exactly 1.0
- Sphinx documentation
- version 0.3.1 (2026-04-09)
- Robust estimation of the eigenvalue shift for singular matrices in
freqandlb, and newskip_null_colsargument - Python 3.14 support
- Estimation of the eigenvalue shift in
freqandlb - Packaging with
pyproject.toml, GitHub Actions and a test suite
- Robust estimation of the eigenvalue shift for singular matrices in
- version 0.2.2 (2019-03-02)
- Release of 0.2.1 with an updated distribution
- Fixed the dense solver of
freq freqreturns the eigenvalueslambda**2instead of the natural frequencies
- version 0.1.0 (2018-06-23)
- First release, with the solvers from
compmech
- First release, with the solvers from
License
Distributed in the 3-Clause BSD license (https://raw.github.com/saullocastro/structsolve/master/LICENSE).
Contact: S.G.P.Castro@tudelft.nl
Metadata
Release files for structsolve 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| structsolve-0.4.0.tar.gz | 27.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| structsolve-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 52.0 kB
Release files / structsolve-0.4.0.tar.gz
| Download URL | structsolve-0.4.0.tar.gz |
|---|---|
| Size | 27.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
076b1448cf6cd65f3ca5e1c9a52c62fd3c3d7d8b35d83bfd3ea98445ff5a2a33
|
|
BLAKE2b-256 checksum How to use checksums |
c42232b9abed9212f34ff07a72bd7da2a32543bd42bf982de9278fb7de5c190b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|
Release files / structsolve-0.4.0-py3-none-any.whl
| Download URL | structsolve-0.4.0-py3-none-any.whl |
|---|---|
| Size | 24.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e7d8087dd8bd4f4f8a6452e267418d8c68d29f3242b767d471bb8301fe09ef33
|
|
BLAKE2b-256 checksum How to use checksums |
99bb603fd17b59008ab6f1eca973ac3ab662ff45ee79bd59893708554277c388
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|