Supernova light-curve fitting code in python
Although the main purpose of PISCOLA is to fit type Ia supernovae, it can be used to fit other types of supernovae or even other transients.
Read the full documentation at: piscola.readthedocs.io. See below for a summary. Check https://github.com/temuller/piscola_templates for spectral templates of different types of supernovae.
PISCOLA can be installed in the usual way, via pip:
pip install piscola
or from source:
git clone https://github.com/temuller/piscola.git
cd piscola
pip install .
If you are using a Mac with M1 or M2 chip and you encounter RuntimeError: This version of jaxlib was built using AVX instructions, which your CPU and/or operating system do not support. You may be able work around this issue by building jaxlib from source.
, try installing jax
from anaconda (as suggested here):
pip uninstall jax jaxlib
conda install -c conda-forge jaxlib
conda install -c conda-forge jax
The requirements can be found in the requirements.txt
file.
To run the tests, go to the parent directory and run the following command:
pytest -v
PISCOLA can fit the supernova light curves and correct them in a few lines of code:
sn = piscola.call_sn(<sn_file>)
sn.fit()
The light-curve parameters are saved in a dictionary and can be accessed directly:
sn.lc_parameters # dictionary
You can find an example of input file in the data directory.
If you make use of PISCOLA in your projects, please cite Müller-Bravo et al. (2022). See below for the bibtex format:
@ARTICLE{2022MNRAS.512.3266M,
author = {{M{\"u}ller-Bravo}, Tom{\'a}s E. and {Sullivan}, Mark and {Smith}, Mathew and {Frohmaier}, Chris and {Guti{\'e}rrez}, Claudia P. and {Wiseman}, Philip and {Zontou}, Zoe},
title = "{PISCOLA: a data-driven transient light-curve fitter}",
journal = {\mnras},
keywords = {supernovae: general, cosmology: observations, distance scale, Astrophysics - High Energy Astrophysical Phenomena, Astrophysics - Cosmology and Nongalactic Astrophysics, Astrophysics - Instrumentation and Methods for Astrophysics, Astrophysics - Solar and Stellar Astrophysics},
year = 2022,
month = may,
volume = {512},
number = {3},
pages = {3266-3283},
doi = {10.1093/mnras/stab3065},
archivePrefix = {arXiv},
eprint = {2110.11340},
primaryClass = {astro-ph.HE},
adsurl = {https://ui.adsabs.harvard.edu/abs/2022MNRAS.512.3266M},
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}
The recommended way is to use the issues page or send a pull request. Otherwise, you can contact me directly.