This repository collects the codes to run the analysis on the lack-of-correlation anomaly using Gravitational Waves (GWs). The reference paper is:
Giacomo Galloni, Mario Ballardini, Nicola Bartolo, Alessandro Gruppuso, Luca Pagano, Angelo Ricciardone, ``Unraveling the CMB lack-of-correlation anomaly with the cosmological gravitational wave background'', JCAP10(2023)013, arxiv: 2305.18184.
For further details on the analysis refer to that work.
If you use this code, or part of it, please cite the paper above.
Note that you need to have some of Planck data to successfully run this code. In particular, you need the common intensity mask and SMICA full-sky map. They should be placed in the Planck_data folder, together with the Planck's colormap, which I already provided. Alternatively, you should modify the path to find these data in the GW_lack_corr/src/classes/settings.py file.
These are the necessary dependencies to run the analysis:
- pathlib
- ray
- numba
- numpy
- pandas
- scipy
- healpy
- pymaster
- progressbar
- time
- matplotlib
In order to run the code you also need an implementation of CLASS (D. Blas et al., 2011), which encodes the Boltzmann equations for the CGWB, as defined in A. Ricciardone et al., 2021.
Assuming that you have all the necessary dependencies, data, and input spectra, to perform the analysis it is sufficient to run GW_lack_corr/complete_pipeline.py. Alternatively, if you want to run the analysis on a single GW_lack_corr/individual_runs/run_lmax4.py, GW_lack_corr/individual_runs/run_lmax6.py or GW_lack_corr/individual_runs/run_lmax10.py.
As an example, I provide the results of a test pipeline, named "testing", assuming data/testing you can find every product of the analysis, figures included.
To run the actual analysis, I use GW_lack_corr/complete_pipeline.py script takes approximately 20 minutes to finish (I have 16 GB of RAM and 8 cores for a total of 16 CPUs). Also, the resulting folder containing the products will occupy approximately 104 GB.
