SNEWPY เป็นแพ็คเกจ Python สำหรับการทำงานกับนิวทริโนของซูเปอร์โนวา มันมี…
รัน pip install snewpy
เพื่อติดตั้ง SNEWPY
SNEWPY มีโมเดลซูเปอร์โนวาจำนวนมากจากกลุ่มการจำลองต่างๆ เนื่องจากโมเดลเหล่านี้มีขนาดหลาย 100 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 และฟิสิกส์พื้นฐานได้รับการตีพิมพ์ใน 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 โปรดดูหน้าการมีส่วนร่วมในเอกสารฉบับเต็มของเราเพื่อดูรายละเอียด