SkyLLH
Quick links
Description
The SkyLLH framework is an open-source Python-based package licensed under the GPLv3 license. It provides a modular framework for implementing custom likelihood functions and executing log-likelihood ratio hypothesis tests. The idea is to provide a class structure tied to the mathematical objects of the likelihood functions, rather than to entire abstract likelihood models.
Installation
Python >= 3.11 is required.
Using pip
The latest skyllh release can be installed from
PyPI repository:
pip install skyllh
Optional dependency groups can be installed with extras:
pip install "skyllh[extras]" # iminuit, pyarrow
pip install "skyllh[dev]" # pre-commit, pytest
pip install "skyllh[docs]" # sphinx and doc-build tools
The current development version can be installed using pip:
pip install git+https://github.com/icecube/skyllh.git
Optionally, a specific reference can be installed by:
pip install git+https://github.com/icecube/skyllh.git@[ref]
where [ref] is a commit hash, branch name, or tag.
Using conda
conda install -c conda-forge skyllh
Publications
Several publications about the SkyLLH software are available:
- IceCube Collaboration, C. Bellenghi, M. Karl, M. Wolf, et al. PoS ICRC2023 (2023) 1061 DOI
- IceCube Collaboration, T. Kontrimas, M. Wolf, et al. PoS ICRC2021 (2022) 1073 DOI
- IceCube Collaboration, M. Wolf, et al. PoS ICRC2019 (2020) 1035 DOI
Developer Guidelines
These guidelines should help new developers of SkyLLH to join the development process easily.
Pre-commit hooks
This repository uses pre-commit to run ruff for linting and formatting on every commit.
Install pre-commit and set up the hooks:
pip install pre-commit
pre-commit install
The hooks will now run automatically on git commit. To run them manually against all files:
pre-commit run --all-files
Branching
-
When implementing a new feature / change, first an issue must be created describing the new feature / change. Then a branch must be created referring to this issue. We recommend the branch name
fix<ISSUE_NUMBER>, where<ISSUE_NUMBER>is the number of the created issue for this feature / change. -
In cases when SkyLLH needs to be updated because of a change in the i3skyllh package (see below), we recommend the branch name
i3skyllh_<ISSUE_NUMBER>, where<ISSUE_NUMBER>is the number of the issue created in the i3skyllh repository. That way the analysis unit tests workflow will be able to find the correct skyllh branch corresponding to the i3skyllh change automatically.
Releases and Versioning
-
Release version numbers follow the format
v<YY>.<MAJOR>.<MINOR>, where<YY>is the current year,<MAJOR>and<MINOR>are the major and minor version numbers of type integer. Example:v23.2.0. -
Release candidates follow the same format as releases, but have the additional suffix
.rc<NUMBER>, where<NUMBER>is an integer starting with 1. Example:v23.2.0.rc1 -
Before creating the release on github, the version number needs to be updated in the Sphinx documentation:
doc/sphinx/conf.py.
i3skyllh
The i3skyllh package provides
complementary pre-defined common analyses and datasets for the
IceCube Neutrino Observatory detector in a private
repository.
Contributors
Metadata
Release files for skyllh 26.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| skyllh-26.1.0.tar.gz | 1.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| skyllh-26.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.5 MB
Release files / skyllh-26.1.0.tar.gz
| Download URL | skyllh-26.1.0.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
51974a62cb87d2aad071175e80ab5d79d3437357cb52e5d0f0762cb7a5587d8b
|
|
BLAKE2b-256 checksum How to use checksums |
85fa03c66a8ee9485195e233cf9040ce426a43dddcdd34cecec8eaa18eb64e48
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / skyllh-26.1.0-py3-none-any.whl
| Download URL | skyllh-26.1.0-py3-none-any.whl |
|---|---|
| Size | 389.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
92cca0fb79b4b004c37b9f41543cfa79795362194f681d7160a57e74458697b6
|
|
BLAKE2b-256 checksum How to use checksums |
957196824e39c1f93a95b1e86492d06dda97b4be3853bcc3d1b910e277296269
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|