diff --git a/README.md b/README.md index 74ec684..cb5c1f5 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # diffmah ## Installation -The latest release of diffmah is 0.4.1: +The latest release of diffmah is available for installation with pip or conda: ``` $ conda install diffmah ``` @@ -10,14 +10,14 @@ To install diffmah into your environment from the source code: ``` $ cd /path/to/root/diffmah -$ python setup.py install +$ pip install . ``` ### Environment configuration For a typical development environment in conda: ``` -$ conda create -n diffit python=3.9 numpy numba flake8 pytest jax ipython jupyter matplotlib scipy h5py diffmah +$ conda create -n diffit python=3.9 numpy jax pytest ipython jupyter matplotlib scipy h5py diffmah ``` ## Project data @@ -27,11 +27,7 @@ Data for this project can be found [at this URL](https://portal.nersc.gov/projec Online documentation for Diffmah is available [diffmah.readthedocs.io](https://diffmah.readthedocs.io/en/latest/). ## Scripts and demo notebooks -The `diffmah_halo_populations.ipynb` notebook demonstrates how to calculate the MAHs as a function of the diffmah parameters using the `calc_halo_history` function. This notebook also demonstrates how to use the `mc_halo_population` function to generate Monte Carlo realizations of cosmologically representative populations of halos. - -The `diffmah_fitter_demo.ipynb` notebook demonstrates how to fit the MAH of a simulated halo with a diffmah approximation. - -See `history_fitting_script.py` for an example of how to fit the MAHs of a large number of simulated halos in parallel with mpi4py. +The `diffmah_fitter_demo.ipynb` notebook demonstrates how to fit the MAH of a simulated halo with a diffmah approximation. See `history_fitting_script.py` for an example of how to fit the MAHs of a large number of simulated halos in parallel with mpi4py. ## Citing diffmah [The diffmah paper](https://astro.theoj.org/article/26991-a-differentiable-model-of-the-assembly-of-individual-and-populations-of-dark-matter-halos) has been published by the [Open Journal of Astrophysics](https://astro.theoj.org/). Citation information for the paper can be found at [this ADS link](https://ui.adsabs.harvard.edu/abs/2021OJAp....4E...7H/abstract), copied below for convenience: diff --git a/docs/source/diffmah_halo_populations.ipynb b/docs/source/diffmah_halo_populations.ipynb new file mode 100644 index 0000000..f1be0d5 --- /dev/null +++ b/docs/source/diffmah_halo_populations.ipynb @@ -0,0 +1,149 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "recorded-display", + "metadata": {}, + "source": [ + "# Overview of Diffmah and DiffmahPop\n", + "\n", + "Starting from a collection of best-fitting approximations to halo merger trees, you can use the `calc_halo_history` function to compute the assembly history for every halo in the sample. Here we'll just demonstrate a few simple cases.\n", + "\n", + "Note that in these examples, we pass in arbitrary values for the early- and late-time indices. However, for real halos (and also for the results returned by the diffmah-provided MAH fitting script), $0 < \\alpha_{\\rm late} < \\alpha_{\\rm early}.$" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8dc6f535", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from matplotlib import pyplot as plt\n", + "import matplotlib.cm as cm" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "plain-arbor", + "metadata": {}, + "outputs": [], + "source": [ + "from diffmah import calc_halo_history\n", + "\n", + "n_halos, n_times = 50, 100\n", + "tarr = np.linspace(0.5, 13.8, n_times)\n", + "colors=cm.coolwarm(np.linspace(1, 0, n_halos)) # red first\n", + "\n", + "tauc = np.linspace(1, 5, n_halos)\n", + "logmp = 12\n", + "early, late = 2, 1\n", + "dmhdt, log_mah = calc_halo_history(tarr, tarr[-1], logmp, tauc, early, late)\n", + "\n", + "fig, ax = plt.subplots(1, 1)\n", + "__=ax.loglog()\n", + "for ih in range(n_halos):\n", + " __=ax.plot(tarr, 10**log_mah[ih, :], color=colors[ih])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "completed-macro", + "metadata": {}, + "outputs": [], + "source": [ + "tauc = 2.0\n", + "early = np.linspace(1, 3, n_halos)\n", + "late = 1\n", + "dmhdt, log_mah = calc_halo_history(tarr, tarr[-1], logmp, tauc, early, late)\n", + "\n", + "\n", + "fig, ax = plt.subplots(1, 1)\n", + "__=ax.loglog()\n", + "for ih in range(n_halos):\n", + " __=ax.plot(tarr, 10**log_mah[ih, :], color=colors[ih])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "constant-thunder", + "metadata": {}, + "outputs": [], + "source": [ + "tauc = 2.0\n", + "early = 3\n", + "late = np.linspace(0.01, 3, n_halos)\n", + "dmhdt, log_mah = calc_halo_history(tarr, tarr[-1], logmp, tauc, early, late)\n", + "\n", + "fig, ax = plt.subplots(1, 1)\n", + "__=ax.loglog()\n", + "for ih in range(n_halos):\n", + " __=ax.plot(tarr, 10**log_mah[ih, :], color=colors[ih])" + ] + }, + { + "cell_type": "markdown", + "id": "acknowledged-exhibition", + "metadata": {}, + "source": [ + "## Generating Monte Carlo realizations of halo MAHs with DiffmahPop" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "imported-jungle", + "metadata": {}, + "outputs": [], + "source": [ + "from diffmah import mc_halo_population\n", + "\n", + "cosmic_time = np.linspace(0.5, 13.8, 100)\n", + "\n", + "n_halos = 5_000\n", + "logmh = np.zeros(n_halos) + 12\n", + "\n", + "_res = mc_halo_population(cosmic_time, cosmic_time[-1], logmh)\n", + "dmhdt, log_mah, early, late, lgtc, mah_type_arr = _res\n", + "\n", + "fig, ax = plt.subplots(1, 1)\n", + "__=ax.loglog()\n", + "for ih in range(5):\n", + " __=ax.plot(tarr, 10**log_mah[ih, :])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fixed-fluid", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.4" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/source/index.rst b/docs/source/index.rst index 8e84ec8..125e662 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -6,14 +6,19 @@ Welcome to the diffmah documentation ==================================== +Diffmah is a differentiable model for the mass assembly history +of individual and populations of dark matter halos. +The code is open-source and is publicly available on +`GitHub `__. +You can find more information about diffmah in +`our paper `__. + .. toctree:: :maxdepth: 1 :caption: Contents: installation.rst + diffmah_halo_populations.ipynb + citation.rst -.. toctree:: - :maxdepth: 1 - - citation.rst - + diff --git a/docs/source/installation.rst b/docs/source/installation.rst index 98dfff7..85c62d3 100644 --- a/docs/source/installation.rst +++ b/docs/source/installation.rst @@ -4,27 +4,21 @@ Installation instructions Dependencies ------------ -``diffmah`` requires `numpy `__ -and `jax `__. +diffmah requires python>=3.9, and has the following dependencies: + + - `numpy `__ + - `jax `__ Installation ------------ -The latest release of ``diffmah`` is available on conda-forge: +The latest release of diffmah is available on pip and conda-forge: conda install -c conda-forge diffmah -You can also install dsps by downloading the source code or cloning the GitHub +You can also install diffmah by downloading the source code or cloning the GitHub repository and running the standard:: - python setup.py install - -command or its usual variants, such as:: - - python setup.py install --prefix=/PATH/TO/INSTALL/DIRECTORY - -or:: - pip install . To use the latest code on the main branch, you'll need to install from source. diff --git a/notebooks/diffmah_halo_populations.ipynb b/notebooks/diffmah_halo_populations.ipynb deleted file mode 100644 index 6455ef4..0000000 --- a/notebooks/diffmah_halo_populations.ipynb +++ /dev/null @@ -1,231 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "id": "appointed-industry", - "metadata": {}, - "outputs": [], - "source": [ - "%matplotlib inline" - ] - }, - { - "cell_type": "markdown", - "id": "recorded-display", - "metadata": {}, - "source": [ - "# Calculating assembly histories for populations of halos\n", - "\n", - "Starting from a collection of best-fitting approximations to halo merger trees, you can use the `calc_halo_history` function to compute the assembly history for every halo in the sample. Here we'll just demonstrate a few simple cases.\n", - "\n", - "Note that in these examples, we pass in arbitrary values for the early- and late-time indices. However, for real halos (and also for the results returned by the diffmah-provided MAH fitting script), $0 < \\alpha_{\\rm late} < \\alpha_{\\rm early}.$" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "id": "plain-arbor", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from diffmah import calc_halo_history\n", - "import matplotlib.cm as cm\n", - "\n", - "\n", - "n_halos, n_times = 50, 100\n", - "tarr = np.linspace(0.5, 13.8, n_times)\n", - "tauc = np.linspace(1, 5, n_halos)\n", - "logmp = 12\n", - "early, late = 2, 1\n", - "dmhdt, log_mah = calc_halo_history(tarr, tarr[-1], logmp, tauc, early, late)\n", - "colors=cm.coolwarm(np.linspace(1,0,n_halos))\n", - "\n", - "fig, ax = plt.subplots(1, 1)\n", - "__=ax.loglog()\n", - "for ih in range(n_halos):\n", - " __=ax.plot(tarr, 10**log_mah[ih, :], color=colors[ih])\n" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "id": "completed-macro", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from diffmah import calc_halo_history\n", - "import matplotlib.cm as cm\n", - "\n", - "\n", - "n_halos, n_times = 50, 100\n", - "tarr = np.linspace(0.5, 13.8, n_times)\n", - "tauc = 2.0\n", - "logmp = 12\n", - "early = np.linspace(1, 3, n_halos)\n", - "late = 1\n", - "dmhdt, log_mah = calc_halo_history(tarr, tarr[-1], logmp, tauc, early, late)\n", - "colors=cm.coolwarm(np.linspace(1,0,n_halos))\n", - "\n", - "fig, ax = plt.subplots(1, 1)\n", - "__=ax.loglog()\n", - "for ih in range(n_halos):\n", - " __=ax.plot(tarr, 10**log_mah[ih, :], color=colors[ih])\n" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "id": "constant-thunder", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from diffmah import calc_halo_history\n", - "import matplotlib.cm as cm\n", - "\n", - "\n", - "n_halos, n_times = 50, 100\n", - "tarr = np.linspace(0.5, 13.8, n_times)\n", - "tauc = 2.0\n", - "logmp = 12\n", - "early = 3\n", - "late = np.linspace(0.01, 3, n_halos)\n", - "dmhdt, log_mah = calc_halo_history(tarr, tarr[-1], logmp, tauc, early, late)\n", - "colors=cm.coolwarm(np.linspace(1,0,n_halos))\n", - "\n", - "fig, ax = plt.subplots(1, 1)\n", - "__=ax.loglog()\n", - "for ih in range(n_halos):\n", - " __=ax.plot(tarr, 10**log_mah[ih, :], color=colors[ih])\n" - ] - }, - { - "cell_type": "markdown", - "id": "acknowledged-exhibition", - "metadata": {}, - "source": [ - "## Generating Monte Carlo realizations of halo MAHs" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "id": "imported-jungle", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from diffmah import mc_halo_population\n", - "\n", - "cosmic_time = np.linspace(0.5, 13.8, 100)\n", - "\n", - "n_halos = 5_000\n", - "logmh = np.zeros(n_halos) + 12\n", - "\n", - "_res = mc_halo_population(cosmic_time, cosmic_time[-1], logmh)\n", - "dmhdt, log_mah, early, late, lgtc, mah_type_arr = _res\n", - "\n", - "fig, ax = plt.subplots(1, 1)\n", - "__=ax.loglog()\n", - "for ih in range(5):\n", - " __=ax.plot(tarr, 10**log_mah[ih, :])\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "fixed-fluid", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "excessive-dragon", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "physical-shoulder", - "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.8.8" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -}