{ "cells": [ { "cell_type": "markdown", "id": "a3461285-3f18-4ba7-9619-4ead5fa207c5", "metadata": {}, "source": [ "# Intialize" ] }, { "cell_type": "code", "execution_count": 1, "id": "f764a698-d3ad-4991-8ca4-f8ba72b05734", "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "from classy_sz import Class as Class_sz" ] }, { "cell_type": "code", "execution_count": 3, "id": "ebd21063-d1ca-4721-a3f4-e66c00e0aae9", "metadata": {}, "outputs": [], "source": [ "cosmo_params = {\n", "'omega_b': 0.02242,\n", "'omega_cdm': 0.11933,\n", "'H0': 67.66, # use H0 because this is what is used by the emulators and to avoid any ambiguity when comparing with camb. \n", "'tau_reio': 0.0561,\n", "'ln10^{10}A_s': 3.047,\n", "'n_s': 0.9665 \n", "}" ] }, { "cell_type": "markdown", "id": "73965ac7-574c-475e-8975-3549dbd1d1bd", "metadata": {}, "source": [ "# Compute H(z)" ] }, { "cell_type": "code", "execution_count": 4, "id": "f669b4ae-a304-4a1d-9995-51bb329fb0fa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 304 μs, sys: 1.11 ms, total: 1.41 ms\n", "Wall time: 1.64 ms\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time \n", "classy_sz = Class_sz()\n", "classy_sz.set(cosmo_params)\n", "classy_sz.set({\n", "'output':' ',\n", "'skip_hubble':0,\n", "})" ] }, { "cell_type": "code", "execution_count": 5, "id": "588083b0-3056-43f8-bd87-54ef25c8e626", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 10.3 ms, sys: 16.5 ms, total: 26.9 ms\n", "Wall time: 32.8 ms\n" ] } ], "source": [ "%%time\n", "classy_sz.compute_class_szfast()" ] }, { "cell_type": "code", "execution_count": 6, "id": "b78455e9-874d-4176-b213-ff195df86e69", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "np.float64(0.00033359796437495265)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.get_H(0.)" ] }, { "cell_type": "code", "execution_count": 8, "id": "8050db6a-35af-47d4-b800-6345aca522c4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "np.float64(0.0004023684284735257)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.Hubble(1.)" ] }, { "cell_type": "code", "execution_count": 9, "id": "038e6221-a1c5-4b90-967b-b5cce14817ca", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array(0.00040237)" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.get_hubble_at_z(1,params_values_dict = cosmo_params)" ] }, { "cell_type": "markdown", "id": "6a45b0e2-3616-450c-94c9-4e83a0c431b5", "metadata": {}, "source": [ "# Convert to usual units" ] }, { "cell_type": "code", "execution_count": 15, "id": "1fc1bcdf-4196-4cd1-9cc6-1fc5986ed6b7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "67.66687000949837\n", "67.66687000949837\n" ] } ], "source": [ "conv_fac = 299792.458 # speed of light \n", "print(classy_sz.Hubble(0.)*conv_fac)\n", "print(classy_sz.get_hubble_at_z(0,params_values_dict = cosmo_params)*conv_fac)\n" ] }, { "cell_type": "markdown", "id": "03d4c115-0b63-4319-8a0c-6c04ccd9a5c6", "metadata": { "tags": [] }, "source": [ "# Plot H(z)" ] }, { "cell_type": "code", "execution_count": 8, "id": "22c1ebe3-bde8-4389-a66d-1ffda3b4f913", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABfgAAAHYCAYAAAARXYnLAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAA9hAAAPYQGoP6dpAAC4UElEQVR4nOzdeZhcZZk3/u85ta+nek13Z18JkBUChE0QkWUQRcQRFWcw/uK4zTgzviooOjpBcHllmHFwfMloxnHAdURERQFZFBHCloWQkH1Peu/aupauOs/vj+qqdPWSdHVOVz3P6e/nunIlubu66n76fHNSfdfppzQhhAARERERERERERERESlFr3UDRERERERERERERERUOQ74iYiIiIiIiIiIiIgUxAE/EREREREREREREZGCOOAnIiIiIiIiIiIiIlIQB/xERERERERERERERArigJ+IiIiIiIiIiIiISEEc8BMRERERERERERERKYgDfiIiIiIiIiIiIiIiBTlr3QCVM00TR48eRSgUgqZptW6HiIiIiIiIiIiIiEYhhEA8HkdbWxt0vTbX0nPAL5n9+/dj/vz5tW6DiIiIiIiIiIiIiMZhz549mDdvXk0emwN+ybhcLgDAtm3bMGPGjBp3QzQ+0WgUs2bNwsGDB2EYRq3bIRoX5pZUxeySiphbUhFzS6pidklFzC2p6vDhwzj77LNLM91a4IBfMsVteUKhEMLhcI27IRofIQQAIBwOM7ekDOaWVMXskoqYW1IRc0uqYnZJRcwtqSoUCgFATbda55vsSor775NKinllbkklzC2pitklFTG3pCLmllTF7JKKmFtSlQyZ5YBfUsVXLolUUMwrc0sqYW5JVcwuqYi5JRUxt6QqZpdUxNySqmTILAf8REREREREREREREQK4oCfiIiIiIiIiIiIiEhBfJNdyXg8HgCA2+0u+xEPTdNG/ZGPyazX4jEnuy5TL1bVZejF7Xbjs5/9LNxuN4DRfzxJtTVZXZepF6vqMvUykbrH4ynltvhx2XrkceKaRqsPPefK/LWRqRer6jL1YlW9Wo85PLd2WFM16zL1YlVdpl7Gqld6vpWpd6vqMvViVV2mXqyqD68Vs+vxeKTp8XTXZIe6TL1YVbfyvkc756q+JlnqMvViVV2mXoqzsOJMtxY0MVq3VDOxWAyGYWD+/PlwOguvv2iaVgrQ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2tra4Ha7ceTIEdx6661lA+8LL7wQe/bswe9+9zs89dRTeOqpp/Dggw/izjvvxLPPPov6+np4PB48/vjj2LhxI373u9/hD3/4A774xS/iS1/6Eh588EG8853vHHdv73jHO7B//3785je/wTPPPIMnnngC3/3ud3HppZfiiSeeKBuqP/DAA/jSl76ED3zgA/jCF75Qs/Wfyql+ooJIRoFAoNYtEE0Is0sqYm5JRcwtqYrZJRVNhdwO5E10JQpX1w8d2p/YHidd+nOugs3t/W5HaUBfHNgPHdoXa/UBNxw6t8ixGw74JcX9qAoWLVqEHTt2IJPJVPxu6j/4wQ8wZ84cPProo2XD59/+9rej3j4YDOJd73oX3vWudwEoXP3+8Y9/HN/97nfx6U9/unS7888/v7S1zaFDh7By5UrccccdFQ34AaC+vh633HILbrnlFgghcNttt+HrX/86Hn74Ybz73e8GADz77LP40Ic+hEsvvRT/+Z//WfP1j5VLTdOYWVKOpmll71FBpApml1TE3JKKmFtSFbNLKlI9t+mB/JB97NNoj5UP74v1SrfJqQ+4y66sbw550RwqXIE/9Mr7gIcj3lqRYR7Goy8pvmFpwfvf/3585jOfwZ133ol169aVfUwIcdJ/RA6HA5qmlX0tc7lc2RvHFnV1daGxsbGsds455wAAenp6xrzNjBkz0NTUVLrNeOTzecTjcUQikVJN0zSsXLmy7PH27NmDG264ATNmzMBDDz1U8VY5Vq8fKLwIMNpahRDI5/OlxyRSgRACsVgM4XCYuSWlMLukIuaWVMTckqqYXVKRrLlND+TREcugfXBY3x5LD7vyvjDMj6YGxn2fDl1DU7A4pPegacjQvlAv/L0x6IHbyd0SZCfDDJcDfpLaJz/5STzyyCO488478eKLL+Kqq66C1+vFtm3b8MYbb+CJJ54Y83Nvuukm3H777bj22mtx4403IhaL4cEHHxz1FeEzzzwTq1evxgUXXIC2tjYcO3YM999/P9xuN26++WYAwJ133onHHnsMb3vb2zB37lwIIfDII49gx44d+MxnPjPuNcXjcbS2tuLtb387Vq5ciebmZuzbtw//8R//gbq6Olx//fUAgPe9733o7u7GRz/6UTz66KMj7ueWW2456eNYvX4AWL16Nb773e/iC1/4As4880zouo7rr78efr9/3OsnkokM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5557rnJyctS+fXtdfvnlKioqalIONTU1evLJJzVw4EBlZmaqoKBA1113nbZs2dKk/aFtiKd2w+Gw1q5dq/vvv19nn322cnNz5fP51KNHD915553atWtX3Me/+eabT9qLn3322eYuEUko3p47Z86ck9bZ9OnT486Bnot4xVu3sZz3jh49Oubj02/RFM2Ze7n5PDe1SVuhUcFgUKNHj9a6det02mmn6corr9RXX32lJUuW6M0339S6det0xhlnxLSvQ4cO6bzzztOXX36pM844QxMmTNCmTZu0aNEivfXWW/r3v/+t9u3bt/CK0Ba88soruv322yVJ/fr10/jx4xUIBFRUVKTZs2dr6dKlev/999WxY8e49jtp0qR6436/v9k5A8e7+uqrlZOTUyfeuXPnmPdBz0Vr6dSpU4P9saamRi+99JIkaeTIkXHtl54LJ8ybN0+vv/56XNtMmzZNixYtUmZmpi699FIFg0GtXr1a//jHP7Rs2TJNmDAh5n2Fw2Fde+21WrFihfLz83XFFVfo0KFDWrZsmVauXKl3331X5557bpyrQlsQT+3u3LlTF154oaRjPXn06NFKSUnRRx99pD/84Q965ZVXtGrVKl1wwQVx53HZZZepU6dOdeJ9+vSJe19Ifk3puZI0YsQI9ezZs0787LPPjms/9Fw0Rbx129A5qiStXLlShw4divu8V6LfIj5NnXu5/jzXoEU89NBDRpI577zzTGlpaSS+cOFCI8mMGjUq5n3deOONRpKZOHGiOXr0aCR+zz33GElm0qRJDmaOtuyFF14wd9xxh9m8eXNUfP/+/WbIkCFGkrn++utj3l9hYaGhzaA1jBo1ykgyu3btava+6Llwg1WrVhlJpmvXriYcDse0DT0XTpo/f76ZOXOm+dvf/ma++eYb4/P5Tlpfq1evNpJMhw4dzPbt2yPxoqIik56ebvLz801xcXHMx1+8eLGRZHr16mW+/fbbSHzZsmVGkunZs2dUjwZqxVO7X375pbnkkkvMmjVronptMBg0N998s5FkunXrZqqqqmI+/qRJk4wk8+677zZ3KWhD4u25s2fPNpLMkiVLHDk+PRdNEW/dNqS4uDiy7fHnEI2h36IpmjL3suE8l3eBLSAUChm/328kmfXr19d5fNCgQUaS+fjjjxvd1/79+43X6zXp6elRL7oxx048CwoKTEpKivnuu+8cyx+oT1FRkZFkfD6fCYVCMW3DsAmtxakBPz0XbnHDDTcYSWb69Okxb0PPRUtq7E372LFjjSTz5JNP1nlsypQpRpJZsGBBzMfr16+fkWRWrFhR57Hx48cbSWbZsmUx7w9tV1MHThUVFZH3dO+9917M2zFwghNae8BPz4UTmtpv//jHPxpJZvjw4XFtR7+F0xqae9lwnss9+FvABx98oJKSEvXo0UNDhgyp8/g111wjSXrjjTca3dfbb7+tcDiskSNH6tRTT416zOfzady4caqpqdGqVaucSR5owODBgyVJoVBIhw8fTnA2QMug58INysvLI193/ulPf5rgbIDGVVZW6p133pH0n/Pc48Vz7itJu3bt0pYtW5SZmakrrrii2fsDmiIzM1O9e/eWJO3fvz/B2QAth56LRKu9LSXnvUi0+uZetpzncg/+FrBhwwZJ0tChQ+t9vDb++eefO7Kv559/PqZ9Ac2xc+dOSVJaWlrc9x9//PHHtWPHDvl8PvXv319XXXWVCgoKWiJNtHHPPfecDh8+LK/Xq969e2vChAnq1q1bzNvTc+EGr776qsrLyzVkyBCdeeaZcW9Pz0Vr27Ztm0KhkAoKCtSlS5c6j8dz7iv9pxcPGDBAaWlpzd4f0BThcFi7d++WpHrv7dyYV199VcuXL1dNTY26d++ucePGqW/fvk6niTbunXfe0WeffaZgMKguXbpo7Nixcd9/n56LRPr666+1du1apaWl6Sc/+UmT9kG/hVPqm3vZcp7LgL8FfP3115JU7wt/fLz2hLG19gU0x6JFiyRJY8aMkc/ni2vb+++/P+rvX/7yl3rqqac0efJkx/IDJOnRRx+N+vtXv/qVZs6cqZkzZ8a0PT0XbtDcq5jouWhtjfXO7Oxs5efnq7i4WKWlpcrNzW3W/ujFaA1Lly7VgQMHVFBQoPPPPz/u7Z966qmovx944AHdddddWrRokVJTeRsOZ7z44otRf8+cOVNXX321XnjhBeXk5MS0D3ouEunll1+WMUZjx45Vhw4dmrQP+i2cUt/cy5bzXG7R0wLKysokSVlZWfU+np2dLUkqLS1t1X0BTbVq1So999xzSktL07x582Lebvz48Xr11Ve1e/duVVRUaOPGjbr33nsVCoV02223RW5BATTXhRdeqBdffFE7duxQRUWFtm3bpscee0ypqamaNWtW5D/UjaHnItG++eYbrVmzRikpKbr++uvj2paei0RprHdKnP/CLnv27NG0adMkSXPnzo3r4pYhQ4bo2Wef1fbt21VRUaGdO3fq97//vfLz8/XMM8/ov//7v1soa7QlPXv21IIFC7Rp0yaVlZVpz549evnll9W5c2ctX748rosE6LlIpOZc2EK/hZMamnvZcp7LR1kATmrr1q266aabZIzR448/HrknWSx+97vfRf3dv39/LVy4UH379tUdd9yhBx54QFdeeaXTKaMNmjt3btTfvXv31oMPPqhhw4bpsssu05w5c3THHXcoMzMzQRkCsVm6dKlqamo0ZsyYuG8JQc8FgOYrLy/XxIkTdejQIU2YMEF33nlnXNtPnTo16u/u3bvr7rvv1qhRozR06FA9/fTTuvfee9W1a1cn00Ybc9NNN0X9nZ2drRtuuEE/+tGPNHDgQL322mtat26dhg8fnqAMgcatX79emzdvVn5+vsaNGxf39vRbOKU5cy+34Ar+FlD7VbiKiop6Hy8vL5ekRr+24fS+gHjt27dPY8aMUXFxse699946/wFtqltvvVUdO3bUtm3b9NVXXzmyT6A+l156qYYNG6YjR47oww8/bPT59FwkWkv8yBg9Fy2tsd4pcf4LOxw9elTXXnutPv74Y11wwQV65ZVXHNt3//79NX78eFVXV2vNmjWO7Rc43mmnnaZbbrlFkvT222/HtA09F4lSe9577bXXxn0b4JOh3yIejc29bDnPZcDfAmp/0HHv3r31Pl4bLywsbNV9AfH4/vvvdemll2r37t265ZZbtGDBAsf27fV61aNHD0nHbkcBtKRevXpJiq3W6LlIpC1btujTTz9VTk6OJkyY4Nh+6bloaY31zvLych05ckTt2rWL6c0KvRiJEA6HNWnSJL311ls666yz9MYbbzj+zb94zkmApoq3zui5SISamhr9+c9/llT3GylOoN8iFrHMvWw5z2XA3wJqv8qxfv36eh+vjQ8aNKhV9wXEqqysTGPHjtXmzZs1ceJELV68WB6Px9FjFBcXS/rP/cWAlhJPrdFzkUi1P5Q3ceLEk97jsSnouWhJffr0kc/n08GDB7Vv3746j8fbO2t78caNG3X06NFm7w+IxT333KOlS5eqd+/e+vvf/678/HzHj0EvRmuIt87ouUiENWvW6JtvvlFhYaFGjhzp+P7pt2hMrHMvW85zGfC3gBEjRsjv92vHjh367LPP6jy+bNkySYrpHmNjxoyR1+vV2rVrdeDAgajHQqGQ3njjDaWkpOjyyy93JHcgFArpyiuv1EcffaTLLrtMS5cuVUpKiqPH2LRpk7Zt26asrCz17dvX0X0Dxzt48KDWrl0rSRo6dGijz6fnIlGMMZFbQTh5ex6JnouWl5mZqdGjR0uS/vrXv9Z5PJ5zX+nYPXT79eunyspKrVy5stn7Axrz8MMP65lnnlG3bt20evVqdezY0fFjhEKhSD3Hck4CNIUxRitWrJAUe53Rc5EItbfnuemmmxy/mJB+i8bEM/ey5jzXoEU89NBDRpI5//zzTVlZWSS+cOFCI8mMGjUq6vlPPfWU6dOnj5k+fXqdfd14441Gkrn66qvN0aNHI/EpU6YYSWbSpEkttQy0MdXV1eaqq64ykszIkSNNeXl5o9s0VLsrV640a9asqfP8DRs2mH79+hlJZsqUKY7ljrbrgw8+MCtWrDDV1dVR8V27dpkRI0YYSWb8+PFRj9Fz4Tbvv/++kWQ6d+5sampqGnwePReJ4vP5zMneOqxevdpIMh06dDDbt2+PxIuKiozP5zP5+fmmuLg4apsPP/zQ9OnTx4wePbrO/hYvXmwkmV69epnvvvsuEl++fLmRZHr27BnVo4GGNFa7TzzxhJFkOnXqFFW7J9NQ7W7ZssX86U9/MsFgMCp+4MABM2HCBCPJDB482ITD4fgXgjblZHV74MAB8/TTT5tAIBAVLy0tNT//+c8j9Xziezl6LlpaY/22Vnl5ucnJyTGSzNatW0/6XPotnNaUuZcN57mp8X0cgFg9/PDD+uc//6mioiL16tVLI0eO1O7du/Xhhx+qoKBAzz//fNTzDx06pG3bttV7f7Df/va3WrdunZYvX66+fftq2LBh2rRpkzZu3KhevXrpiSeeaK1lIck9/fTTkSs+TjnlFN199931Pm/BggU65ZRTJDVcux999JEeeeQRFRYWavDgwcrKytLOnTu1fv16VVdX66KLLtL8+fNbdkFoE7Zv365bbrlFnTp10tChQ5Wfn6/du3frk08+UTAYVP/+/bV48eKobei5cJvaq5huuOEGeb0Nf8GSnovWsnLlSs2bNy/yd1VVlSRp+PDhkdjMmTN1xRVXSJJ+/OMfa+rUqVq0aJHOOussXXLJJaqqqtLq1atljNGSJUvq3PKkoqJC27ZtUzAYrHP8yZMna9WqVVqxYoX69u2riy++WIcOHdL777+vzMxMvfTSS0pN5a0M6oqndj/77DPdd999ko5dUffYY4/Vu8/bbrtNF1xwQeTvhmr322+/1c9+9jNNnTpVw4YNU0FBgfbv369PPvlEpaWl6tKli/7yl784frUq7BdP3ZaXl+sXv/iFpk+frnPOOUennXaaDh48qPXr1+vw4cPKz8/XsmXL6tzuj54Lp8V7rlDrtddeU1lZmc455xz16dPnpMeg38JpTZl7WXGeG9fHAYhLRUWFmTlzpunRo4dJT083nTp1MjfffLPZs2dPnefOnj37pFeGHj582Nxzzz2ma9euJj093XTt2tVMmTKlzidEQHPU1mFj/+zatavONifWblFRkZk8ebIZOHCg6dChg0lNTTXt27c3F110kVm8eHGdq62Bptq8ebO56667zNChQ01BQYFJTU01fr/fDB8+3CxcuNBUVFTU2YaeCzcJBoOmXbt2RpLZsGHDSZ9Lz0VrWbJkSaPnA0uWLKl3u7PPPttkZWWZ/Px8M2bMGPPBBx/Ue4x3333XSDKFhYX1Pl5dXW0WLlxo+vfvbzIyMkyHDh3MNddcYzZt2uTgSpFs4qnd2hqMt9Ybqt19+/aZadOmmeHDh5tOnTqZtLQ0k5OTY4YOHWpmz55tvv/++9b5lwDrxFO3gUDAPPDAA2bUqFGmc+fOxufzmaysLNO/f39z3333mb1799Z7DHounNbUc4WxY8caSWbRokWNHoN+C6c1Ze5Vy83nuR5jjInvIwEAAAAAAAAAAJBo/MguAAAAAAAAAAAWYsAPAAAAAAAAAICFGPADAAAAAAAAAGAhBvwAAAAAAAAAAFiIAT8AAAAAAAAAABZiwA8AAAAAAAAAgIUY8AMAAAAAAAAAYCEG/AAAAAAAAAAAWIgBPwAAAAAAAAAAFmLADwAAAAAAAACAhRjwAwAAAAAAAABgIQb8AAAAAAAAAABYiAE/AAAAAAAAAAAWYsAPAAAAAAAAAICFGPADAAAAcFT37t3l8Xhi+ic7O1vhcDjRKQMAAABWYsAPAAAAwDGBQEBfffVVzM8fMGCAvF7elgAAAABNkZroBAAAAAAkj4yMDH3xxRcnfc6sWbO0YsUKSdJ1113XGmkBAAAASYkBPwAAAADHpKena8CAAQ0+PmPGjMhw/+GHH9Z9993XWqkBAAAASYfvwgIAAABoFTNmzND8+fMlHRvuz5s3L8EZAQAAAHZjwA8AAACgxR0/3H/ooYcY7gMAAAAOYMAPAAAAoEWdONx/9NFHE5wRAAAAkBwY8AMAAABoMQz3AQAAgJbDgB8AAABAizh+uP/ggw8y3AcAAAAcxoAfAAAAgONOHO4/9thjCc4IAAAASD4M+AEAAAA46vjh/owZMxjuAwAAAC2EAT8AAAAAx5w43P/1r3+d4IwAAACA5MWAHwAAAIAjGO4DAAAArctjjDGJTgIAAACA3ebPn68ZM2ZIkq666irNnTv3pM9v3769Tj/99NZIDQAAAEhaDPgBAAAANNvQoUP16aefxvz8WbNm6ZFHHmnBjAAAAIDkxy16AAAAADRLdXW1Nm/eHNc2gwYNaqFsAAAAgLaDK/gBAAAAAAAAALAQV/ADAAAAAAAAAGAhBvwAAAAAAAAAAFiIAT8AAAAAAAAAABZiwA8AAAAAAAAAgIUY8AMAAAAAAAAAYCEG/AAAAAAAAAAAWIgBPwAAAAAAAAAAFmLADwAAAAAAAACAhRjwAwAAAAAAAABgIQb8AAAAAAAAAABYiAE/AAAAAAAAAAAWYsAPAAAAAAAAAICFGPADAAAAAAAAAGAhBvwAAAAAAAAAAFiIAT8AAAAAAAAAABb6/1jpaelAUp6WAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "label_size = 15\n", "title_size = 20\n", "legend_size = 13\n", "handle_length = 1.5\n", "fig, (ax1) = plt.subplots(1,1,figsize=(18,5))\n", "\n", "ax = ax1\n", "ax.tick_params(axis = 'x',which='both',length=5,direction='in', pad=10)\n", "ax.tick_params(axis = 'y',which='both',length=5,direction='in', pad=5)\n", "ax.xaxis.set_ticks_position('both')\n", "ax.yaxis.set_ticks_position('both')\n", "plt.setp(ax.get_yticklabels(), rotation='horizontal', fontsize=label_size)\n", "plt.setp(ax.get_xticklabels(), fontsize=label_size)\n", "ax.grid( visible=True, which=\"both\", alpha=0.2, linestyle='--')\n", "\n", "\n", "z = np.linspace(0.,20,100)\n", "\n", "ax.plot(z,classy_sz.get_H(z),ls='-',label='class_szfast')\n", "\n", "\n", "\n", "\n", "\n", "\n", "ax.set_ylabel(r\"$H(z)$\",size=title_size)\n", "ax.set_xlabel(r\"$z$\",size=title_size)\n", "ax.set_xscale('linear')\n", "ax.set_yscale('log')\n", "ax.set_xlim(0,20)\n", "ax.legend(fontsize=legend_size)\n", "\n" ] }, { "cell_type": "markdown", "id": "71c13542-6beb-49cc-96ff-ba7c038efcdd", "metadata": {}, "source": [ "# Time computations of H(z)" ] }, { "cell_type": "code", "execution_count": 10, "id": "231671fe-a514-4ec5-8ac5-16224ecf919d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "31.4 ms ± 4.76 ms per loop (mean ± std. dev. of 7 runs, 40 loops each)\n" ] } ], "source": [ "%timeit -n 40 classy_sz.compute_class_szfast()" ] }, { "cell_type": "code", "execution_count": 11, "id": "5e799898-eb07-4070-b96e-466dd4f7630b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "8.61 ms ± 267 µs per loop (mean ± std. dev. of 7 runs, 40 loops each)\n" ] } ], "source": [ "z = np.linspace(0.,20,1000)\n", "%timeit -n 40 classy_sz.get_H(z)" ] }, { "cell_type": "code", "execution_count": 12, "id": "fc593130-5aa4-44d1-866c-ab06454913ba", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.00022571238269609295" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.get_H(z)[0]*classy_sz.h()" ] }, { "cell_type": "code", "execution_count": 13, "id": "35444f8d-3438-458f-b1f5-bc234ed3fdbe", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "6.92 ms ± 114 µs per loop (mean ± std. dev. of 7 runs, 40 loops each)\n" ] } ], "source": [ "z = np.linspace(0.,20,1000)\n", "%timeit -n 40 classy_sz.Hubble(z)" ] }, { "cell_type": "code", "execution_count": 14, "id": "e2d9b455-8d82-432d-b442-fa4d84baa968", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.00022571238269609295" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.Hubble(z)[0]" ] }, { "cell_type": "code", "execution_count": 15, "id": "bce2fb13-8dee-467a-b4f6-ed15c86a853e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "18.8 ms ± 6.96 ms per loop (mean ± std. dev. of 7 runs, 40 loops each)\n" ] } ], "source": [ "# let's time it \n", "z = np.linspace(0.,20,1000)\n", "%timeit -n 40 classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)" ] }, { "cell_type": "code", "execution_count": 16, "id": "ead36e18-6720-431b-81c3-7d5c36d04acc", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.00022571238269609295" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)[0]" ] }, { "cell_type": "markdown", "id": "8f870ecb-6599-4164-8481-c2a095c3843d", "metadata": {}, "source": [ "Here we can now update cosmological parameters and recompute.\n", "\n", "A strategy can be to initialize classy_sz and then recompute as here. " ] }, { "cell_type": "code", "execution_count": 17, "id": "3c395eb9-4ce9-4b1b-9c31-f8ccb00467e4", "metadata": {}, "outputs": [], "source": [ "cosmo_params.update({'H0':72.})" ] }, { "cell_type": "code", "execution_count": 18, "id": "e4dcde1a-d85f-42bd-8c33-e144997c6b7d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.00024019108300278296" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)[0]" ] }, { "cell_type": "code", "execution_count": 19, "id": "e2f1b44f-dfe2-4dcd-8165-72e71f37ea8b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "15.6 ms ± 3.89 ms per loop (mean ± std. dev. of 7 runs, 40 loops each)\n" ] } ], "source": [ "%timeit -n 40 classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)[0]" ] }, { "cell_type": "markdown", "id": "053f2921-931c-4f8f-847d-53a5618f49ab", "metadata": {}, "source": [ "# Comparison without emulators" ] }, { "cell_type": "code", "execution_count": 20, "id": "ae29c108-cde9-4f4d-999d-03437e1fb331", "metadata": {}, "outputs": [], "source": [ "from classy_sz import Class as Class_sz\n", "import numpy as np\n", "\n", "cosmo_params = {\n", "'omega_b': 0.02242,\n", "'omega_cdm': 0.11933,\n", "'H0': 67.66, # use H0 because this is what is used by the emulators and to avoid any ambiguity when comparing with camb. \n", "'tau_reio': 0.0561,\n", "'ln10^{10}A_s': 3.047,\n", "'n_s': 0.9665,\n", "\n", "'N_ur' :0.00441, # this is the default value in class v3 to get Neff = 3.044\n", "'N_ncdm': 1,\n", "'m_ncdm': 0.02,\n", "'deg_ncdm': 3\n", "\n", "}" ] }, { "cell_type": "code", "execution_count": 21, "id": "31fcca2c-5912-419a-9d01-b4d1c9de6880", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 58 ms, sys: 5.67 ms, total: 63.6 ms\n", "Wall time: 70.8 ms\n" ] } ], "source": [ "%%time \n", "classy_sz = Class_sz()\n", "classy_sz.set(cosmo_params)\n", "classy_sz.set({\n", "'output':' ',\n", "'skip_background_and_thermo':0,\n", "})\n", "classy_sz.compute()" ] }, { "cell_type": "code", "execution_count": 22, "id": "d13efee6-eec1-436a-8af9-caa2a34e7839", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.00040234621947652185" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.Hubble(1.)" ] }, { "cell_type": "code", "execution_count": 23, "id": "e89ffa9e-0cb7-4022-8dba-6b8019755cc5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "461 µs ± 134 µs per loop (mean ± std. dev. of 7 runs, 40 loops each)\n" ] } ], "source": [ "z = np.linspace(0.,20,1000)\n", "%timeit -n 40 classy_sz.Hubble(z)" ] }, { "cell_type": "code", "execution_count": 24, "id": "8fbd0948-57fe-4f29-aeaa-5c504832c94a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.00022568946681106967" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classy_sz.Hubble(z)[0]" ] }, { "cell_type": "markdown", "id": "e5e988c4-93e4-4c52-a838-6256329377d0", "metadata": {}, "source": [ "# Compute with Jax" ] }, { "cell_type": "code", "execution_count": 5, "id": "424c28d7-b9b0-4e9b-9cc9-73e582039cf5", "metadata": {}, "outputs": [], "source": [ "from classy_sz import Class as Class_sz\n", "import jax.numpy as jnp\n", "\n", "cosmo_params = {\n", "'omega_b': 0.02242,\n", "'omega_cdm': 0.11933,\n", "'H0': 67.66, # use H0 because this is what is used by the emulators and to avoid any ambiguity when comparing with camb. \n", "'tau_reio': 0.0561,\n", "'ln10^{10}A_s': 3.047,\n", "'n_s': 0.9665 \n", "\n", "}" ] }, { "cell_type": "code", "execution_count": 6, "id": "da874626-5ba1-4bc2-bd2f-14fa660affbc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 1.45 ms, sys: 3.3 ms, total: 4.75 ms\n", "Wall time: 4.99 ms\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time \n", "classy_sz = Class_sz()\n", "classy_sz.set(cosmo_params)\n", "classy_sz.set({\n", "'output':' ',\n", "'jax' : 1,\n", "})" ] }, { "cell_type": "code", "execution_count": 7, "id": "65ec730f-d0a3-4881-a89e-66f495eee8de", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 444 ms, sys: 47.4 ms, total: 491 ms\n", "Wall time: 495 ms\n" ] } ], "source": [ "%%time\n", "classy_sz.compute_class_szfast()" ] }, { "cell_type": "code", "execution_count": 8, "id": "9654a5d7-01de-4c04-bc17-0fbf53dab8d2", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Array(0.00040237, dtype=float64)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "z = 1.\n", "classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)" ] }, { "cell_type": "code", "execution_count": 13, "id": "65f87adc-7e97-4de1-acd0-715f24170618", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.0004106620973760160566400'" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cosmo_params.update({'H0':72.})\n", "\"%.25f\"%classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)" ] }, { "cell_type": "code", "execution_count": 14, "id": "f6e6f8d2-50d1-4e4e-b630-7544e7913265", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.0004067974877159367843964'" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cosmo_params.update({'H0':70.})\n", "\"%.25f\"%classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)" ] }, { "cell_type": "code", "execution_count": 15, "id": "953d6154-ece6-47f4-aeb4-5dff3115a0b3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.0004067974877159367843964'" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\"%.25f\"%classy_sz.Hubble(1.)[0]" ] }, { "cell_type": "code", "execution_count": 16, "id": "013a5620-55fb-4c2b-886d-701a5e746be0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.0004067974877159367843964'" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "z = jnp.linspace(1.,20,1000)\n", "\"%.25f\"%classy_sz.Hubble(z)[0]" ] }, { "cell_type": "code", "execution_count": 17, "id": "9c4478c6-2686-4b22-9f51-b3b4eb63d18a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.0004067974877159367843964'" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cosmo_params.update({'H0':67.})\n", "z = jnp.linspace(1.,20,1000)\n", "\"%.25f\"%classy_sz.Hubble(z)[0]" ] }, { "cell_type": "markdown", "id": "cbae0ed4-1379-4df8-9391-8c68c34b2446", "metadata": {}, "source": [ "## Compatibility" ] }, { "cell_type": "code", "execution_count": 18, "id": "b4270d51-d465-4462-9fc8-2a4911c83110", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Is Hubble(z) a JAX array? True\n", "Does Hubble(z) support JAX jit? True\n" ] } ], "source": [ "\n", "import jax\n", "\n", "z = jnp.linspace(1., 20, 1000)\n", "hubble_values = classy_sz.Hubble(z)\n", "\n", "# Check if it's a JAX array\n", "is_jax_array = isinstance(hubble_values, jnp.ndarray)\n", "\n", "# Additional check: apply a JAX function to see if it supports JAX transformations\n", "try:\n", " jitted_hubble = jax.jit(classy_sz.Hubble)(z)\n", " supports_jit = True\n", "except Exception as e:\n", " supports_jit = False\n", " print(\"Error with jax.jit:\", e)\n", "\n", "print(\"Is Hubble(z) a JAX array?\", is_jax_array)\n", "print(\"Does Hubble(z) support JAX jit?\", supports_jit)\n" ] }, { "cell_type": "code", "execution_count": 19, "id": "79b5b665-e791-44a8-887d-12398736adf6", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Is get_hubble_at_z a JAX array? True\n" ] } ], "source": [ "hubble_values = classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)\n", "is_jax_array = isinstance(hubble_values, jnp.ndarray)\n", "print(\"Is get_hubble_at_z a JAX array?\", is_jax_array)" ] }, { "cell_type": "markdown", "id": "54802845-78de-462d-815d-b85300b18fa4", "metadata": {}, "source": [ "## Gradients" ] }, { "cell_type": "markdown", "id": "d422e2ea-4abf-4282-afaf-a2e2495eeea2", "metadata": {}, "source": [ "### 1 dimension" ] }, { "cell_type": "markdown", "id": "f5fd950a-923b-438e-b003-58283bbdb3b4", "metadata": {}, "source": [ "At one redshift" ] }, { "cell_type": "code", "execution_count": 9, "id": "b0cb98f1-5090-4307-97a2-56a283c6c8d0", "metadata": {}, "outputs": [], "source": [ "z = 1.\n", "def Hubble(H0):\n", " cosmo_params.update({'H0':H0})\n", " hz = classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)\n", " return hz" ] }, { "cell_type": "code", "execution_count": 10, "id": "975fb2d2-cb6e-46b0-8eaf-84030705afdd", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Array(0.00041066, dtype=float64)" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Hubble(72)" ] }, { "cell_type": "code", "execution_count": 13, "id": "3c7f7cf4-00c1-4d7a-83dd-a089410c986b", "metadata": {}, "outputs": [], "source": [ "from jax import grad\n", "# Get the derivative of f with respect to p\n", "dHubble = grad(Hubble)" ] }, { "cell_type": "code", "execution_count": 14, "id": "cc672df6-2375-4af4-b9cf-3c6b7d945a80", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Array(2.02039159e-06, dtype=float64, weak_type=True)" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dHubble(76.)" ] }, { "cell_type": "code", "execution_count": 15, "id": "1efdfddf-7592-4f5c-b977-3c7d3d2504a4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Array(2.02039159e-06, dtype=float64, weak_type=True)" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dHubble(76.)" ] }, { "cell_type": "code", "execution_count": 16, "id": "321d9df8-359c-4db4-9cb8-7641dcb07c29", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.4.38'" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import jax\n", "jax.__version__" ] }, { "cell_type": "code", "execution_count": 17, "id": "afd06092-cecf-412b-86ca-48ef9629905e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'2.0.2'" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import numpy as np\n", "np.__version__" ] }, { "cell_type": "markdown", "id": "7a75bad0-205e-4378-93af-05ad92ee7b15", "metadata": {}, "source": [ "### Comparison with numerical derivative" ] }, { "cell_type": "code", "execution_count": 42, "id": "7bfc6af6-8454-446c-90f1-36a0bde80bbf", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Array(2.02039161e-06, dtype=float64)" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "h = 1e-6\n", "(Hubble(76.+h)-Hubble(76))/h" ] }, { "cell_type": "code", "execution_count": 43, "id": "697a8553-6e3e-4f99-b6b9-006598f0d895", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "h = np.geomspace(1e-10, 1e-1,50)\n", "dH = [(Hubble(76.+hp)-Hubble(76))/hp for hp in h]\n", "jaxdH = dHubble(76.)" ] }, { "cell_type": "code", "execution_count": 44, "id": "e4cd3c43-f695-40b1-9e53-84001d1c9364", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "plt.figure(figsize=(8, 6))\n", "plt.plot(h, dH, label='Numerical', linestyle='-', marker='o') # Line plot for 'numerical'\n", "plt.axhline(y=jaxdH, label='JAX', color='r', linestyle='--') # Horizontal line for 'jax'\n", "\n", "# Logarithmic scale for x-axis\n", "plt.xscale('log')\n", "\n", "# Axis labels and title\n", "plt.xlabel('h (step size)')\n", "plt.ylabel('dH (derivative)')\n", "plt.title('Comparison of Numerical and JAX Derivatives')\n", "\n", "# Thin grid\n", "plt.grid(True, which='both', linestyle='--', linewidth=0.5)\n", "\n", "# Legend\n", "plt.legend()\n", "\n", "# Display plot\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "871a2a6b-d174-47bc-9843-7ee0160e334f", "metadata": {}, "source": [ "On a redshift grid" ] }, { "cell_type": "code", "execution_count": 45, "id": "21c57793-be74-4d45-a1d5-b2dda942488b", "metadata": {}, "outputs": [], "source": [ "from jax import jacrev, jacfwd\n", "z = jnp.linspace(1., 20, 10)\n", "\n", "def Hubble(H0):\n", " cosmo_params.update({'H0':H0})\n", " hz = classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)\n", " return hz" ] }, { "cell_type": "code", "execution_count": 46, "id": "a4d88535-5118-4565-ad79-1ad64ad965e8", "metadata": {}, "outputs": [], "source": [ "dHubble = jacrev(Hubble)" ] }, { "cell_type": "code", "execution_count": 47, "id": "789eb2a7-02c2-4eb8-b348-5366770ab57e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "24.8 ms ± 1.37 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)\n" ] } ], "source": [ "%timeit -n 100 dHubble(72.)" ] }, { "cell_type": "code", "execution_count": 48, "id": "e1b16726-7615-4a28-a51b-7cc3b4d156d0", "metadata": {}, "outputs": [], "source": [ "dHubble = jacfwd(Hubble)" ] }, { "cell_type": "code", "execution_count": 49, "id": "643e696d-d04f-4523-9a52-a279cf1542cb", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "17.2 ms ± 1.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)\n" ] } ], "source": [ "%timeit -n 100 dHubble(72.)" ] }, { "cell_type": "markdown", "id": "6eb7cea8-f560-4854-9d01-675a4ab92bb4", "metadata": {}, "source": [ "Forward mode is faster. " ] }, { "cell_type": "markdown", "id": "8765559e-6068-4ee5-8e00-fb0004ba8714", "metadata": {}, "source": [ "### > 1 dimension" ] }, { "cell_type": "markdown", "id": "0eb18b16-5c92-46d6-b8ab-6a19f79a9d9e", "metadata": {}, "source": [ "At one redshift" ] }, { "cell_type": "code", "execution_count": 50, "id": "a47a8849-8f2e-4470-a155-f5f49e901594", "metadata": {}, "outputs": [], "source": [ "z = 1.\n", "def Hubble(H0,omega_cdm):\n", " cosmo_params.update({'H0':H0,\n", " 'omega_cdm':omega_cdm})\n", " hz = classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)\n", " return hz" ] }, { "cell_type": "code", "execution_count": 51, "id": "8b2da873-e580-436a-88ee-e5d2a3c2c8c4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Array(0.00040971, dtype=float64)" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Hubble(72,0.11833)" ] }, { "cell_type": "code", "execution_count": 52, "id": "e87ce87d-1e13-4ed9-be18-ab06b6c63ebd", "metadata": {}, "outputs": [], "source": [ "from jax import jacfwd\n", "# Get the derivative of Hubble with respect to both parameters\n", "dHubble = jacfwd(Hubble,argnums=(0,1))" ] }, { "cell_type": "code", "execution_count": 53, "id": "08913457-2ac5-4b69-aee1-36ec0adf06a6", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(Array(2.02039159e-06, dtype=float64), Array(0.00092981, dtype=float64))" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dHubble(76.,0.11933)" ] }, { "cell_type": "markdown", "id": "ed5cdaa5-7338-4782-b814-8f45f03b4a3c", "metadata": {}, "source": [ "On a redshift grid" ] }, { "cell_type": "code", "execution_count": 54, "id": "e9d2d59f-63cf-4ad5-9034-96bfc5cc5b83", "metadata": {}, "outputs": [], "source": [ "z = jnp.linspace(1., 20, 10)\n", "\n", "def Hubble(H0,omega_cdm):\n", " cosmo_params.update({'H0':H0,\n", " 'omega_cdm':omega_cdm})\n", " hz = classy_sz.get_hubble_at_z(z,params_values_dict = cosmo_params)\n", " return hz" ] }, { "cell_type": "code", "execution_count": 55, "id": "deccbf99-be56-4637-83e7-97c57241be88", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Array([0.00040971, 0.00106581, 0.00195863, 0.00302666, 0.00424306,\n", " 0.00559103, 0.00705868, 0.00863741, 0.0103195 , 0.01209945], dtype=float64)" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Hubble(72,0.11833)" ] }, { "cell_type": "code", "execution_count": 56, "id": "0693c119-55e1-4d5e-b612-f0b236afc4c5", "metadata": {}, "outputs": [], "source": [ "dHubble = jacfwd(Hubble,argnums=(0,1))" ] }, { "cell_type": "code", "execution_count": 57, "id": "cd033ffe-8170-4d7e-afe2-75af54fa86a6", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(Array([2.02039159e-06, 7.88481298e-07, 4.29706169e-07, 2.77572060e-07,\n", " 1.97199735e-07, 1.47912808e-07, 1.17819987e-07, 9.30194044e-08,\n", " 7.54919311e-08, 5.92952867e-08], dtype=float64),\n", " Array([0.00092981, 0.00355171, 0.00678657, 0.01058068, 0.01486751,\n", " 0.01960805, 0.0247732 , 0.03029529, 0.0361957 , 0.04240309], dtype=float64))" ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dHubble(76.,0.11933)" ] } ], "metadata": { "kernelspec": { "display_name": "Python (venv_class_sz)", "language": "python", "name": "venv_class_sz312" }, "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.12.8" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": {}, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }