2015-04-17 53 views
0

我是HEALPix的新手,也是Python的新手。我嘗試使用healpy將HEALPix索引轉換爲RA,Dec。 ,我感到我必須使用pix2ang,但找不出如何輸出θ,Φ轉換爲RA,十二月......我想這:Healpy pix2ang:從HEALPix索引轉換爲RA,Dec或glong,glat

import healpy as hp 
import numpy as np 
theta, phi = hp.pix2ang(256, 632668 ,nest=True) 
ra= phi*180./np.pi 
dec = 90.-(theta*180./np.pi) 

,但它似乎並沒有給予正確的結果。

希望有人能幫助!

回答

1

首先,方法pix2ang(nside,indx)爲您提供像素的座標與數字indx。像素號與座標不直接相關,即兩個連續的像素號不一定彼此相鄰。其次,如Healpix手冊(它是healpy的基本代碼)(http://healpix.sourceforge.net/html/csubnode2.htm)中所寫,角度θ在[0,pi]範圍內定義,因此它不能直接表示偏角[-pi/2, PI/2]。

所以我要做的就是我定義了一個轉變,而且我在兩個函數實現它,例如:

def IndexToDeclRa(index): 
    theta,phi=hp.pixelfunc.pix2ang(NSIDE,index) 
    return -np.degrees(theta-pi/2.),np.degrees(pi*2.-phi) 

def DeclRaToIndex(decl,RA): 
    return hp.pixelfunc.ang2pix(NSIDE,np.radians(-decl+90.),np.radians(360.-RA)) 

然後在地圖本身不會在申報& RA,但如果你堅持使用IndexToDeclRaDeclRaToIndex你會有效地擁有你所需要的東西。

相關問題