Source code for classylss.astropy_compat

from .binding import Background
import numpy as np

[docs]class AstropyCompat(object): """ A cosmology wrapper object that provides compatibility with the syntax from :mod:`astropy`. .. warning :: Some parameter definitions vary between :mod:`astropy` and CLASS. Parameters ---------- engine : ClassEngine the CLASS engine object """ def __init__(self, engine): self.engine = engine self.bg = Background(engine) @property def Om0(self): """Returns :attr:`~classylss.binding.Background.Omega0_m`.""" return self.bg.Omega0_m
[docs] def Om(self, z): """Returns :func:`~classylss.binding.Background.Omega_m`.""" return self.bg.Omega_m(z)
@property def Ob0(self): """Returns :attr:`~classylss.binding.Background.Omega0_b`.""" return self.bg.Omega0_b
[docs] def Ob(self, z): """Returns :func:`~classylss.binding.Background.Omega_b`.""" return self.bg.Omega_b(z)
@property def Ogamma0(self): """Returns :attr:`~classylss.binding.Background.Omega0_g`.""" return self.bg.Omega0_g
[docs] def Ogamma(self, z): """Returns :func:`~classylss.binding.Background.Omega_g`.""" return self.bg.Omega_g(z)
@property def Odm0(self): """Returns :attr:`~classylss.binding.Background.Omega0_cdm`.""" return self.bg.Omega0_cdm
[docs] def Odm(self, z): """Returns :func:`~classylss.binding.Background.Omega_cdm`.""" return self.bg.Omega_cdm(z)
@property def Ok0(self): """Returns :attr:`~classylss.binding.Background.Omega0_k`.""" return self.bg.Omega0_k
[docs] def Ok(self, z): """Returns :func:`~classylss.binding.Background.Omega_k`.""" return self.bg.Omega_k(z)
@property def Ode0(self): """ Returns the sum of :attr:`~classylss.binding.Background.Omega0_lambda` and :attr:`~classylss.binding.Background.Omega0_fld`. """ return self.bg.Omega0_lambda + self.bg.Omega0_fld
[docs] def Ode(self, z): """ Returns the sum of :func:`~classylss.binding.Background.Omega_lambda` and :func:`~classylss.binding.Background.Omega_fld`. """ return self.bg.Omega_lambda(z) + self.bg.Omega_fld(z)
@property def Onu0(self): """ Returns the sum of :attr:`~classylss.binding.Background.Omega0_ncdm_tot` and :attr:`~classylss.binding.Background.Omega0_ur`. """ return self.bg.Omega0_ncdm_tot + self.bg.Omega0_ur
[docs] def Onu(self, z): """ Returns the sum of :func:`~classylss.binding.Background.Omega_ncdm` and :func:`~classylss.binding.Background.Omega_ur`. """ return self.bg.Omega_ncdm(z) + self.bg.Omega_ur(z)
@property def Tcmb0(self): """Returns :attr:`~classylss.binding.Background.T0_cmb`.""" return self.bg.T0_cmb
[docs] def Tcmb(self, z): """Returns :math:`(1+z)` :attr:`~classylss.binding.Background.T0_cmb`.""" return self.bg.T0_cmb * (1 + z)
@property def Tnu0(self): """Returns :attr:`~classylss.binding.Background.T0_ncdm`.""" return self.bg.T0_ncdm
[docs] def Tnu(self, z): """Returns :math:`(1+z)` :attr:`~classylss.binding.Background.T0_ncdm`.""" return self.bg.T0_ncdm * (1 + z)
@property def w0(self): """Returns :attr:`~classylss.binding.Background.w0_fld`.""" return self.bg.w0_fld @property def wa(self): """Returns :attr:`~classylss.binding.Background.wa_fld`.""" return self.bg.wa_fld @property def has_massive_nu(self): """ Returns ``True`` if :attr:`~classylss.binding.Background.N_ncdm` is greater than zero. """ return self.bg.N_ncdm > 0
[docs] def nu_relative_density(self, z): """ Returns :func:`Onu` / :func:`Ogamma`. """ return self.Onu(z) / self.Ogamma(z)