Page 1 of 1

Confusion regarding neutrinos in CosmoMC

Posted: January 22 2019
by Shouvik Roychoudhury
Hi,

I have two confusions regarding the following lines of code in the subroutine SetForH of the CosmologyParameterizations.f90 file.

Code: Select all

        CMB%sum_mnu_standard = Params(6)
        if (CMB%nnu > standard_neutrino_neff .or. CosmoSettings%neutrino_hierarchy /= neutrino_hierarchy_degenerate) then
            CMB%omnuh2=Params(6)/neutrino_mass_fac*(standard_neutrino_neff/3)**0.75_mcp
        else
            CMB%omnuh2=Params(6)/neutrino_mass_fac*(CMB%nnu/3)**0.75_mcp
        end if
Questions:
1) CMB%sum_mnu_standard is declared in CosmologyTypes.f90, and used in CosmologyParameterizations.f90 to store the value of sum of neutrino masses (i.e. Params(6)). But I didn't find any other mention of the variable. Does it not do anything else except storing the value? Is it safe to delete the line?

2) This is regarding the rest of the lines. Why are we using standard_neutrino_neff for some cases and CMB%nnu for others? Shouldn't we always use CMB%nnu in case there is no sterile neutrino?

Re: Confusion regarding neutrinos in CosmoMC

Posted: January 23 2019
by Antony Lewis
Yes, I think sum_mnu_standard was just for debugging.

If nnu>3.046, the baseline assumption is that the extra species are sterile; that code sets the neutrino density parameter for the active neutrinos, which are fixed to have nnu=3.046 (for nnu<3.046 the interpretation is that there's a non-standard active neutrino temperature, and hence it uses nnu). As to what to do when having e.g. nnu<3.046 and a e.g. "normal" hierarchy, it's just a choice to keep the massive neutrinos at standard temperature (I don't think this case is ever used).

Re: Confusion regarding neutrinos in CosmoMC

Posted: January 23 2019
by Shouvik Roychoudhury
Thanks a lot for the clarification.