SNEWPY est un package Python permettant de travailler avec les neutrinos de supernova. Il propose…
Exécutez pip install snewpy
pour installer SNEWPY.
SNEWPY comprend un grand nombre de modèles de supernova issus de différents groupes de simulation. Ces modèles ayant une taille de plusieurs 100 Mo, ils ne sont pas inclus dans l'installation initiale mais seront téléchargés automatiquement en cas de besoin. Vous pouvez également exécuter la commande suivante pour télécharger explicitement les modèles que vous souhaitez utiliser dans un sous-répertoire nommé SNEWPY-models/<model_name>/
dans le répertoire actuel :
python -c 'import snewpy; snewpy.get_models()'
SNEWPY vous donne un accès facile à des centaines de simulations SN incluses…
import astropy . units as u
from snewpy . models . ccsn import Nakazato_2013 , Bollig_2016
# Initialise two SN models. This automatically downloads the required data files if necessary.
nakazato = Nakazato_2013 ( progenitor_mass = 20 * u . solMass , revival_time = 100 * u . ms , metallicity = 0.004 , eos = 'shen' )
bollig = Bollig_2016 ( progenitor_mass = 27 * u . solMass )
… et de nombreuses transformations de saveurs que pourraient subir les neutrinos en route vers la Terre…
from snewpy . flavor_transformation import AdiabaticMSW
from snewpy . neutrino import MassHierarchy
# Adiabatic MSW flavor transformation with normal mass ordering
msw_nmo = AdiabaticMSW ( mh = MassHierarchy . NORMAL )
… vous permettant de calculer rapidement le flux de neutrinos atteignant la Terre :
times = [ 0.5 , 1 ] * u . s
energies = range ( 5 , 50 ) * u . MeV
# Assume a SN at the fiducial distance of 10 kpc and normal mass ordering.
flux = bollig . get_flux ( times , energies , distance = 10 * u . kpc , flavor_xform = msw_nmo )
Vous pouvez également calculer le taux d'événements observés dans tous les détecteurs de neutrinos pris en charge par SNOwGLoBES, utiliser les modèles SN et les transformations de saveur inclus dans du code tiers (comme les générateurs d'événements) et bien plus encore.
Les blocs-notes Jupyter présentant les modèles de supernova téléchargeables disponibles via SNEWPY et une grande partie de ses fonctionnalités sont disponibles dans le sous-dossier doc/nb/
. Des exemples de scripts supplémentaires se trouvent dans le sous-dossier python/snewpy/scripts/
.
Des articles décrivant SNEWPY et la physique sous-jacente sont publiés dans l'Astrophysical Journal (DOI : 10.3847/1538-4357/ac350f, arXiv : 2109.08188) et le Journal of Open Source Software (DOI : 10.21105/joss.03772).
Pour en savoir plus, consultez la documentation complète sur Read the Docs.
Vos contributions à SNEWPY sont les bienvenues ! Pour des modifications mineures, soumettez simplement une pull request. Si vous prévoyez des changements plus importants, c'est probablement une bonne idée d'ouvrir d'abord un ticket pour coordonner notre travail.
Nous utilisons un workflow Fork & Pull Request, courant sur GitHub. Veuillez consulter la page Contribuer dans notre documentation complète pour plus de détails.