Tutorials¶
The tutorials below walk through common SkyLLH analysis tasks using IceCube public data. They progress from a basic steady-state point-source fit to more specialised techniques.
The tutorials support both the 10-year (IceTracks-DR1) and the 14-year (IceTracks-DR2) IceCube public point-source datasets. They are automatically downloaded from dataverse.harvard.edu to a local cache directory (~/.cache/skyllh). To use custom dataset locations, set the cfg['repository']['base_path'] to the desired path.
To load respective datasets:
import skyllh
from skyllh.core.config import Config
cfg = Config()
datasets = skyllh.create_datasets('IceTracks-DR2', cfg=cfg)
or
datasets = skyllh.create_datasets('IceTracks-DR1', cfg=cfg)
Additional information about the IceCube public datasets can be found in the following references:
IceTracks-DR1: IceCube Collaboration, “IceCube Data for Neutrino Point-Source Searches Years 2008-2018”, arXiv:2101.09836 (2021)
We provide an incomplete list of tutorials below. They are meant to illustrate how to perform a time-integrated point-source analysis using SkyLLH, but they are not exhaustive. We encourage users to explore the documentation and contribute additional tutorials covering other analysis types and techniques.
- Fitting a steady point-source with the public 14-year IceCube track data
Fit a steady point source (NGC 1068) using IceCube 14-year (IceTracks-DR2) public track data. Covers loading datasets, maximising the log-likelihood ratio, computing the test statistic, and deriving flux normalisations. Also demonstrates converting between mean signal event counts and flux normalisations.
- Dataset collections
Introduces the concept of dataset collections, which are used to manage multiple datasets in a unified way. Covers loading datasets, inspecting available datasets, and accessing individual datasets.
- Fixing the Spectral Index
Repeat the point-source fit with a fixed (non-free) spectral index.
- Setting an energy range for the signal injection
Set a user-defined energy range for the signal injection. Illustrates the distinction between the signal-injection energy range and the likelihood hypothesis energy range.
- Sky scan
Produce a 2-D test-statistic map by scanning source positions on a sky grid around a candidate source. Visualises best-fit position and confidence contours using Wilks’ theorem.
- Likelihood scan
Scan the log-likelihood ratio over a 2-D grid of flux normalisation and spectral index. Produces confidence contours in the gamma-flux parameter space.
- Significance/p-value calculation
Compare two methods for computing a local p-value from a test statistic: generating background-only trials versus fitting a truncated gamma distribution to the TS distribution.
- Sensitivity and discovery potential
Estimate sensitivity and discovery potential for a point source. Demonstrates the analysis construction and how to convert signal counts to flux.
- Time dependent analysis
Perform a time-dependent point-source analysis. Uses the Expectation-Maximisation (EM) algorithm to fit the timing and duration of a neutrino flare (TXS 0506+056).