Skip to content

deepskies/DeepSZSim

Repository files navigation

DeepSZSim

Code for producing fast simulations of the SZ effect for galaxy halos of varying z, $M_{200}$, based on average thermal pressure profile fits from Battaglia et al. 2012. Simulated submaps can include tSZ signal from these halos, simulated CMB, instrument beam convolution and white noise.

Installation

We provide an environment specification file for conda or mamba users at environment.yml. With conda, an environment is created by conda env create -f environment.yml. With micromamba the env is omitted and a new environment is instead created with micromamba create -f environment.yml.

The simulated CMB signal relies on camb and utilities for saving rely on h5py.

From the top-level directory, you can do pip install .

Usage

The usage of this code is documented in notebooks/demo_simulation.ipynb. A detailed walkthrough of the functions available in this code is in notebooks/demo_full_pipeline.ipynb.

A full list of potential inputs is documented in settings/config.yaml and you can edit settings/inputdata.yaml to reflect your desired simulation settings.

dm_halo_dist.py generates a z, $M_{200}$ array. The functions in make_sz_cluster.py create pressure profiles, Compton-y, and SZ signal maps from these halos of various z, $M_{200}$ and produce the final simulated submaps. These submaps contain simulated CMB and simple instrument beam convolution from simtools.py and white noise from noise.py. Plotting tools are provided in visualization.py.

Citation

If you use this code in your research, please cite this GitHub repo. Please also make use of the citation instructions for camb provided here.

Contributing

If you would like to contribute, please open a new issue, and/or be in touch with the authors

Contact

The code was developed by Eve M. Vavagiakis, Camille Avestruz, Kush Banker, Ioana Cristescu, Samuel D. McDermott, Brian Nord, Elaine Ran, Hanzhi Tan, and Brian Zhang, and is maintained by the DeepSkies lab