soerp
Second Order Error Propagation for Python
Overview
soerp is the Python implementation of the original Fortran code SOERP by N. D. Cox to apply a second-order analysis to error propagation (or uncertainty analysis). The soerp package allows you to easily and transparently track the effects of uncertainty through mathematical calculations. Advanced mathematical functions, similar to those in the standard math module can also be evaluated directly.
In order to correctly use soerp, the first eight statistical moments of the underlying distribution are required. These are the mean, variance, and then the standardized third through eighth moments. These can be input manually in the form of an array, but they can also be conveniently generated using either the nice constructors or directly by using the distributions from the scipy.stats sub-module. See the examples below for usage examples of both input methods. The result of all calculations generates a mean, variance, and standardized skewness and kurtosis coefficients.
Basic examples
Let's begin by importing all the available constructors:
>>> from soerp import * # uv, normal, uniform, exponential, etc.
Now, we can see that there are several equivalent ways to specify a statistical distribution, say a Normal distribution with a mean value of 10 and a standard deviation of 1:
- Manually input the first 8 moments (mean, variance, and 3rd-8th standardized central moments):
>>> x = uv([10, 1, 0, 3, 0, 15, 0, 105])
- Use the
rvkwarg to input a distribution from thescipy.statsmodule:
>>> x = uv(rv=ss.norm(loc=10, scale=1))
- Use a built-in convenience constructor (typically the easiest if you can):
>>> x = normal(10, 1)
A Simple Example
Now let's walk through an example of a three-part assembly stack-up:
>>> x1 = normal(24, 1) # normally distributed
>>> x2 = normal(37, 4) # normally distributed
>>> x3 = exponential(2) # exponentially distributed
>>> Z = (x1*x2**2)/(15*(1.5 + x3))
We can now see the results of the calculations in two ways:
- The usual
printstatement (or simply the object if in a terminal):
>>> Z # "print" is optional at the command-line
uv(1176.45, 99699.6822917, 0.710076903845, 6.16116115559)
- The
describeclass method that explains briefly what the values are:
>>> Z.describe()
SOERP Uncertain Value:
> Mean................... 1176.45
> Variance............... 99699.6822917
> Skewness Coefficient... 0.710076903845
> Kurtosis Coefficient... 6.16116115559
Distribution Moments
The eight moments of any input variable (and four of any output variable) can be accessed using the moments class method, as in:
>>> x1.moments()
[24.0, 1.0, 0.0, 3.0000000000000053, 0.0, 15.000000000000004, 0.0, 105.0]
>>> Z.moments()
[1176.45, 99699.6822917, 0.710076903845, 6.16116115559]
Correlations
Statistical correlations are correctly handled, even after calculations have taken place:
>>> x1 - x1
0.0
>>> square = x1**2
>>> square - x1*x1
0.0
Derivatives
Derivatives with respect to original variables are calculated and are accessed using the intuitive class methods:
>>> Z.d(x1) # dZ/dx1
45.63333333333333
>>> Z.d2(x2) # d^2Z/dx2^2
1.6
>>> Z.d2c(x1, x3) # d^2Z/dx1dx3 (order doesn't matter)
-22.816666666666666
When we need multiple derivatives at a time, we can use the gradient and hessian class methods:
>>> Z.gradient([x1, x2, x3])
[45.63333333333333, 59.199999999999996, -547.6]
>>> Z.hessian([x1, x2, x3])
[[0.0, 2.466666666666667, -22.816666666666666], [2.466666666666667, 1.6, -29.6], [-22.816666666666666, -29.6, 547.6]]
Error Components/Variance Contributions
Another useful feature is available through the error_components class method that has various ways of representing the first- and second-order variance components:
>>> Z.error_components(pprint=True)
COMPOSITE VARIABLE ERROR COMPONENTS
uv(37.0, 16.0, 0.0, 3.0) = 58202.9155556 or 58.378236%
uv(24.0, 1.0, 0.0, 3.0) = 2196.15170139 or 2.202767%
uv(0.5, 0.25, 2.0, 9.0) = -35665.8249653 or 35.773258%
Advanced Example
Here's a slightly more advanced example, estimating the statistical properties of volumetric gas flow through an orifice meter:
>>> from soerp import normal, umath # sin, exp, sqrt, etc.
>>> H = normal(64, 0.5)
>>> M = normal(16, 0.1)
>>> P = normal(361, 2)
>>> t = normal(165, 0.5)
>>> C = 38.4
>>> Q = C*umath.sqrt((520*H*P)/(M*(t + 460)))
>>> Q.describe()
SOERP Uncertain Value:
> Mean................... 1330.99973939
> Variance............... 58.210762839
> Skewness Coefficient... 0.0109422068056
> Kurtosis Coefficient... 3.00032693502
This seems to indicate that even though there are products, divisions, and the usage of sqrt, the result resembles a normal distribution (i.e., Q ~ N(1331, 7.63), where the standard deviation = sqrt(58.2) = 7.63).
Main Features
-
Transparent calculations with derivatives automatically calculated. No or little modification to existing code required.
-
Basic
NumPysupport without modification. -
Nearly all standard math module functions supported through the
soerp.umathsub-module. If you think a function is in there, it probably is. -
Nearly all derivatives calculated analytically.
-
Easy continuous distribution constructors:
normal(mu, sigma)orN(mu, sigma): Normal distributionuniform(a, b)orU(a, b): Uniform distributionexponential(lamda, [mu])orExp(lamda, [mu]): Exponential distributiongamma(k, theta)orGamma(k, theta): Gamma distributionbeta(alpha, beta, [a, b])orBeta(alpha, beta, [a, b]): Beta distributionlog_normal(mu, sigma)orLogN(mu, sigma): Log-normal distributionchi_squared(k)orChi2(k): Chi-squared distributionf_distribution(d1, d2)orF(d1, d2): F-distributiontriangular(a, b, c)orTri(a, b, c): Triangular distributionstudent_t(v)orT(v): T-distributionweibull(lamda, k)orWeib(lamda, k): Weibull distribution
The location, scale, and shape parameters follow the notation in the respective Wikipedia articles. Discrete distributions are not recommended for use at this time. If you need discrete distributions, try the mcerp python package instead.
Installation
You have several easy, convenient options to install the soerp package.
pip
pip install soerp
To install with plotting support:
pip install soerp[plot]
To install all optional dependencies:
pip install soerp[all]
uv
uv add soerp
uv sync
Or in an existing uv environment:
uv pip install soerp
git
To install the latest version from git:
pip install --upgrade "git+https://github.com/eggzec/soerp.git#egg=soerp"
Requirements
- Python >=3.10
- NumPy : Numeric Python
- SciPy : Scientific Python (the nice distribution constructors require this)
- Matplotlib : Python plotting library (optional)
See Also
- uncertainties : First-order error propagation.
- mcerp : Real-time latin-hypercube sampling-based Monte Carlo error propagation.
Acknowledgements
The author wishes to thank Eric O. LEBIGOT who first developed the uncertainties python package (for first-order error propagation), from which many inspiring ideas (like maintaining object correlations, etc.) are re-used and/or have been slightly evolved. If you don't need second order functionality, his package is an excellent alternative since it is optimized for first-order uncertainty analysis.
References
- N.D. Cox, 1979, Tolerance Analysis by Computer, Journal of Quality Technology, Vol. 11, No. 2, pp. 80-87
Release files for soerp 1.0.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 | |
|---|---|---|---|
| soerp-1.0.0.tar.gz | 192.7 kB | Details |
Built distributions (wheels)
Total release size: 2.1 MB
Release files / soerp-1.0.0.tar.gz
| Download URL | soerp-1.0.0.tar.gz |
|---|---|
| Size | 192.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c4d8646762acfebd1e3e52ee1d283276f894f740214cb1110c22b9c88669b7a7
|
|
BLAKE2b-256 checksum How to use checksums |
d6b47c98fe3169b4edd3f2f066055168e01636f7fd06164f9ed33276d611752f
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315t-win_amd64.whl
| Download URL | soerp-1.0.0-cp315-cp315t-win_amd64.whl |
|---|---|
| Size | 71.7 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ad0392c3dd4f86eae49a30fe8768b7340d7e4464abb8188d4bc91d2d2a025039
|
|
BLAKE2b-256 checksum How to use checksums |
c710eb345f482d05aaf79842a7e68cae3bc8a541d5a777c379dc0ff19588fd9f
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315t-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp315-cp315t-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 59.7 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
2d6db270fd9bb452aefbbf7a2b8d46a3a4a2f4d69372633552ab4addca52d052
|
|
BLAKE2b-256 checksum How to use checksums |
dac0cf4699e89f5eb9dadf56ac517de96ac6aaf75497c9456e19419ddc988fdc
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 59.0 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
e68633ad41b6b78eea865fb2babee2c0e62b1d43541f2abbedc5794a43bf6464
|
|
BLAKE2b-256 checksum How to use checksums |
5764b009709800a0aaace5a0a6a185abaa11cccdc1b021a20dc4e5b599424bc1
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315t-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp315-cp315t-macosx_15_0_arm64.whl |
|---|---|
| Size | 54.5 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
d628f7b080c66305c22b4e6988f428894785cf7eea2d9753942a25b5ed4417a2
|
|
BLAKE2b-256 checksum How to use checksums |
13567e47261f2bee6e606175fca3330c01bfea484821653ebb4525fdaaf8cadd
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315-win_amd64.whl
| Download URL | soerp-1.0.0-cp315-cp315-win_amd64.whl |
|---|---|
| Size | 70.3 kB |
| Tags | CPython 3.15 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
cc91013314d9526e97ecf12287d2709614b68cbc7c73c03fd202c9260d68d932
|
|
BLAKE2b-256 checksum How to use checksums |
ae17e97c03382687571ebadeb1fd311c3745323983e2416bcfcf9c9d5b4d65e3
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp315-cp315-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 58.8 kB |
| Tags | CPython 3.15 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
f0ee4e9a07634b68c8c2daaf29b58080eee793c4639ef62d58f2398b1d1572ba
|
|
BLAKE2b-256 checksum How to use checksums |
8f8df880b93a9e248ef38f64ff957333181d0b002942c7ef130bcf1f2fe18d1e
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 58.3 kB |
| Tags | CPython 3.15 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
83167929eb7c5bb2af7885a35cb0bc11e7a09526d9e63653ce94bd3a8939fb7f
|
|
BLAKE2b-256 checksum How to use checksums |
9f2d3e845de7d4397b301ce39e903b7b0fcead2d1f757ed93c9bb5edda2d7277
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp315-cp315-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp315-cp315-macosx_15_0_arm64.whl |
|---|---|
| Size | 53.7 kB |
| Tags | CPython 3.15 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4137a09510185ee753a2067ffc7ab7eca44bcfe8a7c101f22e030bc905e02fd4
|
|
BLAKE2b-256 checksum How to use checksums |
f8ee2d3dd1e44593fbeccfb8daba3dd991544e5cda2640c9983d6656079ec834
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314t-win_amd64.whl
| Download URL | soerp-1.0.0-cp314-cp314t-win_amd64.whl |
|---|---|
| Size | 71.7 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5487285055e733f573bcb2c8995ff80c6ab88418c007af12bc53b601b2e2d2ac
|
|
BLAKE2b-256 checksum How to use checksums |
6135d7352cd2c1cca4aad528f8de8e6d0bd7c9c3c24437e4f59ae6323c49d688
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 59.6 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
cd05239a60927263a69651bcbaf3a98d6d4345ebf0f231ad8e5c6b97ecef947f
|
|
BLAKE2b-256 checksum How to use checksums |
45d7bea4e83cb622b6626b581e42f8a38d9b04fc7bb992ff1394d635b9824afe
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 59.0 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
088727059eb271535fd1db0bd25147e02d1a6400c9b263408857b7dbcc0e3afa
|
|
BLAKE2b-256 checksum How to use checksums |
9fc680828aeba9cae760fd4b08edf9bae96d6da38b823a814df6baeb959c1481
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314t-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp314-cp314t-macosx_15_0_arm64.whl |
|---|---|
| Size | 54.6 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e4859711babe9f8e882d44a328e7df7c69670a64fb53ffcbeb7f225b59f919ba
|
|
BLAKE2b-256 checksum How to use checksums |
da1fc8fdc80732904f82e5f4703016f2346f8dae5b0643f30e751d584ecd66f2
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314-win_amd64.whl
| Download URL | soerp-1.0.0-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 70.3 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8b6548fe1f8045d33879dd00bcc8e0f2495f93fac3155341e98ed3bbf382a7a2
|
|
BLAKE2b-256 checksum How to use checksums |
d68a8d52424b6fa3f9cb9861c17246cf5155c99c1006cddc42793bdf29e97411
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp314-cp314-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 58.8 kB |
| Tags | CPython 3.14 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
2df5513a34cbe8799f16d36fdcadf904df87d51eaa048811d6e388dceff49abd
|
|
BLAKE2b-256 checksum How to use checksums |
30999ed66a997b8df279fad7fa2a5e3907ecefdbf25baec8029d00e88a064eae
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 58.3 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d3d2d7d332d59d66711d2e98e459fada372713b82717e1a6da8e1bc9882d7ee7
|
|
BLAKE2b-256 checksum How to use checksums |
ef162f7d4134d0507edf76be3e8f0e9b92fd97bee7bca7dc057e31fd5cbf43a8
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp314-cp314-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp314-cp314-macosx_15_0_arm64.whl |
|---|---|
| Size | 53.7 kB |
| Tags | CPython 3.14 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
bed484f971868a1a35ec6fb4cc98d61caa427c5f52bf6acb3abace42860b5113
|
|
BLAKE2b-256 checksum How to use checksums |
5a7c52cd204f60b55e91ddfc5a02bfbc764d2a9e802f1e4beddf26547ffe3582
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp313-cp313-win_amd64.whl
| Download URL | soerp-1.0.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 68.9 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
79d6ae6a23e0e52fcbcfe0860f0e9cbe9824a99172363a4d0c908720d5a3211f
|
|
BLAKE2b-256 checksum How to use checksums |
ff6eeca49cc187b846fdf3421b4f92dc061b72a675c73aea6b6508ec8446f850
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp313-cp313-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp313-cp313-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 58.8 kB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
5389e36ec93b0212a955ffa2b30495bf41e1a7c76397d35aa34bf6f2e5f8c10b
|
|
BLAKE2b-256 checksum How to use checksums |
e229fe915860f07d70c2d0b6a82e9819c0231ce0f290063891218cc8ed28bf17
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 58.3 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
add28e3c811d4d4435001e661264bbbcb4c2fb68f688cacae93b4ddf89e9b510
|
|
BLAKE2b-256 checksum How to use checksums |
af4558ca07d8b4c076adcf45967a3d42ea85394798f9ee62f7fb5d900503e3b1
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp313-cp313-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp313-cp313-macosx_15_0_arm64.whl |
|---|---|
| Size | 53.7 kB |
| Tags | CPython 3.13 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
65b99ffd8083a2a366e6592fa7d5e6027613c57a82723936a2deea8f672ddb7f
|
|
BLAKE2b-256 checksum How to use checksums |
69c76841bb5544388aa335d118ff7865e322afe05a051a438fa16ac9d7a71a66
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp312-cp312-win_amd64.whl
| Download URL | soerp-1.0.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 68.9 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
a1ca0cfae61ab3501939a4661a42dfb326c84f7b117dd6100ae0d36ee1df56b1
|
|
BLAKE2b-256 checksum How to use checksums |
75481f2b6ef16274de7289c1fee348744e6363547de6d7244e0cdd81c7df78dd
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 58.9 kB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
c9f38c883bf80290c395f9cfd759d8543f98e12fcbdd4a7e740d6cc0a21393cb
|
|
BLAKE2b-256 checksum How to use checksums |
cd639df9291e00ba6b6630f114ac172a9c3d1fe2b255a327d4d8344796af3c23
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 58.4 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
97b50c3d0b747aee8216d352937b0b9d7799de31cf5f2dac5461a5f35f0f996f
|
|
BLAKE2b-256 checksum How to use checksums |
789ab57dde2d6ca776be56845f366cc87c0d2f2f69f4684d3506dcefe3379b90
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp312-cp312-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp312-cp312-macosx_15_0_arm64.whl |
|---|---|
| Size | 53.7 kB |
| Tags | CPython 3.12 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4e226a1c44537e94ca289fbc505bee91af5f329d47d59b51923c99f755666269
|
|
BLAKE2b-256 checksum How to use checksums |
8c72ef2360d44fee4b1ea927724075700b2064ab97f2034f00b514acd505699d
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp311-cp311-win_amd64.whl
| Download URL | soerp-1.0.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 68.6 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
200ccacbfcf8b02778af5a037fb85b10b008c45f0b9cb38d1447b3c93219df26
|
|
BLAKE2b-256 checksum How to use checksums |
b33accb309deda2c6c2d144c391cc9ee2a2f0fd48440cf97d2580e36408cf208
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp311-cp311-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp311-cp311-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 58.3 kB |
| Tags | CPython 3.11 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
34e4f158883e54cbccd77a7aa57b75d2bc0aae805bcfba0489a2374c89cd261b
|
|
BLAKE2b-256 checksum How to use checksums |
c38654fcefb6313e409d3b68170b73784a0835dbd8ae9a61e45496e187348417
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 57.8 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
a8d032964bef4da23bf8e9d0c2905391c26de6d03042880d7314e83fe3dc5743
|
|
BLAKE2b-256 checksum How to use checksums |
1cadbcf4875cbdc888e0d2ff0696eeec7b93e645317027a7b01aee22ebe5a97f
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp311-cp311-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp311-cp311-macosx_15_0_arm64.whl |
|---|---|
| Size | 53.3 kB |
| Tags | CPython 3.11 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
34860c8b4ce7724b994fe721c482a7a3ce04aded5da6dcaaf4454db48cabbb84
|
|
BLAKE2b-256 checksum How to use checksums |
92faf5c3ecc8ca630c0fcc0ddd0b84c93b80432bbfef754ea8ff502d8520021a
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp310-cp310-win_amd64.whl
| Download URL | soerp-1.0.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 67.2 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5691748f604d6ce262013f1c696a4d4d8dbdd8d537e0745ac1a1696b5461c995
|
|
BLAKE2b-256 checksum How to use checksums |
ff52ce364f89dd74c9ca4533789f997eb764fc9b4be2221faf1f4e363fa9c69b
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp310-cp310-musllinux_1_2_x86_64.whl
| Download URL | soerp-1.0.0-cp310-cp310-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 57.2 kB |
| Tags | CPython 3.10 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
90f3d88e5631087937ddd1c477c2ced6817fbd11b7eb857679a38145246b53dc
|
|
BLAKE2b-256 checksum How to use checksums |
aa059c858fad0c33fcfc115b0b1894a0212160c1db8b369b3a936db78d14d605
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | soerp-1.0.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 56.6 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
44e001790eb31582b9101c355a94c569164dbbb510ecc54e493b4c6861a6b4a7
|
|
BLAKE2b-256 checksum How to use checksums |
4a03520900100cebe50b1c3247ab3d844804cdc21e3342f297680d11bdb22eee
|
| 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 Aug 15, 2026.
Transparency logRelease files / soerp-1.0.0-cp310-cp310-macosx_15_0_arm64.whl
| Download URL | soerp-1.0.0-cp310-cp310-macosx_15_0_arm64.whl |
|---|---|
| Size | 52.7 kB |
| Tags | CPython 3.10 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
9410b78eb3c727ec10d6662ff72be7ecf832f6c02047194f0ccb4c62917e8553
|
|
BLAKE2b-256 checksum How to use checksums |
98de1549e55c6199ca7afe77bc53954591480e0b030c3d4fda463933950b9503
|
| 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 Aug 15, 2026.
Transparency log