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

Different definitions of Omega_m in Class' Python-Wrapper #57

Open fkoehlin opened 9 years ago

fkoehlin commented 9 years ago

Dear all,

I am slightly confused about different definitions of Omega_m in class' Python wrapper classy.pyx:

1) The first one is in line 741/742:

def Omega_m(self):
    return self.ba.Omega0_b+self.ba.Omega0_cdm

2) The second one in line 898:

def Omega0_m(self):
        """
        Return the sum of Omega0 for baryon and CDM
        """
        return self.ba.Omega0_b+self.ba.Omega0_cdm

3) And the third one is defined as part of the function def get_current_derived_parameters(self, names) in line 1212 (which is used for returning parameters to MontePython I presume):

...elif name == 'Omega_m':
                value = (self.ba.Omega0_b + self.ba.Omega0_cdm+
                         self.ba.Omega0_ncdm_tot + self.ba.Omega0_dcdm)

It seems like 1) & 2) are consistent but redundant and definition 3) includes also contributions from other species (like neutrinos) to the matter density (if applicable). To me 3) seems to be the most consistent definition and I am wondering now why definitions 1) and 2) don't explicitly include contributions from other species. Is there a physical reason for this or is it just a typo? Shouldn't Omega_m always contain all contributions from all species (e.g. when calculating lensing power spectra: Is Omega_m there only referring to Omega_cdm+Omega_b or should it also contain contributions from neutrinos if applicable?)!?

miguelzuma commented 7 years ago

Was this sorted out? I checked all the definitions and they now include ncdm and dcdm