Compute synchrotron curvature harmonic coefficients

[ ]:
import numpy as np
import healpy as hp
from pathlib import Path
[ ]:
datadir=Path("data/")
output_dir = Path("production-data/synch")
output_dir_raw = output_dir / "raw"
[ ]:
output_nside = 8192
[ ]:
output_lmax = min(int(2.5 * output_nside), 8192 * 2)

\(a_{\ell m}\)

[ ]:
alm = hp.read_alm(
    output_dir_raw / f"synch_curvature_alm_nside8192_lmax16384.fits",
    hdu=1,
)
[ ]:
alm_clip = hp.almxfl(alm, np.ones(output_lmax + 1))
del alm
[ ]:
output_map = hp.alm2map(alm_clip.astype(np.complex128), nside=output_nside)
[ ]:
output_filename = output_dir / f"synch_curvature_nside{output_nside}.fits"
[ ]:
hp.write_map(output_filename, output_map, dtype=np.float32, overwrite=True)
[ ]:
from pysm3.utils import add_metadata
[ ]:
add_metadata([output_filename], coord="G", unit="", ref_freq="23 GHz", ell_max=str(output_lmax))