使用 CAMB 和 Healpy 生成 E 和 B 模式图
Producing E and B mode maps using CAMB and Healpy
我一直在尝试使用 CAMB 和 healpy 制作 E 和 B 模式地图,但是到目前为止我制作的东西看起来并不多。
我正在使用 CAMB 在以下位置生成模拟地图 link:
http://lambda.gsfc.nasa.gov/toolbox/tb_camb_form.cfm,
除了选中张量 cl 和变化 r 的复选框外,我保留了所有默认参数。
有了这个我一直在使用下面的代码来制作地图:
# read in the power spectra produced by camb, ordering is: [TT, EE, BB, TE]
cl = hp.read_cl('scalar_and_tensor_power_spectra_produced_by_CAMB.fits')
# set the random seed for phase information
numpy.random.seed(some number) #Im using 1 for now
#Produce E mode and B mode maps
EEmap = hp.synfast(cl[1], NSIDE)
BBmap = hp.synfast(cl[2], NSIDE)
快速 google 搜索显示的结果与我得到的结果非常不同,您可以在下面的 link 中看到:
http://tinypic.com/view.php?pic=ifvrpt&s=9#.VmY7Jx8So8o
http://tinypic.com/view.php?pic=a5ngx&s=9#.VmY7KR8So8o
我期待在 E 和 B 中看到某些图案,因为它们具有渐变和卷曲成分,这在我在网上找到的图像中很明显,但在我的产品中却没有。
所以我有三个问题:
我用来制作地图的逻辑是否有错误?
是否需要额外过滤才能看到预期的 E 和 B 模式?
- 类似下面的内容 link:
http://cosmologist.info/polar/EBsupport.html
在 healpy 以外的 healpix 版本中,mollview 中有一个名为 POLARIZATION 的参数(http://healpix.jpl.nasa.gov/html/idlnode33.htm#idl:mollview:polarization)
其中设置 POLARIZATION = 3 允许您将偏振信息绘制为无头矢量。这就是我认为他们在这里所做的:
http://bicepkeck.org/media/b_over_b_rect_BICEP2.png
&这里的第一张图片:
https://inspirehep.net/record/787860/plots,
有没有办法在 healpy 中做到这一点?由于POLARIZATION参数似乎没有包含在这个版本中。
请参阅 synalm
http://healpy.readthedocs.org/en/1.x/generated/healpy.sphtfunc.synalm.html#healpy.sphtfunc.synalm 的帮助,如果您这样做 hp.synfast(cl)
就是用 cl
的温度创建温度图。
您应该为每个组件(即 TT、EE、BB、TE)创建一个 Cl 列表,然后让所有 Cl 为零,只有一个非零。
您可以使用假设为 1 度的高斯光束平滑输出图,以模拟真实仪器如何看待该信号。
不支持在 healpy
中绘制 vectos
我一直在尝试使用 CAMB 和 healpy 制作 E 和 B 模式地图,但是到目前为止我制作的东西看起来并不多。
我正在使用 CAMB 在以下位置生成模拟地图 link: http://lambda.gsfc.nasa.gov/toolbox/tb_camb_form.cfm, 除了选中张量 cl 和变化 r 的复选框外,我保留了所有默认参数。
有了这个我一直在使用下面的代码来制作地图:
# read in the power spectra produced by camb, ordering is: [TT, EE, BB, TE]
cl = hp.read_cl('scalar_and_tensor_power_spectra_produced_by_CAMB.fits')
# set the random seed for phase information
numpy.random.seed(some number) #Im using 1 for now
#Produce E mode and B mode maps
EEmap = hp.synfast(cl[1], NSIDE)
BBmap = hp.synfast(cl[2], NSIDE)
快速 google 搜索显示的结果与我得到的结果非常不同,您可以在下面的 link 中看到: http://tinypic.com/view.php?pic=ifvrpt&s=9#.VmY7Jx8So8o http://tinypic.com/view.php?pic=a5ngx&s=9#.VmY7KR8So8o
我期待在 E 和 B 中看到某些图案,因为它们具有渐变和卷曲成分,这在我在网上找到的图像中很明显,但在我的产品中却没有。
所以我有三个问题:
我用来制作地图的逻辑是否有错误?
是否需要额外过滤才能看到预期的 E 和 B 模式?
- 类似下面的内容 link: http://cosmologist.info/polar/EBsupport.html
在 healpy 以外的 healpix 版本中,mollview 中有一个名为 POLARIZATION 的参数(http://healpix.jpl.nasa.gov/html/idlnode33.htm#idl:mollview:polarization) 其中设置 POLARIZATION = 3 允许您将偏振信息绘制为无头矢量。这就是我认为他们在这里所做的: http://bicepkeck.org/media/b_over_b_rect_BICEP2.png &这里的第一张图片: https://inspirehep.net/record/787860/plots, 有没有办法在 healpy 中做到这一点?由于POLARIZATION参数似乎没有包含在这个版本中。
请参阅
synalm
http://healpy.readthedocs.org/en/1.x/generated/healpy.sphtfunc.synalm.html#healpy.sphtfunc.synalm 的帮助,如果您这样做hp.synfast(cl)
就是用cl
的温度创建温度图。 您应该为每个组件(即 TT、EE、BB、TE)创建一个 Cl 列表,然后让所有 Cl 为零,只有一个非零。您可以使用假设为 1 度的高斯光束平滑输出图,以模拟真实仪器如何看待该信号。
不支持在
healpy
中绘制 vectos