Published April 7, 2021 | Version v1.0
Software Open

Twins Embedding Software Release

  • 1. University of Washington
  • 2. Lawrence Berkeley National Laboratory
  • 3. Laboratoire de Physique Nucleaire et des Hautes Energies, CNRS/IN2P3, Sorbonne Universite, Universite de Paris
  • 4. Yale Univeristy
  • 5. Univ Lyon, Univ Claude Bernard Lyon 1, CNRS, IP2I Lyon / IN2P3
  • 6. University of California, Berkeley
  • 7. Aix Marseille Univ, CNRS/IN2P3, CPPM
  • 8. Universite Clermont Auvergne, CNRS/IN2P3, Laboratoire de Physique de Clermont
  • 9. Space Telescope Science Institute
  • 10. Max-Planck-Institut fur Astrophysik
  • 11. Institut fur Physik, Humboldt-Universitat zu Berlin
  • 12. Universite Lyon 1
  • 13. University of California Berkeley
  • 14. Yale University
  • 15. University of Hawaii
  • 16. Princeton University
  • 17. University of Tokyo
  • 18. Tsinghua University, Aix Marseill Univ, CNRS/IN2P3, CPPM
  • 19. University of Portsmouth

Description

The Twins Embedding of Type Ia Supernovae

This repository includes all of the code used to perform the Twins Embedding analysis in Boone et al. 2021a and 2021b. This analysis systematically decomposes the spectra of Type Ia supernovae into their different components. We use manifold learning to parametrize the intrinsic diversity of Type Ia supernovae, and show how this can be used to standardize Type Ia supernovae.

This package depends on the kboone/idrtools package to work with data from the Nearby Supernova Factory. All of the code used for the main analysis is contained within the twins_embedding.py file. The embedding_generation_*.ipynb notebooks contains all of the code used to generate plots and numbers for Boone et al. 2021a (Paper I), and the standardization_plots.ipynb notebook was used to produce all of the results shown in Boone et al. 2021b (Paper II).

Usage

The following code can be used to evaluate a pretrained Twins Embedding model:

from twins_embedding import TwinsEmbeddingModel

model = TwinsEmbeddingModel()
flux, flux_error = model.evaluate(phase=2., magnitude=0.1, color=0.1, coordinates=[0., 1., 2.])
wave = model.wave

In this package, we provide all of the code that was used in the analyses in Boone et al. 2021a and 2021b. The estimated spectra at maximum light for each supernova were released with Boone et al. 2021a and can be found here. These spectra can be used to reproduce all of our results beyond estimating the spectra at maximum light including building the Twins Embedding latent space, constructing the Twins Embedding model, and performing all of the standardization analyses in Boone et al. 2021b. Rerunning the preprocessing and estimation of the spectra at maximum light requires SNfactory spectra, like those presented in Saunders et al 2019 and Leget et al 2020, or the improved versions of those data used in Boone et al 2021a and now being prepared for publication. For completeness, and to elucidate the algorithms used, we include in this package the code that was used for those steps.

Some of the indicators discussed in Boone et al. 2021a and host properties discussed in Boone et al. 2021b were extracted from other publicly-available papers, and we do not have permission to reproduce them in this repository. Contact us if you need help accessing these data.

Acknowledgements

The code used to calculate spectral indicators comes from Sam Dixon (https://github.com/sam-dixon).

Files

snfactory/twins_embedding-v1.0.zip

Files (5.9 MB)

Name Size Download all
md5:8e9f1e3c78c70addbeff28e4a654fe86
5.9 MB Preview Download

Additional details