User Tools

Site Tools


This is the project page for BaBooNs.

Kaitlin Cook: Parameters

Justin Michael Brown: Code

Rob Almus: Analysis

Aim: Investigate the effects of non-thermal baryon injection on BBN.

Introduction If dark matter particles (e.g. WIMPS) exist, they inevitably did so during the big bang. They also may decay during BBN into non-thermal particles - this may be in the form of photons, leptons (electron/positron pairs and/or neutrinos) or into hadronic channels (n/p, mesons, nuclei). These decays may have two influences into BBN:

1) Change the expansion rate due to the injection of relativistic species.

2) Effect the abundance of light nuclei produced in BBN via reactions with these decay particles.

In case (1), this effect is important only if the decay channels are relativistic, thus adding a lot of entropy into the universe. In this project, we will consider the injection of neutrons, so we will not consider this effect.

It is thus the goal of this project to investigate the effect of the injection of non-thermal neutrons on the light element abundances.

Key parameters:

  1. The mean life of the decaying particle X → 2n (some magic decay. Not very physical, probably. But hey, we don't actually know what WIMPS are).
  2. The energy of these neutrons (although if it is high enough, it may not matter too much?)
  3. The abundance of X. Jedamzik, 2004: 7Be is suppressed if O(10^-5) neutrons per proton are injected. Increases D/H. Lifetime of ~1000 s required.
  4. n interaction rates with every other nucleus.
  5. Mass of the WIMP. Chosen to be 100 GeV, based on the wikipedia WIMP entry, the font of all wisdom.

This figure:

from CDMS in 2004 suggests that this value isn't too far off.


  1. How to add an Isotope to bigbang
    1. Add pointer identifier, id, in network.dek (e.g. ini56)
    2. In subroutine init_bigbang:
      1. Add 1 to ionmax
      2. Set id number (usually +1 of the last isotope)
        1. id = number
      3. Set ratnam (name e.g. “ni56”)
        1. ionam (id) = isotope name
      4. Set zion (# of protons)
        1. zion (id) = Z
      5. Set aion (mass number)
        1. aion (id) = A
      6. Set bion (binding energy)
        1. bion (id) = binding energy
    3. In net_input
      1. Add initial abundance in xin
        1. xin (id)
    4. In init_isotope_rate_pointers
      1. Set pointer to 0
        1. id = 0
  2. How to add a Reaction Rate to bigbang
    1. Add reaction subroutine
    2. Add reaction and reverse reaction pointers, irid and irrid, in network.dek
    3. In subroutine init_bigbang:
      1. Add 2 to nrat
      2. Set id numbers, usually +1 of last reaction
        1. irid = number
        2. irrid = number + 1
      3. Set names
        1. ratnam (irid) = reaction name
        2. ratnam (irrid) = reverse reaction name
    4. In subroutine init_isotope_rate_pointers
      1. Set pointers to 0
        1. irid = 0
        2. irrid = 0
    5. In subroutine bigbangrat
      1. Call reaction subroutine
        1. call rate_id (btemp,bden,ratraw(irid),dratrawdt(irid),dratrawdd(irid),ratraw(irrid),dratrawdt(irrid),dratrawdd(irrid)
          1. Arguments
            1. temp ⇒ temperature in K
            2. den ⇒ density in g/cm^3
            3. fr ⇒ forward reaction rate, N_a<sigma v>
            4. dfrdt ⇒ derivative of fr with respect to temp
            5. dfrdd ⇒ derivative of fr with respect to den
            6. rr ⇒ reverse reaction rate, N_a<sigma v>
            7. drrdt ⇒ derivative of fr with respect to temp
            8. drrdd ⇒ derivative of fr with respect to den
    6. In subroutine bigbangtab
      1. Add density dependence
        1. dtab(irid) = 1.0d0 for decay
        2. dtab(irid) = bden for 2-body interaction
        3. Likewise for irrid
    7. In subroutine rhs:
      1. Add dy/dt terms
        1. dydt(isotope1) = dydt(isotope1) - y(isotope1) * y(isotope2) * rate(irid)
        2. dydt(isotope2) = dydt(isotope2) - y(isotope1) * y(isotope2) * rate(irid)
        3. dydt(output) = dydt(output) + y(isotope1) * y(isotope2) * rate(irid)
        4. Likewise for reverse reaction
    8. In subroutine bbigbang
      1. Add tree calls for reaction if they don't exist
        1. call tree(isotope1,isotope1,eloc,neloc,nterms,nzo,iloc,jloc,np)
        2. call tree(isotope1,isotope2,eloc,neloc,nterms,nzo,iloc,jloc,np)
        3. call tree(isotope2,isotope1,eloc,neloc,nterms,nzo,iloc,jloc,np)
        4. call tree(isotope2,isotope2,eloc,neloc,nterms,nzo,iloc,jloc,np)
        5. call tree(output,isotope1,eloc,neloc,nterms,nzo,iloc,jloc,np)
        6. call tree(output,isotope2,eloc,neloc,nterms,nzo,iloc,jloc,np)
    9. In subroutine sbigbang
      1. Add Jacobian elements
        1. For example, for d(isotope1)/d(isotope2)
          1. a1 = -y(isotope1)*ratdum(irid)
          2. nt = nt + 1, only if this Jacobian element doesn't already exist
          3. iat = eloc(nt), only if this Jacobian element doesn't already exist
          4. dfdy(iat) = dydy(iat) + a1
          5. xsum(isotope2) = xsum(isotope2) + a1 * mion(isotope1)
          6. Likewise for d(isotope1)/d(isotope1), d(isotope2)/d(isotope1), etc.
        2. For example, for d(output)/d(isotope2)
          1. a1 = -y(isotope1)*ratdum(irid)
          2. nt = nt + 1, only if this Jacobian element doesn't already exist
          3. iat = eloc(nt), only if this Jacobian element doesn't already exist
          4. dfdy(iat) = dydy(iat) + a1
          5. xsum(isotope2) = xsum(isotope2) + a1 * mion(output)
          6. Likewise for d(output)/d(isotope1)
        3. Do likewise for the reverse reaction rate, making sure not to repeat any of the above lines that shouldn't be done if the element already exists

Cross Sections

To add in reaction rates, as above, obviously one needs to find some reaction rates. Unfortunately, these don't exist at the temperatures and energy distributions of interest, as far as the authors are aware. Instead, we used the Ramsauer model, with parameters from Gowder et. al. 2005 to find total scattering cross sections. We then took a nominal value of 10% for the destruction cross sections. See the presentation for details. The cross sections were then put into a reaction rate, using a dirac function distribution of neutron energies.


May be found here. presentation_bbn.pdf

Reference Papers:

Cyburt et. al. 2009. Nucleosynthesis Constraints on a Massive Gravitino in Neutralino Dark Matter Scenario

Kamionkowski 1994. Diffuse Gamma Rays from WIMP Decay and Annihilation

Pierre Salati, 2014. Dark Matter Annihilation in the Universe

baboons.txt · Last modified: 2014/06/13 10:24 by cook