NRHJSur3dq8
A surrogate model for gravitational waves from non-eccentric, aligned-spin binary black hole mergers, trained on numerical relativity.
It is built on a Hamilton-Jacobi (action-angle) representation of the binary dynamics: the orbital phase rather than time is the independent coordinate, so simulations of different lengths simply occupy different phase ranges. The waveform is carried in hp-adaptive spectral elements and evaluated either in NumPy or through a compiled Kokkos kernel.
Documentation: https://psu-edu.github.io/nrhjsurrogate/
Range of validity. Non-eccentric orbits, mass ratio 1 to 8, aligned spin components within 0.8 in magnitude. Seven modes: (2,2), (2,1), (3,3), (3,2), (4,4), (4,3), (5,5).
Install
pip install nrhjsurrogate
Every dependency resolves from PyPI, and that line already gives you the compiled multi-threaded evaluator where a wheel is published:
| interpreter | platform | what pip install nrhjsurrogate gives you |
|---|---|---|
| 3.10 – 3.14 | Linux x86-64 (manylinux_2_28) | a wheel: compiled Kokkos, OpenMP on |
| 3.10 – 3.14 | macOS arm64 (Apple Silicon, 14+) | a wheel: compiled Kokkos, OpenMP on, libomp bundled inside it |
| 3.10 – 3.14 | Windows x64 | a wheel: compiled Kokkos, OpenMP on |
anything else (3.15, free-threaded 3.14t, Intel Mac, Linux aarch64, …) |
the source distribution, compiled on your machine |
Where no wheel matches, pip falls through to the source distribution and
compiles it for you, fetching Kokkos if the system does not have it; that
needs a C++17 compiler, and on macOS an OpenMP runtime (conda install -c conda-forge llvm-openmp, or brew install libomp). If the compile cannot
run the install still succeeds, falls back to NumPy, and says so.
You do not need --no-binary to get the compiled backend. Three reasons
to ask for a source build anyway: -march=native, worth 8-17% end to end and
deliberately not used in the portable wheels; the CUDA backend; or an
unshipped platform, which pip picks by itself. When you do compile, pin both
switches so a missing OpenMP is a loud error rather than a quietly
single-threaded build:
NRHJ_BUILD_KOKKOS=require NRHJ_BACKEND=openmp \
pip install --no-binary nrhjsurrogate nrhjsurrogate
NRHJ_BACKEND=cuda NRHJ_CUDA_ARCH=sm_75 \
pip install --no-binary nrhjsurrogate nrhjsurrogate
NRHJ_BUILD_KOKKOS decides whether to compile, NRHJ_BACKEND decides
what: auto (default) takes OpenMP when the compiler has it, numpy
skips the compile, serial forces single-threaded, openmp makes a missing
OpenMP a build error instead of a silent Serial build, cuda adds the device
backend and needs NRHJ_CUDA_ARCH. Neither has any effect on a wheel
install, because nothing is compiled. After any install,
python -m nrhjsurrogate.compiled_backend says what you actually got, the
first import says it once by itself, and nrhjsur-bench --quick prints
Kokkos OpenMP: ON or OFF in its header. See INSTALL.md
sections 1b, 3 and 5 for the detail.
The model files are not in the package. They are distributed separately
and located at run time, in order: an explicit path, then $NRHJ_MODEL_DIR,
then the directories on $LAL_DATA_PATH, then a per-user cache. A miss
raises FileNotFoundError naming the file, its SHA-256 and how to get it.
Nothing degrades silently. If nothing on that list has a released model you
named, the package downloads it into the per-user cache and checks its
SHA-256 before using it; NRHJ_AUTO_FETCH=0 turns that off, and
nrhjsurrogate.fetch_model does the same thing explicitly.
A first waveform
from nrhjsurrogate import NRHJSurAA
model = NRHJSurAA.load_h5("NRHJSur3dq8_AA_v3")
# geometric units: time in M, modes as r h_lm / M
times, modes = model.get_td_waveform_modes_geometric(4.0, 0.3, -0.2)
# physical units, LAL spelling: the two polarizations
h_plus, h_cross = model.get_td_waveform(
mass1=40.0, mass2=10.0, spin1z=0.3, spin2z=-0.2,
delta_t=1.0 / 4096.0, f_min=30.0, inclination=0.7, distance=400.0)
Then check the installation against shipped reference values:
nrhjsur-verify
Beyond waveforms the model serves analytic parameter derivatives, its own
predictive uncertainty, post-Newtonian extension below the stored inspiral,
the orbital dynamics and the remnant mass and spin. The runnable examples in
examples/usage/ take one capability each, and 00_walkthrough.ipynb is a
guided tour of the main ones.
The public import surface
Everything you are meant to use is importable straight from the package:
from nrhjsurrogate import NRHJSurAA (and NRHJSurAdA, AABatch,
AAHMCLikelihood, InnerProduct, fetch_model, and more; dir(nrhjsurrogate)
lists them). The submodule layout underneath, driver/, physics/,
execution/, numerical_methods/, is internal and may be rearranged in any
release. Import from the top level and a reorganisation cannot reach you;
import nrhjsurrogate.driver.something and it can.
Importing the package also sets OMP_PROC_BIND=close and OMP_PLACES=cores
unless you have chosen otherwise; INSTALL.md gives the measured basis, the
caveats and the off switch.
What is released
Two model flavours, both 3dq8, meaning aligned-spin (q, chi1z, chi2z) with
q up to 8, matching the NRHybSur3dq8 convention. Both are built on the
N2 numerical-relativity extrapolation, which the names do not encode and
each file records as the root attribute extrapolation = "N2".
| file | what it is |
|---|---|
NRHJSur3dq8_AA_v3 |
action-angle inspiral. The default. |
NRHJSur3dq8_AdA_v3 |
adiabatic-angle inspiral, 14 elements |
NRHJSur3dq8_MR_v3 |
the merger-ringdown arm both v3 inspirals name |
NRHJSur3dq8_AA_v2 |
previous generation |
NRHJSur3dq8_AdA_v2 |
previous generation |
NRHJSur3dq8_MR_v2 |
previous generation |
The inspiral files are de-embedded: each composes at load with the shared merger-ringdown arm it names, resolved by name and checked by content digest, so a crossed pair is refused rather than served. The version digit is the generation, not a patch level. Both generations are deposited; v3 is the default and v2 still loads by name.
The two flavours agree closely, and not by coincidence: the coordinates that give the adiabatic-angle model its structure were identified from the action-angle model's post-Newtonian normalizer.
How it works
- Slow variables. Each waveform is decomposed into a fast angle variable (the orbital phase) and slowly evolving action-like variables (a frequency parameter, co-orbital-frame amplitudes). The orbital phase, not time, is the independent coordinate.
- Frames and conventions. SXS extrapolated strain, centre-of-mass
corrected, output in LAL conventions, round-trip validated against
NRHybSur3dq8through LALSimulation. - Domain decomposition. Spectral elements both across the parameter space and along the phase coordinate, with a dedicated merger-ringdown element where adiabaticity breaks.
- Spectral representation. Chebyshev elements in phase, with regression onto spectral bases over the scattered simulation parameters. Accuracy is controlled by h- and p-refinement.
- Compiled evaluator. The evaluator is a Kokkos C++ kernel batched over parameter points and exposed through pybind11.
- Variable lengths. Handled natively by the phase coordinate and the element decomposition: elements exist only where data exists.
Scope of the distribution
The distribution ships evaluation code only: what turns a frozen model file into a waveform, and nothing that builds one. There is no public source repository. The code is distributed through PyPI and the model files through Zenodo, https://doi.org/10.5281/zenodo.22262339.
Licence
From version 1.1 this software is dual-licensed:
- Noncommercial use — research, teaching, personal projects — is free and needs no permission, under the PolyForm Noncommercial License 1.0.0 with an additional term on machine-learning training. See LICENSE.
- Commercial use requires a separate licence, available from the author on request. See NOTICE.
Using the source or documentation as training data for general-purpose code or language models is not permitted. Building an emulator or reduced-order model of the waveforms this software produces is ordinary research use and is fine — see NOTICE for the distinction.
Citation metadata is in CITATION.cff; please cite the paper.
Metadata
Release files for nrhjsurrogate 1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nrhjsurrogate-1.5.tar.gz | 2.4 MB | Details |
Built distributions (wheels)
Total release size: 40.5 MB
Release files / nrhjsurrogate-1.5.tar.gz
| Download URL | nrhjsurrogate-1.5.tar.gz |
|---|---|
| Size | 2.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5bf440d306d9427db823f8302da7dfd2e2fa553b53ec818d06460bdd603d1f05
|
|
BLAKE2b-256 checksum How to use checksums |
6409ec2a77dacebc67f51d3c2e85d4069f6f3a778b546aefafd783b4daba0667
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp314-cp314-win_amd64.whl
| Download URL | nrhjsurrogate-1.5-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5c49288dfac0ea1f392dd914bd9922394d223515325c5cfc0e57afd480671d89
|
|
BLAKE2b-256 checksum How to use checksums |
c357ae2b63a185f5587e30856b5a164d5ee84172109ad0dd52c5b1b113eacee8
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | nrhjsurrogate-1.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
4c7288c38ee3b236f6162c74d2948c42a788293ba98f9d645747531167eab648
|
|
BLAKE2b-256 checksum How to use checksums |
94352cb37b6ab31a0d100507b8bac560167846c78e5e5900a27e6260dd48b6b7
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp314-cp314-macosx_14_0_arm64.whl
| Download URL | nrhjsurrogate-1.5-cp314-cp314-macosx_14_0_arm64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.14 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
c159887ace7b092cfb2ffa4876390ddf8fdb885f0093ec09faa89d557fcdb091
|
|
BLAKE2b-256 checksum How to use checksums |
eb21699ec8e18e1aa7df64493987f05a0b317af298ac20e33c4d924dab0b47ae
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp313-cp313-win_amd64.whl
| Download URL | nrhjsurrogate-1.5-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 2.6 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
7a7e9f20e137be38f904179fead66bf04b48e167ef78d764cfe28950792944fe
|
|
BLAKE2b-256 checksum How to use checksums |
9e5d35070b33acf99009fdfdf3d81dd40f9e1481c552f558419710ec3d50b51a
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | nrhjsurrogate-1.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
086b1003874cca84e4f6177f313ffc958c29de67e3a785f97815541b64da7e15
|
|
BLAKE2b-256 checksum How to use checksums |
c8d111e5dd521027ecdf3861cc5796a176963c3ecb61e7baf081d7fd71cea517
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp313-cp313-macosx_14_0_arm64.whl
| Download URL | nrhjsurrogate-1.5-cp313-cp313-macosx_14_0_arm64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.13 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8259e3b3e7e6a46531e86a8caeeac48f368fc9d8af33479206caf46e2ce5420b
|
|
BLAKE2b-256 checksum How to use checksums |
964fad0e6aeff3f8b428ee54ff6ba806bead5038be57d1321641ee822bb69c5c
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp312-cp312-win_amd64.whl
| Download URL | nrhjsurrogate-1.5-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 2.6 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
46a2b07be04a8cc39da845082d39315a45399e72eb726e5394bc6daec27ec60c
|
|
BLAKE2b-256 checksum How to use checksums |
dd886045bcd3bf29a28a3a1a9956a069c5e98a87c559afc703ac3cd4f21127aa
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | nrhjsurrogate-1.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
6d8d3faf0c202c1fac6a5b1ce2c49535b1315f878534f514ac33cd623b4b6fc7
|
|
BLAKE2b-256 checksum How to use checksums |
7827b1585fc0f89a97e88c5b1c1af8c902f3df8197f14e7d7ce0207cc70e431b
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp312-cp312-macosx_14_0_arm64.whl
| Download URL | nrhjsurrogate-1.5-cp312-cp312-macosx_14_0_arm64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.12 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a8d8acb18f0c9c69415a10f79d99f91325d31aad7665d7d5979faba08bc3b4d6
|
|
BLAKE2b-256 checksum How to use checksums |
8463ef0a5bc2cb788dffe315398f8e04412de6504eb72efb5b8447ba06f89ef4
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp311-cp311-win_amd64.whl
| Download URL | nrhjsurrogate-1.5-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 2.6 MB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8c3924618b6951ef07a806c10e99580ac8e50d5ba8b737f4c5e45a3f2d15a094
|
|
BLAKE2b-256 checksum How to use checksums |
6abdfe40311860de319df7a79c5fe9074e0cfe3b7c1483b33119a4163af5a060
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | nrhjsurrogate-1.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
edc6d80b33367a0ec4f11a1460a29924a304cee06dc11c9b21da7e04f0cb5a76
|
|
BLAKE2b-256 checksum How to use checksums |
60c4c3b8fbc563623241e50e0459b547235cdf0644450070205e52fafc5573bf
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp311-cp311-macosx_14_0_arm64.whl
| Download URL | nrhjsurrogate-1.5-cp311-cp311-macosx_14_0_arm64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.11 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
164d475abdcb0422ac47fb0e1ac855ccb4fcb09eb979fff0788a7d57ee719377
|
|
BLAKE2b-256 checksum How to use checksums |
933e8ab593f15528175c4fb0ed87d390e68f93049b810f55f8472d5132f41248
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp310-cp310-win_amd64.whl
| Download URL | nrhjsurrogate-1.5-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 2.6 MB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
a72f113eebe33fcb976a3a9136144a90830b9140edc28f96e53d5f2ae5ecf54e
|
|
BLAKE2b-256 checksum How to use checksums |
cc353ca948eb1828625a6cab7a82f68dcc7d329d18f35d1f4c34541594b12ac5
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | nrhjsurrogate-1.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
dca37a27cc37e2de5c0c3e3964d35d0d1f3c7a9a4146c7ea707b0732f2a17334
|
|
BLAKE2b-256 checksum How to use checksums |
fa7a3c031af191ab06739b37f3d57159aca24788a52b27baebe1a5d039a40728
|
| 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 15, 2026.
Transparency logRelease files / nrhjsurrogate-1.5-cp310-cp310-macosx_14_0_arm64.whl
| Download URL | nrhjsurrogate-1.5-cp310-cp310-macosx_14_0_arm64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | CPython 3.10 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
ec1595d7328477205fa78ff68ac29f0471b921824dbba8e04a5536715c3d6c93
|
|
BLAKE2b-256 checksum How to use checksums |
e9aba6f247a31c5d2d9cb520ddd32d4c555a6c75abd4aa1dee64dea3d5f0129b
|
| 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 15, 2026.
Transparency log