from google.colab import drive
'/content/drive') drive.mount(
Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount("/content/drive", force_remount=True).
August 28, 2024
This notebook generates some figures of Galactic and Extra-Galactic emissions using PySM. Mostly for displaying purposes.
This notebook is designed to work on Google Colab, remove the apt
lines if executing locally but make sure you have a Latex environment.
Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount("/content/drive", force_remount=True).
# Install Latex to render labels
!apt install texlive texlive-latex-extra texlive-fonts-recommended cm-super-minimal dvipng
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
cm-super-minimal is already the newest version (0.3.4-17).
dvipng is already the newest version (1.15-1.1).
texlive is already the newest version (2021.20220204-1).
texlive-fonts-recommended is already the newest version (2021.20220204-1).
texlive-latex-extra is already the newest version (2021.20220204-1).
0 upgraded, 0 newly installed, 0 to remove and 49 not upgraded.
Requirement already satisfied: pysm3 in /usr/local/lib/python3.10/dist-packages (3.4.0)
Requirement already satisfied: healpy>=1.16.0 in /usr/local/lib/python3.10/dist-packages (from pysm3) (1.17.3)
Requirement already satisfied: numba in /usr/local/lib/python3.10/dist-packages (from pysm3) (0.60.0)
Requirement already satisfied: toml in /usr/local/lib/python3.10/dist-packages (from pysm3) (0.10.2)
Requirement already satisfied: astropy in /usr/local/lib/python3.10/dist-packages (from pysm3) (6.1.2)
Requirement already satisfied: numpy>=1.19 in /usr/local/lib/python3.10/dist-packages (from healpy>=1.16.0->pysm3) (1.26.4)
Requirement already satisfied: pyerfa>=2.0.1.1 in /usr/local/lib/python3.10/dist-packages (from astropy->pysm3) (2.0.1.4)
Requirement already satisfied: astropy-iers-data>=0.2024.7.1.0.34.3 in /usr/local/lib/python3.10/dist-packages (from astropy->pysm3) (0.2024.8.26.0.31.57)
Requirement already satisfied: PyYAML>=3.13 in /usr/local/lib/python3.10/dist-packages (from astropy->pysm3) (6.0.2)
Requirement already satisfied: packaging>=19.0 in /usr/local/lib/python3.10/dist-packages (from astropy->pysm3) (24.1)
Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /usr/local/lib/python3.10/dist-packages (from numba->pysm3) (0.43.0)
for freq in freqs:
m = sky.get_emission(freq)
hp.projview(m[0].value, min=-250, max=250,
fontsize=fontsize,
unit=astropy.units.format.Latex.to_string(m.unit), title=f"Cosmic Microwave Background {int(freq.value)} {freq.unit}");
filename = f"data/cmb/cmb_{int(freq.value):03d}{freq.unit}"
plt.savefig(f"{filename}.jpg", bbox_inches="tight")
hp.write_map(f"{filename}.fits", m, dtype=np.float32, overwrite=True)
total 4.0M
drwxr-xr-x 2 root root 4.0K Aug 28 21:02 ./
drwxr-xr-x 1 root root 4.0K Aug 28 21:05 ../
-rw-r--r-- 1 root root 583K Aug 28 21:02 cmb_023GHz.fits
-rw-r--r-- 1 root root 89K Aug 28 21:02 cmb_023GHz.jpg
-rw-r--r-- 1 root root 583K Aug 28 21:02 cmb_100GHz.fits
-rw-r--r-- 1 root root 89K Aug 28 21:02 cmb_100GHz.jpg
-rw-r--r-- 1 root root 583K Aug 28 21:02 cmb_143GHz.fits
-rw-r--r-- 1 root root 89K Aug 28 21:02 cmb_143GHz.jpg
-rw-r--r-- 1 root root 583K Aug 28 21:02 cmb_353GHz.fits
-rw-r--r-- 1 root root 89K Aug 28 21:02 cmb_353GHz.jpg
-rw-r--r-- 1 root root 583K Aug 28 21:02 cmb_545GHz.fits
-rw-r--r-- 1 root root 89K Aug 28 21:02 cmb_545GHz.jpg
-rw-r--r-- 1 root root 583K Aug 28 21:02 cmb_857GHz.fits
-rw-r--r-- 1 root root 89K Aug 28 21:02 cmb_857GHz.jpg
for freq in freqs:
m = sky.get_emission(freq)
hp.projview(m[0].value, min=2e-4, max=2,
fontsize=fontsize, norm="log", cmap="planck",
unit=astropy.units.format.Latex.to_string(m.unit), title=f"Synchrotron {int(freq.value)} {freq.unit}");
filename = f"data/synch/synch_{int(freq.value):03d}{freq.unit}"
plt.savefig(f"{filename}.jpg", bbox_inches="tight")
hp.write_map(f"{filename}.fits", m, dtype=np.float32, overwrite=True)
for freq in freqs:
m = sky.get_emission(freq)
hp.projview(m[0].value, min=1e-3, max=10,
fontsize=fontsize, norm="log", cmap="inferno",
unit=astropy.units.format.Latex.to_string(m.unit), title=f"Thermal dust {int(freq.value)} {freq.unit}");
filename = f"data/dust/dust_{int(freq.value):03d}{freq.unit}"
plt.savefig(f"{filename}.jpg", bbox_inches="tight")
hp.write_map(f"{filename}.fits", m, dtype=np.float32, overwrite=True)
--2024-08-28 21:10:32-- https://github.com/ajvanengelen/webskylensing/raw/master/data/unlensed_scalar_cls.npy
Resolving github.com (github.com)... 140.82.112.4
Connecting to github.com (github.com)|140.82.112.4|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://raw.githubusercontent.com/ajvanengelen/webskylensing/master/data/unlensed_scalar_cls.npy [following]
--2024-08-28 21:10:32-- https://raw.githubusercontent.com/ajvanengelen/webskylensing/master/data/unlensed_scalar_cls.npy
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 594200 (580K) [application/octet-stream]
Saving to: ‘unlensed_scalar_cls.npy.2’
unlensed_scalar_cls 100%[===================>] 580.27K --.-KB/s in 0.07s
2024-08-28 21:10:32 (8.37 MB/s) - ‘unlensed_scalar_cls.npy.2’ saved [594200/594200]
$\ell$,TT,TE,EE,BB
0,0.0,0.0,0.0,0.0
1,0.0,0.0,0.0,0.0
2,995.3154178522041,2.5678813147237656,0.03068555924377693,0.0
3,940.797373475778,2.8805688992805507,0.039375529374249686,0.0
4,888.9080373827597,2.7009377515312614,0.034154868839899724,0.0
5,850.2545787469378,2.2994395560609573,0.022813455622875737,0.0
6,823.8512963911593,1.8516067949264907,0.012761672561211228,0.0
7,807.0245320756949,1.4541692613753545,0.006882574522918757,0.0
8,796.8574845365462,1.149021628441058,0.004419579920058423,0.0