CMB地图的HEALPix FITS文件如何转换为ndarrays?坐标是什么?

时间:2015-04-16 17:57:13

标签: python numpy healpy

我正在使用Healpy(用Python开发的HEALPix工具)来读写全天空CMB地图。

我对天空地图上的像素坐标如何转换为numpy ndarray的条目感到困惑。 FITS文件中的一个HEALPix像素如何转换为ndarray条目?

例如,假设我使用默认的RING方案生成了CMB映射,Nside = 64,lmax = 64。像素总数由Npix = 12 * Nside ** 2给出。所以,对于我的例子,这是49152总像素数。

我所拥有的FITS文件格式为1列48行。 (1列是所有温度值。)因此,我将此文件转换为n-dim numpy ndarray。这个数组的形状给出(48,1024)。

问题1:这个二维数组是天空中所有地图像素投影到"矩阵"形成?我觉得是这样的。用我的例子,48 * 1024 = 49152,总像素数。

问题2:1024标准来自哪里?这对HEALPix地图及其坐标意味着什么?一个2-dim ndarray条目(像素)如何与另一个相关(按角度,通过HEALPix位置等)?

另一个例子,地图Nside = 1024。当我将其转换为二维ndarray时,我得到了形状(12288,1024)。

编辑:为什么这种1024元素数组的约定存在?这与地图上的像素坐标如何对应?

1 个答案:

答案 0 :(得分:0)

关于HEALPIX像素化的最佳信息来源是Healpix引物:

http://healpix.jpl.nasa.gov/html/intro.htm

地图是一维向量,每个索引都是天空中的一个像素。 您可以使用hp.pix2ang将像素数转换为天空中的坐标。

以1024行的方式对其进行整形只是一种快速读写/写入磁盘的技巧。