csiborgtools/scripts_plots/paper_environment.ipynb

185 lines
764 KiB
Text
Raw Normal View History

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# flake8: noqa\n",
"\n",
"from os.path import join\n",
"\n",
"import csiborgtools\n",
"import healpy\n",
"import matplotlib.pyplot as plt\n",
"import numpy\n",
"import scienceplots\n",
"from cache_to_disk import cache_to_disk, delete_disk_caches_for_function\n",
"from h5py import File\n",
"\n",
"import plt_utils\n",
"\n",
"\n",
"%load_ext autoreload\n",
"%autoreload 2"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [],
"source": [
"# flake8: noq\n",
"\n",
"@cache_to_disk(30)\n",
"def _plot_sky_projected_density(nsim, simname, grid, nside, MAS, survey_name,\n",
" dmin, dmax):\n",
" paths = csiborgtools.read.Paths(**csiborgtools.paths_glamdring)\n",
" boxsize = csiborgtools.simname2boxsize(simname)\n",
"\n",
" if simname == \"csiborg1\":\n",
" reader = csiborgtools.read.CSiBORG1Field(nsim, paths)\n",
" elif \"csiborg2\" in simname:\n",
" kind = simname.split(\"_\")[-1]\n",
" reader = csiborgtools.read.CSiBORG2Field(nsim, paths, kind=kind)\n",
" else:\n",
" raise ValueError(f\"Unknown simname `{simname}`.\")\n",
"\n",
" field = reader.density_field(MAS, grid)\n",
"\n",
" if survey_name == \"2M++\":\n",
" survey = csiborgtools.read.TwoMPPGalaxies()\n",
" dist = survey[\"ZCMB\"] * 3e5 / 100\n",
" ra, dec = survey[\"RA\"], survey[\"DEC\"]\n",
" ra *= numpy.pi / 180\n",
" dec *= numpy.pi / 180\n",
" elif survey_name == \"SDSS\":\n",
" survey = csiborgtools.SDSS()()\n",
" dist = survey[\"DIST\"]\n",
" ra, dec = survey[\"RA\"], survey[\"DEC\"]\n",
" ra *= numpy.pi / 180\n",
" dec *= numpy.pi / 180\n",
" else:\n",
" raise ValueError(f\"Unknown survey name `{survey_name}`.\")\n",
" \n",
" mask = (dist > dmin) & (dist < dmax)\n",
" ra = ra[mask]\n",
" dec = dec[mask]\n",
"\n",
"\n",
" angpos = csiborgtools.field.nside2radec(nside)\n",
" dist = numpy.linspace(dmin, dmax, 1000)\n",
" dmap = csiborgtools.field.make_sky(field, angpos=angpos, dist=dist,\n",
" boxsize=boxsize)\n",
" return dmap, ra, dec"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
"def plot_sky_projected_density(nsim, simname, grid, nside, MAS=\"PCS\",\n",
" dmin=0, dmax=220, survey_name=\"2M++\",\n",
" ext=\"png\", to_save=False):\n",
" dmap, ra, dec = _plot_sky_projected_density(\n",
" nsim, simname, grid, nside, MAS, survey_name, dmin, dmax)\n",
" \n",
" with plt.style.context(plt_utils.mplstyle):\n",
" healpy.mollview(numpy.log10(dmap), fig=0, title=\"\", unit=\"\", rot=90)\n",
"\n",
" healpy.projscatter(numpy.pi / 2 - dec, ra, s=0.05, c=\"red\",\n",
" label=\"2M++ galaxies\")\n",
"\n",
" if to_save:\n",
" fout = join(plt_utils.fout, f\"sky_density_{simname}_{nsim}_from_{dmin}_to_{dmax}.{ext}\") # noqa\n",
" print(f\"Saving to `{fout}`.\")\n",
" plt.savefig(fout, dpi=plt_utils.dpi, bbox_inches=\"tight\")\n",
" plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 850x540 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# delete_disk_caches_for_function(\"_plot_sky_projected_density\")\n",
"plot_sky_projected_density(15517, \"csiborg2_main\", 1024, 128, \"SPH\", dmin=100,\n",
" dmax=125, survey_name=\"2M++\", to_save=False)\n",
"# plt.savefig(\"test.png\", dpi=300)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"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.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}