SNEWPY — это пакет Python для работы со сверхновыми нейтрино. Он предлагает…
Запустите pip install snewpy
чтобы установить SNEWPY.
SNEWPY включает в себя большое количество моделей сверхновых из разных групп моделирования. Поскольку эти модели имеют размер несколько 100 МБ, они не включены в первоначальную установку, а будут загружены автоматически при необходимости. Альтернативно вы можете запустить следующую команду, чтобы явно загрузить модели, которые вы хотите использовать, в подкаталог с именем SNEWPY-models/<model_name>/
в текущем каталоге:
python -c 'import snewpy; snewpy.get_models()'
SNEWPY предоставляет вам легкий доступ к сотням встроенных моделей SN…
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 )
…и многие ароматические превращения, которые нейтрино могут испытать на пути к Земле…
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 )
… позволяющий быстро рассчитать поток нейтрино, достигающий Земли:
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 )
Вы также можете рассчитать наблюдаемую частоту событий во всех детекторах нейтрино, поддерживаемых SNOwGLoBES, использовать включенные модели SN и преобразования ароматов в стороннем коде (например, генераторы событий) и многое другое.
Блокноты Jupyter, демонстрирующие загружаемые модели Supernova, доступные через SNEWPY, и большая часть их функций доступны в подпапке doc/nb/
. Дополнительные примеры сценариев находятся в подпапке python/snewpy/scripts/
.
Статьи, описывающие SNEWPY и лежащую в его основе физику, опубликованы в Astrophysical Journal (DOI:10.3847/1538-4357/ac350f, arXiv:2109.08188) и Journal of Open Source Software (DOI:10.21105/joss.03772).
Дополнительную информацию см. в полной документации по разделу «Чтение документации».
Ваш вклад в SNEWPY приветствуется! Для незначительных изменений просто отправьте запрос на включение. Если вы планируете более крупные изменения, вероятно, будет хорошей идеей сначала открыть проблему, чтобы скоординировать нашу работу.
Мы используем рабочий процесс Fork & Pull Request, который распространен на GitHub. Подробности см. на странице «Внесение вклада» в нашей полной документации.