This is the primary repository for the Open Kilonova Catalog (OSC), a module for the AstroCats catalog generation package. This repository also contains the primary JSON catalog file generated by AstroCats, which is used to drive the web-based table available on kilonova.space. Because GitHub repositories are limited to 1GB each, individual event JSON files are stored in separate repositories that are collated by year; these repositories contain the entirety of the data collected by the OSC:
https://github.com/astrocatalogs/kne-pre-1990 – Supernovae discovered before 1990. https://github.com/astrocatalogs/kne-1990-1999 – Supernovae discovered between 1990 and 1999. https://github.com/astrocatalogs/kne-2000-2004 – Supernovae discovered between 2000 and 2004. https://github.com/astrocatalogs/kne-2005-2009 – Supernovae discovered between 2005 and 2009. https://github.com/astrocatalogs/kne-2010-2014 – Supernovae discovered between 2010 and 2014. https://github.com/astrocatalogs/kne-2015-2019 – Supernovae discovered between 2015 and the present.
To contribute data to the repository, please read our contribution guide.
The data files are in JSON format, a detailed description of the particular structure we have chosen is available here.
If you are interested in reproducing the catalog on your own machine, you must first install AstroCats and its dependencies, and then install this repository into the astrocats directory
conda install matplotlib scipy
pip install -r requirements.txt
git clone https://github.com/astrocatalogs/astrocats.git
cd astrocats/astrocats
git clone https://github.com/astrocatalogs/supernovae.git
The OSC software is run in Python 3.4+ and is not tested for compatability with Python 2. After installing, navigate to the astrocats
directory and execute the import script,
cd ..
python -m astrocats supernovae import
and the import process will begin. The first time you run the import may take over a day as the caches of many sources will need to be built from scratch (particularly collecting spectra from WISeREP); after the initial run the typical run time for the import is a few hours, and in update mode (python -m astrocats supernovae import -u
), typical runtime is less than an hour. Runtime can be reduced significantly by selecting only specific tasks to run (below we just run the internal
task),
python -m astrocats supernovae import --tasks internal
with the cheapest tasks typically appearing near the top of the tasks.json file. The above example should take less than a minute to execute.
There are several scripts in the scripts folders (both in this module and in the scripts folder of the main AstroCats module) that use the produced datafiles to generate various data products, print out metrics, etc. These are standalone scripts that can be invoked in the following way,
python -m astrocats.scripts.webcat -c kne
where above we run the script that generates the web-based supernova catalog. Some scripts are specific to the supernova module and are available within that directory, and can be invoked as follows
python -m astrocats.kilonovae.scripts.histograms