yusuke-takase / grasp2alm

Package supporting conversion from GRASP beam format to spherical harmonic coefficients for CMB experiments
GNU General Public License v3.0
0 stars 2 forks source link

Do we need to combine main beams and far side lobes? #4

Open mreineck opened 2 months ago

mreineck commented 2 months ago

This is not really an issue with the code, but something I remember from the Planck mission that might(?) be relevant for LiteBIRD as well...

Planck beams came in pairs of files: a GRD file containing a high resolution, small grid describing the main beam, and a lower resolution CUT file containing the entire beam including the far side lobes. Before generating a_lm for the full beam, these data sets somehow had to be combined, and I suspect it was not possible just to add the two components together, because that would potentially double the contribution of the main beam.

I do not actually know how it was done for Planck and who did it, but if beams are delivered in this form for LiteBIRD as well, this is something we need to keep in mind. And the problem needs to be addressed before going to a_lm, since afterwards it will be impossible to distinguish main beam and side lobes.

yusuke-takase commented 2 months ago

This is a good point. I have experienced that if we do map2alm for the full beam, we can't go back the original beam map by alm2map due to the aliasing that caused by the sharpness of main beam. From this point of view, it seems that to separate the range of beam is might be good idea...? (I also think this artifact is given by healpix so that when the issue about interpolation) will be solved, the problem will not be a matter.)

I can put example here.

import grasp2alm as g2a
import numpy as np
import healpy as hp

cut = g2a.BeamCut(cutfile)
nside = 1024
bmmap = cut.to_polar().to_map(nside)
blm = bmmap.to_alm()
bmmap2 = hp.alm2map(blm, nside)
hp.orthview(10*np.log10(np.abs(bmmap.map[0])), rot=(0,90), title="Original beam map")
hp.orthview(10*np.log10(np.abs(bmmap2[0])), rot=(0,90), title="alm2map(blm)")

original returned