Skip to content

ajueid/CosmiXs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

101 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alt text License: COSMIXS Attribution

CosmiXs: Cosmic messenger spectra for indirect dark matter searches

The CosmiXs code and repository provides the source spectra at production for the cosmic messengers relevant for dark matter indirect searches, namely $\bar{p}, e^+, \gamma$ or $\nu$. The spectra have been generated with PYTHIA version 8.309 and the VINCIA antenna shower algorithm feeded by amplitudes generated by the MadDM code. The spectra are here provided for dark-matter masses between $5$ GeV and $100$ TeV (with a grid of 64 mass values) and for 29 annihilation channels. For each mass and each annihilation channel, five million events have been generated.

The annhilation channels are:

  • Fermionic channels

$$ \chi \chi \to e_L^+ e_L^-, e_R^+ e_R^-, e^+ e^-, \mu_L^+ \mu_L^-, \mu_R^+ \mu_R^-, \mu^+ \mu^-, \tau^+_L \tau^-_L, \tau^+_R \tau^-_R, \tau^+ \tau^-, \nu \bar{\nu}, u\bar{u}, d\bar{d}, s\bar{s}, c\bar{c}, b\bar{b}, t\bar{t}. $$

  • Bosonic channels

$$ \chi\chi \to \gamma\gamma, gg, W^+ W^-, W^+_L W^-_L, W^+_T W^-_T, ZZ, Z_L Z_L, Z_T Z_T, HH, \gamma Z, HZ. $$

Novelty of this Analysis

  • Inclusion of off-shell effects for $WW, ZZ, HZ$ producing four fermions and covering DM masses from 5 GeV to $M_X, X=W,Z$.
  • Inclusion of helicity information through the LHEF (used as input for PYTHIA). Using the VINCIA shower plugin, which is based on the helicity-depedent Antenna shower, electroweak corrections are taken properly into account.
  • Spectra for new channels not previously calculated: $\gamma Z$ and $HZ$.
  • Running quark masses are used for the quark annihilation channels.
  • Full one-loop form factors are used for the one-loop induced annihilation channels: $\gamma\gamma$, $gg$ and $\gamma Z$.

The spectra of Antideuterons

We also release the flux at the production for antideuterons from dark-matter annihilation. For this case we consider the following channels

$$ \chi \chi \to u\bar{u}, d\bar{d}, s\bar{s}, c\bar{c}, b\bar{b}, t\bar{t}, gg, \gamma\gamma, W^+_L W^-_L, W^+_T W^-_T, W^+W^-, Z_L Z_L, Z_T Z_T, ZZ, HH, HZ, Z\gamma. $$

We do not consider leptonic channels ($\ell^+\ell^-$ and $\nu\nu$) as the antideuteron yields for those is negligibly small. For each channel we calculate the spectra for five coalescence models -- both simple coalescence models and models based on quantum mechanics --, namely:

  • Simple coalescence model.
  • Simple coalescence model with a sharp cut on distance ($p_{\rm coal} < 3$ fm).
  • Spherical coalescence model.
  • Wigner model with a Gaussian wavefunction.
  • Wigner model with a Argonne wavefunction.

Structure of the repository

The repository provides data and code orgenized as follows:

  • Data/ directory: includes the source spectra for the following cosmic messengers:
    • AtProduction-AntiP.dat: for the spectra of $\bar{p}$.
    • AtProduction-Gamma.dat: for the spectra of $\gamma$ rays.
    • AtProduction-Nuel.dat: for the spectra of $\nu_e$.
    • AtProduction-Numu.dat: for the spectra of $\nu_\mu$.
    • AtProduction-Nuta.dat: for the spectra of $\nu_\tau$.
    • AtProduction-Positrons.dat: for the spectra of $e^+$.
  • AntiDeuterons/ directory: includes the source spectra for antideuterons for the five coalescence models:
    • AtProduction-AntiD-pcoal.dat: for the simple coalescence model.
    • AtProduction-AntiD-pcoalsigma.dat: for the simple coalescence model with a sharp cutoff on distance.
    • AtProduction-AntiD-spherical.dat: for the spherical coalescence model.
    • AtProduction-AntiD-GWF.dat: for the Wigner model with a Gaussian wavefunction.
    • AtProduction-AntiD-AWF.dat: for the Wigner model with Argonne wavefunction.
  • Scripts/ directory: includes the necessary files and commands to generate the spectra:
    • Models/ directory: includes the model files in the Universal FeynRules Output (UFO) format and includes
      • DMsimp_s_spin0_MD/ for the simplified model with pseudo-scalar mediator.
      • DMsimp_s_spin1_MD/ for the simplified model with vector mediator.
      • ScalarHiggsPortal_NLO_UFO/ for the minimal model with Higgs portal including full NLO QCD corrections.
    • main101.cc: a minimal C++ code to calculate the spectra for the cosmic messengers included here with PYTHIA. This code reads the input from spectrum.cmnd.
    • scripts_togenerate.txt: A plain text file that shows instructions on how to generate events in MadDM.
    • spectrum.cmnd: A basic input file to be read by PYTHIA code main101.cc, which includes all the necessary parameters to properly activate the VINCIA shower algorithm and generate the spectra.
  • Interpolate.py: Python code snippet to perform mass interpolations.
  • Example.py: Python example on how to call the Interpolate class and calculate the spectra for dark matter mass values not included in our tables.

Structure of the Tables

For each cosmic messenger, there is a dedicated file in ASCII format. The tables can be found in the folder Data/, where we provide the spectra for 29 annihilation channels and 6 cosmic messengers named as

AtProduction-FS.dat where FS=AntiP, Gamma, Nuel, Numu, Nuta, Positrons.

Each file contains 31 columns: The DM mass in GeV, the fraction x -- defined as the kinetic energy divided by the DM mass in 180 bins on the logarithmic scale and the spectrum in units of dN/dlog10(x). The rest of the columns are organised as follows:

[$e^+_L e^-_L$]  [$e^+_R e^-_R$]  [$e^+ e^-$]  [$\mu^+_L \mu^-_L$]  [$\mu^+_R \mu^-_R$]  [$\mu^+ \mu^-$]  [$\tau^+_L \tau^\
-_L$]  [$\tau^+_R \tau^-_R$]  [$\tau^+ \tau^-$]  [$\nu_e \bar{\nu}_e$]  [$\nu_\mu \bar{\nu}_\mu$]  [$\nu_\tau \bar{\nu}_\tau$]  [$u \bar{u}$] \
 [$d \bar{d}$]  [$s \bar{s}$]  [$c \bar{c}$]  [$b \bar{b}$]  [$t \bar{t}$]  [$\gamma \gamma$]  [$g g$]  [$W^+ W^-$]  [$W_L W_L$]  [$W_T W_T$] \
 [$Z Z$]  [$Z_L Z_L$]  [$Z_T Z_T$]  [$H H$]  [$Z \gamma$]  [$H Z$]    		  

For the anitdeuteron case, the spectra in ASCII format can be found in the folder AntiDeuterons/. So far we have the spectra for 15 annihilation channels. The files are named as AtProduction-AntiD-Model.dat where Model=pcoal, pcoalsigma, spherical, GWF, AWF.

Each file contains 17 column: The DM mass in GeV, and the fraction -- defined as the kinetic energy of the antideuteron divided by the DM mass in 180 bins on the logarithmic scale and the spectrum in units of dN/dlog10(x):

uu; dd; ss; cc; bb; tt; gamma gamma; gg;  WW;   W_L W_L;  W_T W_T; ZZ;  Z_L Z_L;  Z_T Z_T;  HH; Z gamma; HZ

Number of events per annihilation

To guarantee small statistical fluctuations we have generated large number of events per annihilation channel and per dark-matter mass. For the channels relevant to antideuteron spectra the number of annihilation events scale inversely with mass, i.e. larger events for low masses. We used the following grid

Mass [GeV] # of events
5.01187 22.91234
6.30957 17.63009
7.94328 13.91718
10.00000 11.17117
12.58925 9.06216
15.84893 7.40872
19.95262 6.10322
25.11886 5.06775
31.62278 4.23995
39.81072 3.57341
50.11872 3.03536
63.09573 2.60036
79.43282 2.24636
100.00000 1.95453
125.89254 1.70982
158.48932 1.50104
199.52623 1.32084
251.18864 1.16502
316.22777 1.03078
398.10717 0.91530
501.18723 0.81559
630.95734 0.72894
794.32823 0.65322
1000.00000 0.58682
1258.92541 0.52857
1584.89319 0.47756
1995.26231 0.43282
2511.88643 0.39330
3162.27766 0.35808
3981.07171 0.32651
5011.87234 0.29813
6309.57344 0.27258
7943.28235 0.24947
10000.00000 0.22852
12589.25412 0.20953
15848.93192 0.19237
19952.62315 0.17690
25118.86432 0.16295
31622.77660 0.15037
39810.71706 0.13911
50118.72336 0.12926
63095.73445 0.12115
79432.82347 0.11528
100000.00000 0.11219

Where the number of events is scaled by 10^{-8}. For annihilation channels into photons and leptons, i.e.

$$ \chi\chi \to \gamma\gamma, e_L^+ e_L^-, e_R^+ e_R^-, e^+ e^-, \mu_L^+ \mu_L^-, \mu_R^+ \mu_R^-, \mu^+ \mu^-, \tau^+_L \tau^-_L, \tau^+_R \tau^-_R, \tau^+ \tau^-, \nu \bar{\nu}, $$

we have generated 15 million annihilation events.

How to generate the spectra with MadDM

Here we show how to generate the spectra for three examples:

  • $\chi \chi \to b\bar{b}$ using the Higgs portal model:

    • import model ScalarHiggsPortal_NLO_UFO
    • define darkmatter n1
    • generate indirect_detection b b~
    • output folder_name
    • launch folder_name
    • set indirect = flux_source
    • set save_indirect_cont 1e-3
    • set save_output spectra
    • set precise
    • set sigmav_method madevent
    • set nevents 100000
    • set msdm 1000
  • $\chi\chi \to \nu_e \bar{\nu}_e$ using a simplified model with spin-1 mediator:

    • import model DMsimp_s_spin1_MD
    • define darkmatter ~xd
    • generate indirect_detection ve ve~
    • output folder_name
    • launch folder_name
    • set indirect = flux_source
    • set gnu11 0.25
    • set gnu22 0.25
    • set gnu33 0.25
    • set save_indirect_cont 1e-3
    • set save_output spectra
    • set precise
    • set sigmav_method madevent
    • set nevents 100000
    • set msdm 1000
  • $\chi\chi \to HZ$ using a simplified model with pseudo-scalar mediator:

    • import model DMsimp_s_spin0_MD
    • define darkmatter ~xd
    • generate ~xd ~xdb > h z
    • output folder_name
    • launch folder_name
    • set indirect = flux_source
    • set save_indirect_cont 1e-3
    • set save_output spectra
    • set precise
    • set sigmav_method madevent
    • set nevents 10000
    • set msdm 1000

Setup for the VINCIA Antenna shower

  • Parameters to select the VINCIA shower with full-fledged electroweak corrections

    • PartonShowers:model = 2
    • Vincia:ewMode = 3
    • TimeShower:pTminWeak = 1.0000000000e-01
    • WeakShower:singleEmission = off
  • Parameters of the Lund string model

    • StringZ:aLund = 0.337409
    • StringZ:bLund = 0.784682
    • StringPT:sigma = 0.296569
    • StringZ:aExtraDiquark = 1.246986
  • To enable for PYTHIA to decay the muon, $\pi^\pm$, $K_L$, $K^0$ and the neutron

    • 13:mayDecay=on
    • 211:mayDecay=on
    • 321:mayDecay=on
    • 310:mayDecay=on
    • 2112:mayDecay=on

To Do

  • Generate the spectra for DM masses from 100 TeV to 1 PeV.
  • Add a code snippet to quickly plot the spectra and perform comparisons.
  • Add a code snippet to obtain the spectra for a decaying DM.
  • Generate the spectra for the off-shell $W_L W_L, W_T W_T, Z_L Z_L$ and $Z_T Z_T$

Citations

If you use these Tables please cite:

If you would like to assess QCD uncertainties on the spectra (repo can be found on https://github.com/ajueid/qcd-dm.github.io), please cite:


License

This project is distributed under the COSMIXS Attribution License.

You are free to use, share, and modify the material, provided you:

  1. Cite the following papers:
    • Arina et al., JCAP 03 (2024) 035
    • Di Mauro et al., Phys. Rev. Lett. 135 (2025) 13, 131002
  2. Include a link to the COSMIXS GitHub page.
  3. Indicate any modifications made.

See the full license in LICENSE.md.

Contact

If you have any question or bug reports, please contact:

About

Repository for the updated particle spectra from dark matter. The predictions are made using state-of-art MC event generators

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages