{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Nonlinear bias using generalized tracers and power spectra\n", "This example showcases how to do nonlinear biasing with the generalized tracers and 2D power spectra implemented in CCL.\n", "\n", "For more on generalized tracers and power spectra, see GeneralizedTracers.ipynb" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pylab as plt\n", "import pyccl as ccl\n", "import pyccl.nl_pt as pt\n", "import pyccl.ccllib as lib\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that the perturbation theory functionality lives within `pyccl.nl_pt`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Preliminaries\n", "Let's just begin by setting up a cosmology and some biases" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Cosmology\n", "cosmo = ccl.Cosmology(Omega_c=0.27, Omega_b=0.045, h=0.67, A_s=2.1e-9, n_s=0.96)\n", "\n", "# Biases for number counts \n", "b_1 = 2.0 # constant values for now\n", "b_2 = 1.0\n", "b_s = 1.0\n", "\n", "# Biases for IAs. Will be converted to the input c_IA values below.\n", "a_1 = 1.\n", "a_2 = 0.5\n", "a_d = 0.5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## PT tracers\n", "Power spectra are Fourier-space correlations between two quantities. In CCL the quantities you want to correlate are defined in terms of so-called `PTTracers`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### IA normalization\n", "But before that, a few notes about the normalization of the IA biases" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Define a redshift range and associated growth factor:\n", "z = np.linspace(0,1,128)\n", "gz = ccl.growth_factor(cosmo, 1./(1+z))\n", "\n", "# Let's convert the a_IA values into the correctly normalized c_IA values:\n", "Om_m = cosmo['Omega_m']\n", "rho_crit = lib.cvar.constants.RHO_CRITICAL\n", "rho_m = lib.cvar.constants.RHO_CRITICAL * cosmo['Omega_m']\n", "Om_m_fid = 0.3 # or could use DES convention and just remove Om_m/Om_m_fid\n", "\n", "c_1_t = -1*a_1*5e-14*rho_crit*cosmo['Omega_m']/gz\n", "c_d_t = -1*a_d*5e-14*rho_crit*cosmo['Omega_m']/gz\n", "c_2_t = a_2*5*5e-14*rho_crit*cosmo['Omega_m']**2/(Om_m_fid*gz**2) # Blazek2019 convention\n", "c_2_t = a_2*5*5e-14*rho_crit*cosmo['Omega_m']/(gz**2) # DES convention\n", "\n", "# Or we just use the built-in function for IA normalization\n", "c_1,c_d,c_2 = pt.translate_IA_norm(cosmo, z, a1=a_1, a1delta=a_d, a2=a_2,\n", " Om_m2_for_c2 = False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Tracers\n", "OK, now that we have the biases, let's create three `PTTracer`s. One for number counts (galaxy clustering), one for intrinsic alignments and one for matter." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# Number counts\n", "ptt_g = pt.PTNumberCountsTracer(b1=b_1, b2=b_2, bs=b_s)\n", "\n", "# Intrinsic alignments\n", "ptt_i = pt.PTIntrinsicAlignmentTracer(c1=(z,c_1), c2=(z,c_2), cdelta=(z,c_d))\n", "ptt_i_nla = pt.PTIntrinsicAlignmentTracer(c1=(z,c_1)) # to compare using the standard WLTracer\n", "\n", "# Matter\n", "ptt_m = pt.PTMatterTracer()\n", "\n", "# Note that we've assumed constant biases for simplicity, but you can also make them z-dependent:\n", "bz = b_1 / gz\n", "ptt_g_b = pt.PTNumberCountsTracer(b1=(z, bz))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## PT calculator\n", "Another object, `PTWorkspace` takes care of initializing FastPT (essentially precomputing some of the stuff it needs to get you PT power spectra). You'll need one of these before you can compute P(k)s." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# The `with_NC` and `with_IA` flags will tell FastPT to initialize the right things.\n", "# `log10k_min/max and nk_per_decade will define the sampling in k you should use.\n", "ptc = pt.PTCalculator(with_NC=True, with_IA=True,\n", " log10k_min=-4, log10k_max=2, nk_per_decade=20)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## PT power spectra\n", "Let's compute some power spectra! We do so by calling `get_pt_pk2d` with whatever tracers you want to cross-correlate. This will return a `Pk2D` object that you can then evaluate at whatever scale and redshift you want." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "# Galaxies x galaxies.\n", "# If `tracer2` is missing, an auto-correlation for the first tracer is assumed.\n", "pk_gg = pt.get_pt_pk2d(cosmo, ptt_g, ptc=ptc)\n", "\n", "# Galaxies x matter\n", "pk_gm = pt.get_pt_pk2d(cosmo, ptt_g, tracer2=ptt_m, ptc=ptc)\n", "\n", "# Galaxies x IAs\n", "pk_gi = pt.get_pt_pk2d(cosmo, ptt_g, tracer2=ptt_i, ptc=ptc)\n", "\n", "# IAs x IAs\n", "pk_ii, pk_ii_bb = pt.get_pt_pk2d(cosmo, ptt_i, tracer2=ptt_i, ptc=ptc, return_ia_ee_and_bb=True)\n", "pk_ii_nla = pt.get_pt_pk2d(cosmo, ptt_i_nla, tracer2=ptt_i_nla, ptc=ptc,)\n", "\n", "# IAs x matter\n", "pk_im = pt.get_pt_pk2d(cosmo, ptt_i, tracer2=ptt_m, ptc=ptc)\n", "\n", "# Matter x matter\n", "pk_mm = pt.get_pt_pk2d(cosmo, ptt_m, tracer2=ptt_m, ptc=ptc)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Note:** FastPT is not yet able to compute IAs x galaxies in a consistent way. What CCL does is to use the full non-linear model for IAs, but use a linear bias for galaxies." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "OK, let's now plot a few of these!" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Let's plot everything at z=0\n", "\n", "ks = np.logspace(-3,2,512)\n", "ps = {}\n", "ps['gg'] = pk_gg.eval(ks, 1., cosmo)\n", "ps['gi'] = pk_gi.eval(ks, 1., cosmo)\n", "ps['gm'] = pk_gm.eval(ks, 1., cosmo)\n", "ps['ii'] = pk_ii.eval(ks, 1., cosmo)\n", "ps['im'] = pk_im.eval(ks, 1., cosmo)\n", "ps['mm'] = pk_mm.eval(ks, 1., cosmo)\n", "\n", "plt.figure()\n", "for pn, p in ps.items():\n", " plt.plot(ks, abs(p), label=pn)\n", "plt.loglog()\n", "plt.legend(loc='upper right', ncol=2,\n", " fontsize=13, labelspacing=0.1)\n", "plt.ylim([1E-2, 5E5])\n", "plt.xlabel(r'$k\\,\\,[{\\rm Mpc}^{-1}]$', fontsize=15)\n", "plt.ylabel(r'$P(k)\\,\\,[{\\rm Mpc}^{3}]$', fontsize=15)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can also compute the B-mode power spectrum for intrinsic alignments:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "pk_ii_bb = pt.get_pt_pk2d(cosmo, ptt_i, ptc=ptc, return_ia_bb=True)\n", "\n", "plt.figure()\n", "plt.plot(ks, pk_ii.eval(ks, 1., cosmo), label='IA, $E$-modes')\n", "plt.plot(ks, pk_ii_bb.eval(ks, 1., cosmo), label='IA, $B$-modes')\n", "plt.loglog()\n", "plt.legend(loc='lower left', fontsize=13)\n", "plt.ylim([1E-5, 5E0])\n", "plt.xlabel(r'$k\\,\\,[{\\rm Mpc}^{-1}]$', fontsize=15)\n", "plt.ylabel(r'$P(k)\\,\\,[{\\rm Mpc}^{3}]$', fontsize=15)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Angular power spectra\n", "We can now use these P(k)s to compute angular power spectra, passing them to `ccl.angular_cl`.\n", "Let's illustrate this specifically for the usual 3x2pt. We will define three standard tracers (not `PTTracer`s, but the ones used to compute angular power spectra), one for number counts, one for weak lensing shear, and one for intrinsic alignments, which is also a WeakLensingTracer. The first one will be associated with `PTNumberCountsTracer`, the second with `PTMatterTracer`, and the third with `PTIntrinsicAlignmentTracer`." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "z = np.linspace(0, 1.5, 1024)\n", "nz = np.exp(-((z-0.7)/0.1)**2)\n", "\n", "# Number counts\n", "# We give this one a bias of 1, since we've taken care of galaxy bias at the P(k) level.\n", "t_g = ccl.NumberCountsTracer(cosmo, False, dndz=(z, nz), bias=(z, np.ones_like(z)))\n", "\n", "# Lensing\n", "t_l = ccl.WeakLensingTracer(cosmo, dndz=(z, nz))\n", "\n", "# Intrinsic alignments\n", "# Note the required settings to isolate the IA term and set the IA bias to 1,\n", "# since we have added the IA bias terms at the P(k) level.\n", "t_i = ccl.WeakLensingTracer(cosmo, dndz=(z, nz), has_shear=False, ia_bias=(z, np.ones_like(z)), use_A_ia=False)\n", "t_i_nla = ccl.WeakLensingTracer(cosmo, dndz=(z, nz), has_shear=False, ia_bias=(z, np.ones_like(z)), use_A_ia=True)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now compute power spectra. Note how we pass the P(k)s we just calculated as `p_of_k_a`." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "ell = np.unique(np.geomspace(2,1000,100).astype(int)).astype(float)\n", "cls={}\n", "cls['gg'] = ccl.angular_cl(cosmo, t_g, t_g, ell, p_of_k_a=pk_gg)\n", "cls['gG'] = ccl.angular_cl(cosmo, t_g, t_l, ell, p_of_k_a=pk_gm)\n", "cls['GG'] = ccl.angular_cl(cosmo, t_l, t_l, ell, p_of_k_a=pk_mm)\n", "cls['GI'] = ccl.angular_cl(cosmo, t_l, t_i, ell, p_of_k_a=pk_im)\n", "cls['GI,NLA'] = ccl.angular_cl(cosmo, t_l, t_i_nla, ell)\n", "cls['II'] = ccl.angular_cl(cosmo, t_i, t_i, ell, p_of_k_a=pk_ii)\n", "cls['II,NLA'] = ccl.angular_cl(cosmo, t_i_nla, t_i_nla, ell)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot away!" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure()\n", "for cn, c in cls.items():\n", " if c[0]>0:\n", " plt.plot(ell, c, label=cn)\n", " else:\n", " plt.plot(ell, abs(c), '--', label=cn)\n", "plt.loglog()\n", "plt.legend(loc='lower left', ncol=1, fontsize=13)\n", "plt.xlabel(r'$\\ell$', fontsize=15)\n", "plt.ylabel(r'$C_\\ell$', fontsize=15)\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.8" } }, "nbformat": 4, "nbformat_minor": 2 }