Skip to content

ShiveshM/GolemFlavor

Repository files navigation

GolemFlavor

Build Status Python Version readthedocs license

GolemFlavor is a Python package for running a Bayesian inference analysis pipeline using Astrophysical Flavor data taken at IceCube.

GolemFlavor Logo

Overview

What is Astrophysical Flavor data?

This is data of the flavor of a neutrino taken at the IceCube neutrino observatory, which is a cubic kilometer array of optical sensors embedded in the glacial ice at the South Pole. In particular, astrophysical neutrinos are ones that are very-high-energy and come from astrophysical origins such as active galactic nuclei.

For more on the physics behind neutrinos see here.

What does the GolemFlavor package do?

This package provides utilities for astrophysical neutrino propagation and Bayesian statistical modeling focused on advanced Markov Chain Monte Carlo (MCMC) algorithms. It has been used to make constraints on New Physics models in the Astrophysical Flavor, as motivated by the paper New Physics in Astrophysical Neutrino Flavor.

For more information on the statistical modeling see here.

Features

  • Portable Flavor Functions: A set of useful functions for calculating measured flavor compositions given a source composition and a mixing matrix.
  • MCMC Algorithms: Affine invariant and nested sampling algorithms provided by emcee and MultiNest.
  • Anarchic Sampling: Sampling of the neutrino mixing matrix is done under the neutrino mixing anarchy hypothesis to ensure an unbiased prior.
  • Distributed and parallel computing: Scripts included to manage the workload across a CPU cluster using HTCondor.
  • Visualization: Produce ternary plots of the flavor composition using the python-ternary package and joint posterior plots for analyzing MCMC chains using the getdist package.

Examples

You can find examples of how to use GolemFlavor in the GolemFlavor/examples directory.

Documentation

The documentation for GolemFlavor can be found at https://golemflavor.readthedocs.io/.

Installation

GolemFlavor can be installed using pip

pip install git+https://github.com/ShiveshM/GolemFlavor.git

This installs GolemFlavor, along with all the necessary dependencies such as NumPy and SciPy.

GolemFlavor uses the IceCube software GolemFit: The HESE fitter to fit with IceCube Astrophysical Flavor data. This software is proprietary and so access is currently limited to IceCube collaborators. A simple Gaussian likelihood can be used as a substitute for test purposes if this requirement is not found.

Dependencies

GolemFlavor has the following dependencies:

You can use pip to install the above automatically. Note that PyMultiNest requires the MultiNest Bayesian inference library, see the PyMultiNest documentation for install instructions.

Additional dependencies:

License

MIT License

Copyright (c) 2020 Shivesh Mandalia https://shivesh.org