pyscal: python Structural Environment Calculator
Complete documentation with examples available here.
What changed in version 4
pyscal grew over the years from a small wrapper around a few C++ routines into a full structural-analysis toolkit. With each addition the original System / Atoms object model became more rigid: every new descriptor had to be threaded through the same class hierarchy, neighbor lists were tied to a particular System instance, and interoperating with the rest of the atomistic-simulation Python ecosystem (ASE, pymatgen, OVITO, LAMMPS dump readers) required converting back and forth between formats.
Version 4 is a ground-up rewrite around four changes:
-
ASE
Atomsis the data structure. pyscal no longer ships its own atoms class. Anyase.Atomsobject, read from a LAMMPS dump, a POSCAR, a CIF, an XYZ, built withase.build.bulk, or constructed by hand, can be passed directly to a pyscal function. Results are written back asatoms.arrays["pyscal_*"]for per-atom quantities andatoms.info["pyscal_*"]for global ones, so they travel with the atoms object and remain accessible to the rest of the ASE ecosystem. -
Functional API. Every descriptor is a top-level function in
pyscalthat takes anAtomsobject as its first argument. Neighbor lists are computed once withpyscal.find_neighbors(atoms, ...)and reused by every subsequent descriptor. There is no system state to keep in sync, no method-chaining order to remember, and no class to subclass when adding a new descriptor. -
Neighbor search on matscipy-neighbours. The neighbor search uses the C++ core of matscipy-neighbours, which is included in pyscal. The neighbors are stored as flat arrays, which the descriptors read directly. For one million atoms with 12 neighbors each, the search takes 0.12 s instead of 28 s in pyscal 3.3.
-
Threads. The neighbor search, common neighbor analysis and the per-atom loops of the descriptors run on all CPU cores. The results are the same for any number of threads.
pyscal.set_num_threads(n)or the environment variablePYSCAL_NUM_THREADSsets the number of threads.
The C++ core keeps voro++ for tessellation and its own kernels for Steinhardt-type invariants and common neighbor analysis, with pybind11 bindings, and is now exposed through a much thinner Python layer.
A typical session looks like:
import pyscal
from ase.build import bulk
atoms = bulk("Cu", "fcc", cubic=True).repeat(4)
pyscal.find_neighbors(atoms, method="cutoff", cutoff=0) # adaptive
q4, q6 = pyscal.steinhardt_parameter(atoms, l=[4, 6])
labels, names = pyscal.identify_ackland_jones(atoms)
print(atoms.arrays["pyscal_q6"].mean()) # ≈ 0.57 for fcc
Timings
pyscal is as fast as or faster than OVITO and freud.
Scripts written for pyscal 3 need small changes, described in Migrating from pyscal 3. To keep the old interface, install pyscal3<4.
What is included
This release consolidates a number of new descriptors alongside the existing ones:
- Neighbors: fixed cutoff, adaptive cutoff, SANN, a fixed number of neighbors, Voronoi
- Steinhardt $q_l$ and averaged $\bar{q}_l$
- Wigner $W_l$: third-order rotational invariants for distinguishing cubic structures
- Minkowski structure metrics: Voronoi-area-weighted, parameter-free $q_l$
- Solid/liquid classification and clustering
- Disorder parameter
- Angular and $\chi$ parameters, Ackland-Jones structural classifier
- Coordination measures: coordination number, effective coordination, generalised coordination, local density
- Angular distribution function and bond-length distribution function
- Voronoi tessellation: structural vector and Voronoi volume
- Centrosymmetry parameter
- Common neighbor analysis (CNA, adaptive CNA, diamond variants)
- Entropy parameter (Piaggi–Parrinello)
- Warren–Cowley short-range order
- Atomic deformation: strain tensor, von Mises invariant, $D^2_{\min}$, slip vector
- Wigner–Seitz defect analysis: vacancies, interstitials, antisites against a reference
- Atomic Cluster Expansion (ACE) descriptors up to body order four
A complete list with mathematical definitions and examples is available in the documentation.
Installation
pyscal is distributed on PyPI and conda-forge as pyscal3 (the name pyscal on PyPI refers to a separate, unrelated package). After installation, both import pyscal and import pyscal3 work.
From conda-forge:
conda install -c conda-forge pyscal3
or from PyPI:
pip install pyscal3
To build from source:
git clone https://github.com/pyscal/pyscal3.git
cd pyscal3
pip install .
A C++ compiler with C++17 support is required when building from source.
Third-party code
pyscal3 includes two C++ libraries in lib/, compiled into its extension module:
- voro++ by Chris H. Rycroft, for Voronoi tessellation.
- matscipy-neighbours by the libAtoms developers, for the neighbour search. MIT licence, see
lib/matscipy-neighbours/LICENSE.mdandVENDORED.mdin the same directory.
Citing the work
If you use pyscal in your work, please cite the following article:
Sarath Menon, Grisell Díaz Leines and Jutta Rogal (2019). pyscal: A python module for structural analysis of atomic environments. Journal of Open Source Software 4(43), 1824. https://doi.org/10.21105/joss.01824
Works using pyscal
For a list of publications that used pyscal, see here.
Contributing
Bug reports, questions and contributions are welcome. See Contributing.
Metadata
Release files for pyscal3 4.1.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 | |
|---|---|---|---|
| pyscal3-4.1.0.tar.gz | 233.3 kB | Details |
Built distributions (wheels)
Total release size: 9.5 MB
Release files / pyscal3-4.1.0.tar.gz
| Download URL | pyscal3-4.1.0.tar.gz |
|---|---|
| Size | 233.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ce79fe007835492b97b3fd01acc3479e81470715981e2a64cc86e76c61829667
|
|
BLAKE2b-256 checksum How to use checksums |
da95d3d958f39db8318cdbe6f1960a8725ba151a2807b5f11b7e544ee1fa4889
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp314-cp314-win_amd64.whl
| Download URL | pyscal3-4.1.0-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 507.7 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8368a444fcd94fa640d6cfda6bea5ab16f886b7ac2808d3c656ad0f1eaf89cef
|
|
BLAKE2b-256 checksum How to use checksums |
a145500ac161ff7d2d1215f6683f944a894e552f4c939787ff6355092e7ec881
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pyscal3-4.1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 557.0 kB |
| Tags | CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
c6df5ab5049e24898a4fc4bbbf2b6f6385c9621b0fd3589d1b888b450950be55
|
|
BLAKE2b-256 checksum How to use checksums |
429242e8b5750877e08cb552768688432334fe4a74226e1a9589762bea4bdde1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | pyscal3-4.1.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 379.6 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
647830958b06897d2219fd13a907d4a1d9a67e767b9416ca3e46274c4d27089a
|
|
BLAKE2b-256 checksum How to use checksums |
9e3d5f1bb18632e7b0798cbefa693f104c486fed4bdcf7f6f1cb63ba7a7fdaa1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp314-cp314-macosx_10_15_x86_64.whl
| Download URL | pyscal3-4.1.0-cp314-cp314-macosx_10_15_x86_64.whl |
|---|---|
| Size | 426.2 kB |
| Tags | CPython 3.14 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
1c89e5088ba15034ec70937bab1fd050f9902d7a85f3736bd1a359ac2d0b7400
|
|
BLAKE2b-256 checksum How to use checksums |
f08bc0a2af50487afd9bced0984b3b497ff3fb54c8f6a01b87775dcc379c428b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp313-cp313-win_amd64.whl
| Download URL | pyscal3-4.1.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 493.7 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ef4d0e6c4e63919f86e239cb0c489f28a054639a045c62bbf25aa9fb7c85b8d4
|
|
BLAKE2b-256 checksum How to use checksums |
0d5ba910be4d233183d209a9c2a0b634a1690118d740da29cbabd805eacbef42
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pyscal3-4.1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 556.9 kB |
| Tags | CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
67383ac8344f88147ec4820366b5a9d43c7c3efadf9963b7fdcc720855f3ad96
|
|
BLAKE2b-256 checksum How to use checksums |
c4bc86c59a15032a29108aea4cfc12939f83654fd60f4cf0a40f5c840981090f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | pyscal3-4.1.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 379.5 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
7d4009df09d7e511d28804ad600ae865131d8594a9e1ac9ed28f13eed1940470
|
|
BLAKE2b-256 checksum How to use checksums |
fdc78578d3e9dcfd25ddcf51a240a83955f5658c3715963940fe0ba5c2bb3c5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp313-cp313-macosx_10_13_x86_64.whl
| Download URL | pyscal3-4.1.0-cp313-cp313-macosx_10_13_x86_64.whl |
|---|---|
| Size | 425.5 kB |
| Tags | CPython 3.13 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
9e9942229b871ba9493b6a769fce6270751f4162840f51c29bbfb5a8ebf865aa
|
|
BLAKE2b-256 checksum How to use checksums |
7f04041685fc6ee32690d2a8dec74a2e2c0c1798c24b41f9f97e600485f5aef2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp312-cp312-win_amd64.whl
| Download URL | pyscal3-4.1.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 493.6 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
4ae8feb0f5b3c852cbffb9045b3fdc954e64b8dedcddc19089ce060cbb2b6f06
|
|
BLAKE2b-256 checksum How to use checksums |
7e0d501439dc3478ef44189596354cea93c0bafba77ac02f51922366480cab35
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pyscal3-4.1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 556.8 kB |
| Tags | CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
5d6a14d045c4b4688896a74ccf2698eac9f407ae9f008cf301f7ac357808d582
|
|
BLAKE2b-256 checksum How to use checksums |
3e7ed5fe6fcc78ec5887e4b314b8df1cd318f3fe11b2c13b8f292a8dfcca2f27
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | pyscal3-4.1.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 379.5 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
216de27d357cf958f065b20092e819e95a6ec373722ea7a8c690add2966221aa
|
|
BLAKE2b-256 checksum How to use checksums |
265509fcb184c4608c7fffd52e8c63096fc74fd915e8b18bea94588af1fb3b53
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp312-cp312-macosx_10_13_x86_64.whl
| Download URL | pyscal3-4.1.0-cp312-cp312-macosx_10_13_x86_64.whl |
|---|---|
| Size | 425.3 kB |
| Tags | CPython 3.12 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
632cc805f8a6825a76f49156de5351d9adcd2f9fbc4563e98cbf40b020cb45ec
|
|
BLAKE2b-256 checksum How to use checksums |
5bfdd79d8577f9cd87c9aa48f6dc3ab21c619236a505ebe9d65ad958e3ceb84d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp311-cp311-win_amd64.whl
| Download URL | pyscal3-4.1.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 489.7 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
afade555292277be6ae4fad4f1c010aefc088d70f1804fbc9c51a090924513df
|
|
BLAKE2b-256 checksum How to use checksums |
03c0f150a5c1c14e2f56559cb1e1f1ee0d452f5bd204867805b3dcdd664956dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pyscal3-4.1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 558.7 kB |
| Tags | CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
9aaf7148e146fddd4e3f4625cfeacd1c094f4b18d539c27dbbd07ebfa3823fc9
|
|
BLAKE2b-256 checksum How to use checksums |
1eebd69015fa2cf65d864bfd10ad17bd344488dd1bc50df3120b84161b5b0cbb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | pyscal3-4.1.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 377.9 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
1f419fe502e0d38c291c9d9357f295a37e739f01ca711cc50d9a7fc43ee1beff
|
|
BLAKE2b-256 checksum How to use checksums |
b9c32d4d95a60625cac20824fece90242cba1d25e9db1e6e1e29c9654572b9b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp311-cp311-macosx_10_9_x86_64.whl
| Download URL | pyscal3-4.1.0-cp311-cp311-macosx_10_9_x86_64.whl |
|---|---|
| Size | 422.3 kB |
| Tags | CPython 3.11 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
a806e27ef200f76d650bd7e1004f6b24ab91e5e05a16dc72c32079dbf062a810
|
|
BLAKE2b-256 checksum How to use checksums |
dfdcdc456bb97c4a9ce8db9eec983bf1fa91fe232616f503cf7a289ae0eedb05
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp310-cp310-win_amd64.whl
| Download URL | pyscal3-4.1.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 489.6 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
04958d137150f2240e39862d70dbbf0572efcf97c785f737605f227e8466b095
|
|
BLAKE2b-256 checksum How to use checksums |
ab791d13e2695cf5a3a56a2761da5cbc92f6059f945a70a21d33fe5e7372d917
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pyscal3-4.1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 556.9 kB |
| Tags | CPython 3.10 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
34081fb7714ba3a2a9de5b7afdbb3892e92278659c583ff0cff8a17b3da0dbf6
|
|
BLAKE2b-256 checksum How to use checksums |
f416822fee7b79dd50366412c77d5d18cf355f3aca5fa83388f08e731eede534
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | pyscal3-4.1.0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 377.1 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a2530d0a48f8a3124cfafad8f5db0613d43feafc54038313b15306d207529216
|
|
BLAKE2b-256 checksum How to use checksums |
b8dfc0c667cd100947e918a9b3d37a2a59d1137792caaf0523070efc52e8a529
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / pyscal3-4.1.0-cp310-cp310-macosx_10_9_x86_64.whl
| Download URL | pyscal3-4.1.0-cp310-cp310-macosx_10_9_x86_64.whl |
|---|---|
| Size | 420.9 kB |
| Tags | CPython 3.10 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
71435a7e9ddc3b43ab12f642d323121eb52b7bbb9c18c542918ac7a5c3a96e34
|
|
BLAKE2b-256 checksum How to use checksums |
7cfbf53997d7fa273822daeec9e3b11adcf03558586c57f4e0ecd12845b38b6d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency log