Skip to main content

Github Actions status:

Actions Status

Coverage status:

Codecov Status

Semi-analytical methods for plates, shells and stiffened panels

  • Linear static analyses, with field outputs of displacements, strains and stresses
  • Linear buckling
  • Vibration, with or without pre-stress
  • Panel flutter using the piston theory
  • Geometrically non-linear static analyses (postbuckling) using the Newton-Raphson method or the arc-length methods of Riks and Crisfield
  • Multi-domain assemblies of cylinders, stiffened panels and panels with debonding defects

The structural matrices are solved with structsolve.

Citing this library

Saullo G. P. Castro, Nathan D'Souza. (2026). Semi-analytical methods for plates, shells and stiffened panels (Version 0.6.21). Zenodo. DOI: https://doi.org/10.5281/zenodo.2541522.

Documentation

The documentation is available on: https://saullocastro.github.io/panels.

Installation

To get the latest version:

python -m pip install panels

History

See CHANGELOG.md for the details of each version.

  • version 0.6.21 (2026-09-18), including the changes first released in 0.6.13
    • Fixed the mass of the base of BladeStiff2D, which was missing, and the section forces of MultiDomain.force(), which lacked the Jacobian
    • StiffPanelBay.calc_kA() sums the contribution of every panel, and calc_kA, calc_cA, calc_fext, save, get_size and uvw_stiffener of StiffPanelBay and Shell.calc_cA no longer raise
    • Shell.strain() and Shell.stress() work for a plate with r=None
    • Line coverage of the tests raised from 67 % to 92 %
    • Fixed StiffPanelBay.add_panel and the partial-domain integration of Shell.calc_kC, calc_kG and calc_kM
    • The limits Shell.x1, x2, y1, y2 of the integration domain default to None instead of the sentinels -1 and +1, which silently integrated the full domain for a limit at 1.0 and ignored a limit given on one side only; the old -1 now raises
    • Fixed the MultiDomain skin-base connections: the 'SB' penalty was a hard-coded mm-unit value, the top and bottom panels depended on their order in the assembly, and the connection dictionaries were modified
    • Penalty constants of each MultiDomain connection can be given with 'kt' and 'kr'
    • Reproduction of Stamatelos and Labeas with plate domains only in tests/multidomain/test_stamatelos_labeas_2023_multidomain.py, using every MultiDomain connection
    • Fixed the argument handling of the stiffness API: an invalid c or c_cte no longer reaches the nogil kernels, and a model that needs a radius raises instead of computing with r = 0
    • Reproduction of Stamatelos and Labeas (Computation 2023, 11, 110) in notebooks/stamatelos_labeas_2023.ipynb
    • Tangent stiffness matrix that is the exact derivative of the internal force vector, giving quadratic convergence to the Newton-Raphson method
    • Shell and MultiDomain can be passed directly to structsolve.Analysis, including the arc-length methods
    • Gauss-Legendre points and weights from scipy.special.roots_legendre
    • Modules of the models renamed without the _bardell suffix, and the legacy _bardell model names removed from panels.modelDB.db
    • Sphinx documentation with usage examples
  • versions 0.5.x
    • Damaged multidomain connections
  • up to version 0.3.x
    • Multidomain methods for pristine structures

License

Distributed under the 3-Clause BSD license (https://raw.github.com/saullocastro/panels/main/LICENSE).

Contact: S.G.P.Castro@tudelft.nl

Metadata

Release files for panels 0.6.21

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for panels 0.6.21
File Size Uploaded
panels-0.6.21.tar.gz 3.0 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for panels 0.6.21
File
panels-0.6.21-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
panels-0.6.21-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
panels-0.6.21-cp314-cp314-macosx_10_15_universal2.whl CPython 3.14 CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64) Details
panels-0.6.21-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
panels-0.6.21-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
panels-0.6.21-cp313-cp313-macosx_10_13_universal2.whl CPython 3.13 CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64) Details
panels-0.6.21-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
panels-0.6.21-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
panels-0.6.21-cp312-cp312-macosx_10_13_universal2.whl CPython 3.12 CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64) Details
panels-0.6.21-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
panels-0.6.21-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
panels-0.6.21-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details
panels-0.6.21-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
panels-0.6.21-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
panels-0.6.21-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details
panels-0.6.21-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
panels-0.6.21-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
panels-0.6.21-cp39-cp39-macosx_10_9_universal2.whl CPython 3.9 CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64) Details

Total release size: 129.7 MB

Release files / panels-0.6.21.tar.gz

Download URL panels-0.6.21.tar.gz
Size 3.0 MB
Tags Source
SHA-256 checksum
How to use checksums
f7c18f7b82b06610d80fd24f63581d6f23df1e2a67aaa4b2c7af69a42b932264
BLAKE2b-256 checksum
How to use checksums
7be3bf504a149e619ad1fc096f9da4880ebb48faf3f2e9f3d75d23e5db5ed45a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / panels-0.6.21-cp314-cp314-win_amd64.whl

Download URL panels-0.6.21-cp314-cp314-win_amd64.whl
Size 1.8 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
747e9119ad81f83f56cc08d2cee77e428e16625e63e4e7a68961b3308cad8b90
BLAKE2b-256 checksum
How to use checksums
8a595281f922777c9a87644e9630c9c53c40e6c978f5ffb8f96c5d0617570be7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / panels-0.6.21-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.6.21-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 15.5 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
26eb5db6599dd6032853ddf9b2f100080cf0dd2a33c064234bc9711030edcca5
BLAKE2b-256 checksum
How to use checksums
0c20bf6bd50d122d86878dbb58bcc2ac04cc557f576592aa798f102e2978ae17
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / panels-0.6.21-cp314-cp314-macosx_10_15_universal2.whl

Download URL panels-0.6.21-cp314-cp314-macosx_10_15_universal2.whl
Size 3.9 MB
Tags CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
857242c598d48e63f9cda36f43a2a4fb467c3c086a78c8c3e65a16972468263d
BLAKE2b-256 checksum
How to use checksums
d6d135b0081a6661160abdc87bf7037a60332f37c0e54c5586b6e5ea3281d034
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / panels-0.6.21-cp313-cp313-win_amd64.whl

Download URL panels-0.6.21-cp313-cp313-win_amd64.whl
Size 1.8 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e20fef5ac1809abcf2d6151355a4b8beb5071969277303fa228b6bf4c3130045
BLAKE2b-256 checksum
How to use checksums
7931b10ece9202393946ef6f4e2679d0bc4ef416fb8d09cd50d874879dafae00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / panels-0.6.21-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.6.21-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 15.5 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
39510460938b4a92a0ae90b93996c1e57801a87d06e9c9cf9c86422b3574f011
BLAKE2b-256 checksum
How to use checksums
5dd1083211330845422b690442bac8b28160fa1efcb049c99e37e2de9505e2af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / panels-0.6.21-cp313-cp313-macosx_10_13_universal2.whl

Download URL panels-0.6.21-cp313-cp313-macosx_10_13_universal2.whl
Size 3.9 MB
Tags CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
40e67ebb6d63c876e06309cc1acd1ebe443e8a5bc861080750613fd1ea57512f
BLAKE2b-256 checksum
How to use checksums
1dce7eac0fb416c33017599686798acc9c06b10a1de90a08a784643c441a57be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / panels-0.6.21-cp312-cp312-win_amd64.whl

Download URL panels-0.6.21-cp312-cp312-win_amd64.whl
Size 1.8 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
fae4279ca99376fd576fb518477b2887d171fcf484e587b2a5a822647aefd2a0
BLAKE2b-256 checksum
How to use checksums
3005a290e3ed21f60317db325443182f1ab220863b6c651ecd2d2f7f643f4248
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / panels-0.6.21-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.6.21-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 15.5 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8156427bfa01dfb670528c82a1bbae91f6a769473e925bff86242fecbdee70a0
BLAKE2b-256 checksum
How to use checksums
b0faf7385c67b54910f9545fcb1bdbf1331bb8ac03d3e74cc20863797186f657
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / panels-0.6.21-cp312-cp312-macosx_10_13_universal2.whl

Download URL panels-0.6.21-cp312-cp312-macosx_10_13_universal2.whl
Size 3.9 MB
Tags CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
34efbd8acb5149e9f4d3621ef3ba3d30b19f467bb41389003f0d5fb1881501dd
BLAKE2b-256 checksum
How to use checksums
17c01be67040ce094d02e535383d21e5957a2cd9570abf61bc6375378d1e29b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / panels-0.6.21-cp311-cp311-win_amd64.whl

Download URL panels-0.6.21-cp311-cp311-win_amd64.whl
Size 1.8 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
f9c7a862d35d9050c195bb09aa16a5b04e9295518e00d20ae5b103ca7046ddcd
BLAKE2b-256 checksum
How to use checksums
0a50cb9d9e6e6fb539c7f9665eb082abcc505967b4eccde23eae18414d7584ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.9

Release files / panels-0.6.21-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.6.21-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 15.6 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d03389a9c3c9edcb8529761bced7f64557ecff65c52bcf62b0fb7ac9d7897d78
BLAKE2b-256 checksum
How to use checksums
bb48ffb4d1b1943055573809305074a7f01e84320ce3ca97228af8869cddef78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release files / panels-0.6.21-cp311-cp311-macosx_10_9_universal2.whl

Download URL panels-0.6.21-cp311-cp311-macosx_10_9_universal2.whl
Size 3.9 MB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
86f7a665db5013d8f02d5836148a3c90c2f9984cca09076305d38d3e28f760bf
BLAKE2b-256 checksum
How to use checksums
e50ac8e7591a2bab7a0da191518a426b83c53f7fea3a021d081e7d387a415936
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.9

Release files / panels-0.6.21-cp310-cp310-win_amd64.whl

Download URL panels-0.6.21-cp310-cp310-win_amd64.whl
Size 1.8 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
4030b4406e8fef79d0eabf10013a41f22eb9a3a9b1dd4d76fc7252824404bcb7
BLAKE2b-256 checksum
How to use checksums
091a8a7c7708419d4b53e08bd82e79ac6fd2c421e5ceb34d5a5a1c7a2b658170
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.11

Release files / panels-0.6.21-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.6.21-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 15.1 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f3eb465a10afce26b20371476152492382e369503ac6a17033c0340e1dce7a4c
BLAKE2b-256 checksum
How to use checksums
d541dcfadb29042ec387d25d120808680ee98db3564537d5faeccaba717fd5a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.21

Release files / panels-0.6.21-cp310-cp310-macosx_10_9_universal2.whl

Download URL panels-0.6.21-cp310-cp310-macosx_10_9_universal2.whl
Size 4.0 MB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
7a6dd871a0242a5d8fedc4398ae5cb6e7a1050f1fd04d84c6bdc3bbb59429cf7
BLAKE2b-256 checksum
How to use checksums
6d56aa4fecd6a375e06540ead620bc52ce6a508e112c3954c91409f1f739240c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.11

Release files / panels-0.6.21-cp39-cp39-win_amd64.whl

Download URL panels-0.6.21-cp39-cp39-win_amd64.whl
Size 1.8 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
711b8f6836f765703a0ec84a88974b2fcfe5297405c2bc2f4119287e87499092
BLAKE2b-256 checksum
How to use checksums
ca562938001f6986156701eeec726c57c3c2696c9de2c70781700b05711a814f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13

Release files / panels-0.6.21-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.6.21-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 15.1 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d716a8c503b5f04714a1429ccb0b5459fe024a87071ef2ccf1d4c745d662b681
BLAKE2b-256 checksum
How to use checksums
06d5994fcedc20ba29eb99f5f7453b0ca2613a5f17276fbe49283d7f46e851e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / panels-0.6.21-cp39-cp39-macosx_10_9_universal2.whl

Download URL panels-0.6.21-cp39-cp39-macosx_10_9_universal2.whl
Size 4.0 MB
Tags CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
0b55bb3b684d718ee9c9ca56f44f72ea445cbcb0b97f41ce5f91ca91dfcc2665
BLAKE2b-256 checksum
How to use checksums
462092631e25dee8f391e3352e08fa39a8b663da560d2749c2c8867b4e2e1052
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page