{ "cells": [ { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The autoreload extension is already loaded. To reload it, use:\n", " %reload_ext autoreload\n" ] } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import csiborgtools\n", "\n", "from hmf import *\n", "\n", "%load_ext autoreload\n", "%autoreload 2\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "bin_edges = np.arange(11.8, 15.2, 0.25)\n", "xbin = (bin_edges[1:] + bin_edges[:-1]) / 2\n", "bin_edges = 10**bin_edges\n", "xbin = 10**xbin\n", "\n", "paths = csiborgtools.read.Paths(**csiborgtools.paths_glamdring)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ " 0%| | 0/20 [00:00" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "k = np.where(paths.get_ics(\"csiborg2_main\") == 16417)[0][0]\n", "\n", "fig, axs = plt.subplots(1, 2, figsize=(10, 4))\n", "lw = plt.rcParams['lines.linewidth']\n", "fig.subplots_adjust(hspace=0)\n", "axs[0].plot(xbin, hmf_cb2_main[k], zorder=1, color=\"red\", label=\"CB2 Main\")\n", "for i in range(len(hmf_cb2_varysmall)):\n", " axs[0].plot(xbin, hmf_cb2_varysmall[i], lw=lw/2, color=\"black\", zorder=0,\n", " label=\"CB2 Varysmall\" if i == 0 else None)\n", "\n", " axs[1].plot(xbin, hmf_cb2_varysmall[i] / hmf_cb2_main[k], lw=lw/3, color=\"black\", zorder=0)\n", "\n", "\n", "xmin, xmax = xbin.min(), xbin.max()\n", "for i in range(2):\n", " axs[i].set_xscale(\"log\")\n", " axs[i].set_xlabel(r\"$M_{\\mathrm{FoF}}$ $[M_{\\odot}]$\")\n", " axs[i].set_xlim(xmin, xmax)\n", "\n", "axs[0].legend()\n", "axs[0].set_ylabel(r\"HMF $[1 / (h^{-3} \\mathrm{Mpc}^3~\\mathrm{dex})]$\")\n", "axs[1].set_ylabel(r\"$\\mathrm{HMF}_{\\mathrm{Varysmall}}~/~\\mathrm{HMF}_{\\mathrm{Main}}$\")\n", "axs[0].set_yscale(\"log\")\n", "axs[1].set_ylim(0.9, 1.1)\n", "axs[1].axhline(1, color=\"red\", lw=lw, zorder=0)\n", "\n", "fig.tight_layout()\n", "fig.savefig(\"../../plots/varysmall_hmf.png\", dpi=450)\n", "fig.show()" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "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du3aMnU9PT0JCQkhPDycoUOHMmHCBDZv3lxa/sQTT/DMM88wcOBA2rZty4MPPsjo0aOZP3/+RePw9/cnJCSEmJgYnnjiCbKysli3bl1p+ccff0zv3r1LY7jllltITk4uLV+2bBkGg4ElS5bQu3dv3NzcGDhwIHv27CnznOeff57g4GA8PT254447KCgoKFNusVh4+umniYiIwNnZmbi4OBYtWlRafraH8csvv2TQoEG4urrSp08f9u7dy4YNG+jduzceHh6MGTOGlJSUqv2PUAtK7GpgypQp7Ny5kw0bNtg3kMBAmDHDluC9+y507owxNw8fhyicxs3ioEsXkhO3U7TkOZh/J+xYAMX59o1ZREQarbS0NBYtWsSUKVNwd3cvV+7j43PBe48fP85333130dOfMjMz8fPzq3JM+fn5fPTRR4DtnPiziouLeeaZZ9i6dSsLFizg0KFDTJw4sdz9f//733nppZfYuHEjDg4OTJ48ubTsyy+/5J///CfPPfccGzduJDQ0lP/85z9l7n/ttdd46aWXePHFF9m2bRujRo3i6quvZt++fWXqPfXUUzz55JNs3rwZBwcHbrnlFh599FFee+01fvvtN/bv38+MGTOq/N41pVWxtVCvq2JrwmKBn36yJXy9ewNQ+PtazLfcQmF/b5x7BeHm6Q0dR9tOtXAPsHPAIiLN1wVXOTbiodj169fTr18/5s+fz7XXXltp3ejoaE6ePImjoyNms5mCggL69evHokWLLpgAfvnll9x+++1s3ryZrl27Vljn0KFDtG7dGldXV4xGI3l5eVitVnr16sWaNWtwdKx4F4iNGzfSp08fsrOz8fDwKD2W9JdffmH48OEA/O9//+PKK68kPz8fFxcXBg4cSI8ePYiPjy9tp3///hQUFJCQkABAeHg4U6ZM4Yknniit07dvX/r06UN8fHxpvO+99x533HEHAF988QU333wzS5YsYdiwYYCtZ3DOnDllhrLPp1WxUp7RCGPGlCZ1AM6fLsBteyK+7yXg+MwW0r/bTebKT7F+dQesmAWnD9gxYBERaUyq29czbdo0EhIS2LZtW+nCiiuvvLLCfV6XLl3KpEmTePfddy+Y1J1v7ty5bNmyha+//pp27doxZ86cMkndpk2bGDt2LFFRUXh6ejJ48GAAjhw5Uqad7t27l/45NDQUoHTIdteuXeV6GAcM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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure()\n", "\n", "ylow, yhigh = np.percentile(hmf_cb2_main, [16, 84], axis=0)\n", "plt.fill_between(xbin, ylow, yhigh, alpha=0.75, label=\"CB2 Main\")\n", "\n", "ylow, yhigh = np.percentile(hmf_cb2_random, [16, 84], axis=0)\n", "plt.fill_between(xbin, ylow, yhigh, alpha=0.75, label=\"CB2 Random\")\n", "\n", "plt.plot(xbin, hmf_mpdpl2, label=\"MDPL2\", color=\"red\", ls=\"--\")\n", "\n", "plt.yscale(\"log\")\n", "plt.xscale(\"log\")\n", "plt.xlabel(r\"$M_{\\rm FoF} ~ [M_\\odot / h]$\")\n", "plt.ylabel(r\"HMF $[1 / (h^{-3} \\mathrm{Mpc}^3~\\mathrm{dex})]$\")\n", "plt.legend()\n", "plt.xlim(xbin.min(), xbin.max())\n", "\n", "plt.tight_layout()\n", "plt.savefig(\"../../plots/HMF_comparison.png\", dpi=450)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "venv_csiborg", "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.11.7" } }, "nbformat": 4, "nbformat_minor": 2 }