lesgourg / class_public

Public repository of the Cosmic Linear Anisotropy Solving System (master for the most recent version of the standard code; GW_CLASS to include Cosmic Gravitational Wave Background anisotropies; classnet branch for acceleration with neutral networks; ExoCLASS branch for exotic energy injection; class_matter branch for FFTlog)
223 stars 291 forks source link

Explanation of N_ur values to get N_eff = 3.046 in explanatory.ini ? #197

Closed c-d-leonard closed 6 years ago

c-d-leonard commented 6 years ago

Hi,

I am trying to make sure I understand how neutrinos are treated in CLASS and I'm confused by the comments in explanatory.ini section 4.a) on values of N_ur to pass when using the default T_ncdm temperature and wanting to recover Neff = 3.046 in the early universe. I tried to derive these myself with no luck (I get some slightly different values). Could you point me to a reference or documentation or explain more about how you get these values?

Thanks!

ThomasTram commented 6 years ago

Hi

The relativistic energi density is proportional to T^4, and the instantaneous freeze-out temperature corresponding to \Delta N_eff =1 is (4/11)^(1/3). (I am following CLASS, so the units are in terms of the CMB temperature.) It then follows that \Delta N_eff = ( T/(4/11)^(1/3) )^4 for each species. If we want 3.046 in total, N_ur has to be set to: N_ur = 3.046-i*( T/(4/11)^(1/3) )^4. I can then reproduce the numbers from explanatory.ini. Here is a Python script that prints the numbers:

for i in range(4):
    print 3.046-i*(0.71611/(4./11.)**(1./3.))**4

Cheers, Thomas

c-d-leonard commented 6 years ago

Thanks Thomas, I appreciate the clarification. That makes sense. I'll close this issue.