SNEWPY 是用於處理超新星中微子的 Python 套件。它提供…
執行pip install snewpy
以安裝 SNEWPY。
SNEWPY 包含大量來自不同模擬群體的超新星模型。由於這些模型的大小為數百 MB,因此它們不包含在初始安裝中,但會在需要時自動下載。或者,您可以執行以下命令將要使用的模型明確下載到目前目錄中名為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 筆記本展示了可透過 SNEWPY 下載的超新星模型,其大部分功能可在doc/nb/
子資料夾中使用。其他範例腳本位於python/snewpy/scripts/
子資料夾中。
描述 SNEWPY 及其基礎物理學的論文發表在《天文物理學雜誌》(DOI:10.3847/1538-4357/ac350f, arXiv:2109.08188) 和《開源軟體雜誌》(DOI:10.21105/joss.0372) 上。
有關更多信息,請參閱閱讀文件上的完整文件。
歡迎您為 SNEWPY 做出貢獻!對於較小的更改,只需提交拉取請求即可。如果您計劃進行更大的更改,那麼首先提出一個問題來協調我們的工作可能是個好主意。
我們使用 Fork & Pull Request 工作流程,這在 GitHub 上很常見。有關詳細信息,請參閱我們完整文件中的貢獻頁面。