Как файлы HEALPix FITS карт CMB переводятся в ndarrays? Каковы координаты?
Я использую Healpy (инструменты HEALPix, разработанные на Python), чтобы читать и писать карты CMB в полном небе.
Я запутался в том, как координаты пикселей на карте неба преобразуются в записи с множеством ндаррэй. Как один пиксель HEALPix в файле FITS преобразуется в запись ndarray?
Например, допустим, у меня есть сгенерированная карта CMB, Nside=64, lmax=64, с использованием схемы RING по умолчанию. Общее количество пикселей определяется как Npix=12*Nside**2. Итак, для моего примера это общее количество пикселей составляет 49152.
Файл FITS, который у меня есть, находится в столбце формата 1 на 48 строк. (Столбец 1 содержит все значения температуры.) Итак, я преобразую этот файл в n-dim numpy ndarray. Форма этого массива дает (48,1024).
Вопрос 1. Является ли этот двумерный массив проекцией всех пикселей карты на небе в виде "матрицы"? Я думаю, что это. Используя мой пример, 48*1024 = 49152, общее количество пикселей.
Вопрос 2: Откуда берется стандарт 1024? Что это означает с точки зрения карты HEALPix и ее координат? Как одна 2-мерная запись (пиксель) связана с другой (по углу, по положению HEALPix и т. Д.)?
Для другого примера карта Nside=1024. Когда я преобразую это в 2-мерный ndarray, я получаю форму (12288, 1024).
РЕДАКТИРОВАТЬ: Почему существует это соглашение о массивах из 1024 элементов? Как это соответствует пиксельным координатам на карте?
1 ответ
Лучшим источником информации о пикселизации HEALPIX является праймер Healpix:
http://healpix.jpl.nasa.gov/html/intro.htm
Карта - это одномерный вектор, каждый индекс - это пиксель в небе. Вы можете превратить номер пикселя в координаты в небе, используя hp.pix2ang
,
Формирование его в строках по 1024 - просто хитрость для ускорения чтения / записи на диск.