SNax is a code that calculates the signals of axion-like particles (ALPs) from supernovae (SNe). It provides likelihood computations for ALP conversions in the Galactic magnetic field and ALP decays after SN 1987A.
The code was developed and improved by Sebastian Hoof and Lena Schulz. Please cite ref. [1] when using these. The Monte Carlo (MC) routines for ALP decays were originally written by Marie Lecroq, Sebastian Hoof, and Csaba Balázs. Please cite refs [1,2] when using these.
Axion-like particles are produced in SNe and can decay into two photons or convert into photons while traveling through magnetic fields towards Earth. By observing the absence of such photons from the direction of SN 1987A, we can establish limits on the ALP-photon coupling.
This code includes Monte Carlo (MC) routines for predicting the number of ALP decay photons, as described in ref. [1].
Additionally, in ref. [2], we update the ALP-photon limits by digitizing data from refs [3,4] and developing new integration routines for ALP conversions and decays.
The figure above shows the limits on the ALP-photon coupling (at 95% CL) obtained using our updated likelihood from ref. [2]. The left panel displays the limit from ALP conversions in the Galactic magnetic field, while the right panel shows the limit from ALP decays.
The code implements optimized quadrature-based computation for ALP conversion (requires the gammaALPs
package) and decays, as well as an older brute-force and improved Monte Carlo integration for ALP decays.
The code is developed for Python v3.9+ and C++-20-compliant compilers.
An simple example for how to use the code is included in the snax_demo.ipynb Jupyter notebook.
Python scripts similar to those used in the paper are available in the code/python/mpi_scripts/ folder (require a correctly installed mpi4py
package).
-
Clone this repository:
git clone https://github.com/sebhoof/snax
. -
Set up a build directory:
cd snax; mkdir build; cd build/
. -
For macOS, install CMAKE using Homebrew:
brew install cmake
. -
Run
cmake ..
and thenmake
to build everything. The C++ library and Python modulepysnax
should be generated in the newly createdcode/lib
directory. -
Ensure all required Python packages are installed:
python -m pip install numpy scipy mpi4py gammaALPs vegas
.
If you use our code, please cite refs [1,2].
[1] S. Hoof and L. Schulz, “Updated constraints on axion-like particles from temporal information in supernova SN1987A gamma-ray data,” JCAP 03 (2023) 054 [arXiv:2212.09764].
[2] C. Balázs, S. Bloor, T. E. Gonzalo, et al. “Cosmological constraints on decaying axion-like particles: a global analysis,” JCAP 12 (2022) 027 [arXiv:2205.13549].
[3] E. L. Chupp, W. T. Vestrand, and C. Reppin. “Experimental Limits on the Radiative Decay of SN 1987A Neutrinos,” Phys. Rev. Lett. 62, 505 (1989).
[4] L. Oberauer, C. Hagner, G. Raffelt, and E. Rieger, “Supernova bounds on neutrino radiative decays,” Astroparticle Physics 1, 4 (1993), pp. 377–386.