Skip to main content

Sampling and Injection for Rare EveNts: A neutrino and rare-process injection toolkit

Project description

Build

SIREN

SIREN (Sampling and Injection for Rare EveNts) is a framework for injecting and weighting interaction final states of complex topology, with specific concern for the detector geometry. SIREN is designed to support a wide variety of neutrino experimental setups, including atmospheric neutrinos, accelerator beam decay-in-flight neutrinos, and neutrinos from decay-at-rest sources. SIREN grew out of LeptonInjector, a neutrino injection code developed within the IceCube collaboration to study atmospheric and astrophysical neutrino interactions in the IceCube detector.

SIREN provides a generic interface for user-defined BSM processes (and includes several pre-defined processes). It also supports generation of any number of secondary processes, e.g. the decay of a BSM particle after it has been created by an initial process.

Quick start

pip install siren

See Installation for other options, including building from source or as a C++ library.

The following example injects 1e4 muon-neutrino DIS events in IceCube and computes their physical weights:

import siren

# Load detector geometry and interaction cross sections
detector_model = siren.utilities.load_detector("IceCube")
primary_type = siren.dataclasses.Particle.ParticleType.NuMu
primary_processes, _ = siren.utilities.load_processes(
    "CSMSDISSplines",
    primary_types=[primary_type],
    target_types=[siren.dataclasses.Particle.ParticleType.Nucleon],
    isoscalar=True,
    process_types=["CC"],
)

# Configure the injector: energy spectrum, direction, and position
injector = siren.injection.Injector()
injector.number_of_events = int(1e4)
injector.detector_model = detector_model
injector.primary_type = primary_type
injector.primary_interactions = primary_processes[primary_type]
injector.primary_injection_distributions = [
    siren.distributions.PrimaryMass(0),
    siren.distributions.PowerLaw(2, 1e3, 1e6),
    siren.distributions.IsotropicDirection(),
    siren.distributions.ColumnDepthPositionDistribution(
        600, 600.0, siren.distributions.LeptonDepthFunction()
    ),
]

# Generate events
from siren._util import GenerateEvents, SaveEvents
events, gen_times = GenerateEvents(injector)

# Weight events using physical distributions
weighter = siren.injection.Weighter()
weighter.injectors = [injector]
weighter.detector_model = detector_model
weighter.primary_type = primary_type
weighter.primary_interactions = primary_processes[primary_type]
weighter.primary_physical_distributions = [
    siren.distributions.PowerLaw(2, 1e3, 1e6),
    siren.distributions.IsotropicDirection(),
]

weights = [weighter(event) for event in events]

# Save results to HDF5 and Parquet
SaveEvents(events, weighter, gen_times, output_filename="my_output")

More examples — including BSM dipole-portal injection and MARLEY low-energy interactions — are in resources/examples/.

How it works

A SIREN workflow has two phases: injection and weighting.

During injection, SIREN samples interaction vertices inside a detector geometry according to user-specified distributions (energy spectrum, direction, position). Each call to injector.generate_event() produces an interaction tree — a primary interaction and any secondary processes (e.g. the decay of a BSM particle produced in the primary interaction).

During weighting, SIREN computes a physical weight for each injected event. The Weighter takes the injection configuration and a set of physical distributions (the true flux and cross sections) and returns a weight that corrects for the difference between the injection and physical distributions. This importance-sampling approach allows a single injection run to be reweighted against different physical models without regenerating events.

Supported detectors

SIREN includes detector geometry definitions for the following experiments:

Experiment Model name
ATLAS ATLAS
CCM CCM
DUNE Far Detector DUNEFD
Hyper-Kamiokande HyperK
IceCube IceCube
KM3NeT/ORCA KM3NeTORCA
MINERvA MINERvA
MiniBooNE MiniBooNE
ND280 ND280
ND280 Upgrade ND280UPGRD
SINE SINE
UNDINE UNDINE

Each detector is defined by a materials file and a density profile. To load one:

detector_model = siren.utilities.load_detector("IceCube")

Contributions of new detector geometries are welcome.

Supported process models

Model Description
CSMSDISSplines Deep inelastic scattering (CC and NC) on nucleons, using photospline cross-section tables
MarleyCrossSection Low-energy neutrino interactions via MARLEY
DarkNewsTables BSM processes (dark photons, dipole portal, HNLs) via DarkNews — see example2
HNLDISSplines Heavy neutral lepton (HNL) production via neutrino neutral current deep inelastic scattering on nucleons, using photospline cross-section tables
DipoleHNLDISSplines Heavy neutral lepton (HNL) production via neutrino dipole-portal (i.e., via a transition magnetic moment) deep inelastic scattering on nucleons, using photospline cross-section tables

Supported flux models

Model Description
BNB Booster Neutrino Beam (FHC and RHC modes)
NUMI NuMI beamline (low-energy and medium-energy)
T2K_NEAR T2K near detector flux
HE_SN Supernova neutrino flux
Atmospheric A suite of atmospheric neutrino flux models

To load a flux model:

flux = siren.utilities.load_flux("BNB", tag="FHC_numu")

Installation

Python (pip)

pip install siren

Requires Python >= 3.8. Dependencies (numpy, scipy, awkward, pyarrow, h5py) are installed automatically.

For optional BSM support via DarkNews:

pip install siren DarkNews>=0.4.2

Python (from source)

git clone https://github.com/Harvard-Neutrino/SIREN.git
cd SIREN
pip install . --config-settings='build-dir=build'

C++ library

SIREN can also be built and installed as a standalone C++ shared library using CMake. This is useful when integrating SIREN into a larger C++ project.

Prerequisites

CFITSIO and SuiteSparse are required by photospline for reading cross-section spline tables.

Workspace layout

We recommend keeping source, build, and install directories separate. A typical workspace looks like:

workspace/
├── env.sh              # environment setup script
├── local/              # install prefix
│   ├── bin/
│   ├── include/
│   └── lib/
└── sources/
    ├── SIREN/
    │   └── build/      # out-of-source build directory
    └── (other projects that depend on SIREN)

Environment setup

Create an env.sh script that configures your compiler and paths. This script should be sourced before building or running anything in the workspace.

#!/bin/bash

export WORKSPACE=/path/to/workspace
export PREFIX=$WORKSPACE/local

export CC=gcc
export CXX=g++

export PATH=$PREFIX/bin:$PATH
export LD_LIBRARY_PATH=$PREFIX/lib:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=$PREFIX/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=$PREFIX/include:$CPLUS_INCLUDE_PATH
export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH
PY_SITE_DIR="$(python3 -c 'import sysconfig; print(sysconfig.get_paths()["purelib"])')"
export PYTHONPATH="$PY_SITE_DIR${PYTHONPATH:+:$PYTHONPATH}"

On macOS, use DYLD_FALLBACK_LIBRARY_PATH instead of LD_LIBRARY_PATH.

Build and install

source env.sh

git clone https://github.com/Harvard-Neutrino/SIREN.git $WORKSPACE/sources/SIREN
cd $WORKSPACE/sources/SIREN
git submodule update --init

mkdir -p build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$PREFIX
cmake --build . --parallel && cmake --install .

After the initial build, only the last line (cmake --build . --parallel && cmake --install .) needs to be rerun when source files change. Rerun the first cmake step if CMakeLists.txt files change or new source files are added.

CMake options

Option Default Description
CMAKE_INSTALL_PREFIX Install destination for libraries, headers, and binaries
SIREN_PYTHON_PACKAGE ON Build and install the Python package
SIREN_WITH_MARLEY ON Enable MARLEY support (used if found)
SIREN_REQUIRE_MARLEY OFF Fail the build if MARLEY is not found

Dataset download

SIREN uses external datasets that need to be downloaded separately, including neutrino flux models and cross-section tables. To do this, after installing SIREN , run the following commands:

siren-download --processes
siren-download --flux

These commands will download the necessary datasets to the resources/processes and resources/fluxes directories in the SIREN installation.

Project structure

SIREN/
├── projects/              # C++ source modules
│   ├── utilities/         # Interpolation, random numbers, string utilities
│   ├── serialization/     # Serialization support
│   ├── math/              # Vector3D, Matrix3D, Quaternion, interpolation
│   ├── dataclasses/       # Particle, InteractionRecord, InteractionTree
│   ├── geometry/          # Geometric primitives and operations
│   ├── detector/          # Detector geometry and density profiles
│   ├── interactions/      # Cross section and decay implementations
│   ├── distributions/     # Probability distributions for sampling
│   └── injection/         # Injector and Weighter
├── python/                # Python API (Injector, Weighter, utilities)
├── vendor/                # Vendored dependencies (git submodules)
│   ├── cereal             # Serialization
│   ├── delabella          # Delaunay triangulation
│   ├── googletest         # Unit testing
│   ├── pybind11           # Python bindings
│   ├── rk                 # Relativistic kinematics
│   ├── photospline        # B-spline cross-section tables
│   └── NamedType          # Type-safe wrappers
├── resources/
│   ├── detectors/         # Detector geometry definitions
│   ├── fluxes/            # Neutrino flux models
│   ├── processes/         # Cross-section and decay data
│   └── examples/          # Example scripts and notebooks
└── cmake/Packages/        # CMake find-modules for dependencies

Contributing

Create a branch off of main named $GitHubUsername/$YourSubProject. When your changes are stable, pull from main and open a pull request.

Citing SIREN

If you use SIREN in your research, please cite the repository:

https://github.com/Harvard-Neutrino/SIREN

License

SIREN is licensed under the GNU Lesser General Public License v3.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

siren-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl (11.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

siren-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl (11.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

siren-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

siren-0.1.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (9.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

siren-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (9.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

siren-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl (9.9 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

siren-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl (11.9 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

siren-0.1.0-cp311-cp311-musllinux_1_2_aarch64.whl (11.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

siren-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

siren-0.1.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (9.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

siren-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (9.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

siren-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl (10.0 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

siren-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl (11.9 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

siren-0.1.0-cp310-cp310-musllinux_1_2_aarch64.whl (11.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

siren-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

siren-0.1.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (9.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

siren-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (9.5 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

siren-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl (10.0 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

siren-0.1.0-cp39-cp39-musllinux_1_2_x86_64.whl (11.9 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

siren-0.1.0-cp39-cp39-musllinux_1_2_aarch64.whl (11.1 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

siren-0.1.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

siren-0.1.0-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (9.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

siren-0.1.0-cp39-cp39-macosx_11_0_arm64.whl (9.5 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

siren-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl (10.0 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

siren-0.1.0-cp38-cp38-musllinux_1_2_x86_64.whl (11.9 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

siren-0.1.0-cp38-cp38-musllinux_1_2_aarch64.whl (11.1 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ ARM64

siren-0.1.0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

siren-0.1.0-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (9.8 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

siren-0.1.0-cp38-cp38-macosx_11_0_arm64.whl (9.5 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

siren-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl (10.0 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file siren-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6dc1dd7312f961435075a726955b102e088a9d02497e4f10c3d97482916a294b
MD5 8279cdffb0263a260fedfcaaf863d255
BLAKE2b-256 a33fee1f3d38193ea6bc9ef3b3c2d3753f4345406f7c2b6c8e7599ce9be5a21e

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 158d7d3a257346690e03b87dd4d65df0748983c29263ed7f67ebee89befabb34
MD5 fe679b8e29b197c59ba9182bde52ce40
BLAKE2b-256 97c70592221c2a147fdc626f2e7cc56a47ac19343c3885d3b5c01d8dfd9a623c

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5c710286dad3420dec7fcb7497b39916ff75c3808d33aab3fbaec6c0243e8603
MD5 f68e2b36219f8c1450285b713a0cc58b
BLAKE2b-256 08f7722c1c9765030d14ffc0321ab470d35af2f0224e282524291edc97f1098a

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f95c85cfb25abd6ad5f59d853ec6ef4abbe69551edb462a500b4e4f9fac4f326
MD5 97f0dc33e14ce8b72a7baec31b8c5f05
BLAKE2b-256 7cf2a39cdde55cd371e13a5b0b0b8723b700766c6bd84044a000494c15681cb9

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fa61de235f4243d2531699e3103d2512e90503c927d645773fec5bd6279ca58e
MD5 570f5d49e73b1a114be6eb8643cd2c36
BLAKE2b-256 f5688c925014f9ffaddc05265ba9beb6446b59d1f3197b2d3c113de43774464f

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 bb6bd030bdad1dcb7f4a243bfc9af7a5aea2ce246cbf9d892bb80009067cccb4
MD5 41fe9a02882cacd796707968b7617660
BLAKE2b-256 85b12126a778ded1de4009cb7efdf3afff5c92d1382de652a49758515a61f5f2

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0f1ce5fbc768b3b5edcb3c5ba8bb8c09f237bd78cf2a92365be8401337a1a8fe
MD5 3e1ab9ddbb97d360d5365a3f1d52d9b3
BLAKE2b-256 4b86e8ac0d8f3d994074057a84b6427a6efda08adc7579aaf5fbb91804bdbb35

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2f7253c472137dbd7556810b826bd15143c09ef6e886b921558e6226109c79e3
MD5 ba049c61ab7996233200352ea0d6f6cf
BLAKE2b-256 91845fd94d1ac44884141f1281465611d83856a1bf6d97004e7515a0a8eeb490

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 62319c9956f7ebfd9e39d99b7e1f6ab358bdcd13794e885c81b5b615d90fd578
MD5 810ff18c62023f2b0382d81064447576
BLAKE2b-256 f17f1ff9fa4581837ab1664881af2f6e93f6fe44a5b96742a6453b41d7d19d5c

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 352192aa0fd375ad2ad4cadfc2c2028a639c6b33606c8357e71f2ee664d00466
MD5 a6574cb48f143d280b3aef7622543ac2
BLAKE2b-256 0b29cb161bd60f7b86728fb0f4fdd8570b7643790292630c06dd2f5c7142136d

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ce0652c640fd82fcbe937117075a8bd96258ca423a9f987544fb146d6727d191
MD5 73066ebfbf6f14287213b6091a2fa1f8
BLAKE2b-256 12e040dccb1db9d4049b797d82c1ea99c7eb56e8d4c266e8e4ee3575fc8a74ba

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f69f1d43d3d43e73515ab48d663e2248c08c4e87532e7d7a3df5bcfd6be599c1
MD5 407cffc6f9a186df085c0f1e2ee791ee
BLAKE2b-256 5808c30be33cd6decd2341738456d44368d5906ee3f6c72c92382218ede5830c

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cf5c1cade816cb779dbd1b4a60df699992e0242f6ce0926774a4c029decec870
MD5 b786aafcdf32f67521c2c84a89dd0ad3
BLAKE2b-256 c09478028e77fc5dc690dbfca4576d42f7e4e5638bcad918a340b1a27a497540

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7d1fe4e7c330892444a7bac40afb73dec6ba4b6752a14df7a2fb362e7693826c
MD5 2a06a1090c713455351aa13a7f547a15
BLAKE2b-256 82866d20385f759bc74c127f19a4f97d12753bafc98bdb47c847d5b92087e63f

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 523b9447ed6b12ea355b83a83beb74f1ea13406edc97e3333a63828ef698a14b
MD5 da302fabb8857ef06cf6fe786d575b6c
BLAKE2b-256 5abd4f44821d65c33ae9d300444b2cc83e6e3087c9eeebda5076d056e1822385

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cd87f98b4934c4e5f6013cdbfc0b758a6e7ee58296039a8cb494b9d80cdfed72
MD5 4f783a66b82781e91e344fac30ab93b4
BLAKE2b-256 2ff0323438ee3a9e0ba43cb2917e38587b9e20b4949c9fd469f8290d74cc0a08

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a46cfe9373c0f9bbb61ae01cae7d79bbf064372250815120b18f08cd1419b316
MD5 3053df8cbb3bf6ab3630e7fe8487eeb0
BLAKE2b-256 52b38bfdcf1457b5b4bf0444e7b3c2e6b54ac8a7b6d77b3946aeadf537f0cfe5

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a3e8a31019cc71fdddfb31b8aa02c2c3ea7401d58c3a1b0b03495e1fcf1b414d
MD5 d2caa39adfc0549b98a5fef9355b0acd
BLAKE2b-256 e795076ab18ba19bc26c08c25777723d20e3ef5a3587efaca975deed7e9dcd68

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 32db60c87fc72fda30662acc0ee6022c5fcbb25930d341c87d8b2988042d46eb
MD5 33e4bf6d22ea9aedbbdd831b94157bb9
BLAKE2b-256 0f30090f6e479df5ea2f671672e910690be9fee7c8d2e2bfce189f50cf596140

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 992d625a65f785b3036777db4f0c1b85f44fad388c8a7149dd1e8e5621834d8d
MD5 454624483897fe048452ae86ee01be15
BLAKE2b-256 7d09d3bf10e5688f1b8b7d518d3015337ce8eda215ead1fed332159980163bfb

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 71268defd10e178b112e07c4f6a12aeb89c87a4d28595d3806a937a0058939b0
MD5 640440316c3adde736b253372879e822
BLAKE2b-256 f0db4bdd801b3fc0c1a571b33399e70e6557801cf144120d995a676de8f3fa05

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8b46e5815812fa1bd0fa01e77f96cda065a23b913cb0dcf88ee0828685a8d4c9
MD5 f0d8b899bbc6b004e092695b9c73fac5
BLAKE2b-256 f115332fdcb642a20c01b15cc09f2e6d5c96b7ae4ea3b0ff4166e3c92ebd0173

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c80f66bb56066adfc9f1ff4a6add62341ffafcda6d16e77bfb94f0e0a46e046
MD5 4881407266bee230e8771cd53c5fbc42
BLAKE2b-256 f34477e8cdbe827f769612d18a7f55ed0fe0664a9ec41def788c6cce190fe6d4

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c0265a1a741e1ada0e80305027d12fe6feb845a6acabe1c8c43cbea9aa6ec9c3
MD5 8e7e5d3e37fd54f1eb581a050f78e068
BLAKE2b-256 4cbec78d02f59d7dcd5cc501e746ef1b29e897e60766a58735c8aa3df0077299

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d58600fb0e63b27df2d6c96855abc475e0d10134ea5020bddb14cba9aa340b45
MD5 903d06b090070b77abab4aa64a25a209
BLAKE2b-256 39521877a03a4180990235dafbfc329310bef2438cfb5a8ad0860abc519441d7

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp38-cp38-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp38-cp38-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 71f846f18ca140f94dcc275038dc7227ce150a1a0b121fa74ae3110c4503cd81
MD5 e8c6e6295e72caf1d5c6b90ce3e0ae0c
BLAKE2b-256 ec6e45f41a3dd8b8879bf71ae3a8de0c8a4ae886a09da165f9f29f988a394e58

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d01dcf982f8548d9f53ba859f19a74f54ddf6452a3cdf0f2603bdfb92f7e52cc
MD5 f547fb56f8f15242779dd6b9e4fb6c5f
BLAKE2b-256 8590b49d55749731d0ff477e2ec25e068bfb405f9a71715e464b0ac92437ffd2

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c2938f796327701beeb5b570d0308f91e92302664c91ce0e3db38ca47bc235d9
MD5 a6ffa1243a8aaa5d3b990afc6c082f86
BLAKE2b-256 4b1c1facd10bc2da235712c34195e73475edb6c7abb7de14a6ebff8f59772678

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b9f9b97cdc9fe6542279b4b07bbed1a7c73fc9926bbf99ebc3036f9264343549
MD5 a2155a7ad0af832ac0c237c4bad8e4d9
BLAKE2b-256 cd22ccfa423189d351bf62c258a955a34421637056fc91a8010c0607899ead7d

See more details on using hashes here.

File details

Details for the file siren-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for siren-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 84b6afb57d5de397c001c52b4fbf061d7b6fe8f442ee23fe6c4b8fdbecae2dad
MD5 afc39f745b443adefde33447ff6dc1e6
BLAKE2b-256 c20755057b7398e5f0bd48aabe8c863d478b48388c584a2922976b8cf61bb464

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page