如何使用 Astropy/Astroquery 获得斯隆量级

How to use Astropy/Astroquery to get Sloan magnitudes

我想创建一个脚本来从一组对象下载震级。例如出现在这里的那些:

http://mirror.sdss3.org/spectrumDetail?plateid=556&mjd=51991&fiber=312

作为输入,我有对象坐标(这是我从 astroquery get_spec 方法获得的,因为我知道对象的 mjd、板和纤维)。我正在尝试使用 astroquery 网站上的示例:

from astropy import coordinates as coords
from astroquery.sdss import SDSS

co = coords.SkyCoord(143.50993, 55.239775, unit="deg")
result = SDSS.query_region(co)
imgs = SDSS.get_images(co, band = ['g', 'r'])

但是,从下载的图像中我找不到星等。我怎样才能找到我的物体的大小?

从事物的声音来看,您想要从 SDSS 管道中吐出的对象的属性,通过坐标交叉匹配。

要做到这一点,请查看 SDSS.query_crossid 方法。这允许您指定所需的光度列。

由于我不了解你正在做的科学,你必须找出最适合你的目标的方法。查看 here 各种可用的量级。

例如,如果我想要 g 和 r 波段 model magnitudes 作为您的对象,我会这样做:

In [31]: result = SDSS.query_crossid(co, photoobj_fields=['modelMag_g', 'modelMag_i'])

In [32]: print result
Out[32]: 
obj_id        objID        modelMag_g modelMag_i       obj_id1        type 
 str5         int64         float64    float64          int64         str6 
------ ------------------- ---------- ---------- ------------------- ------
 obj_0 1237654382516699210   17.57231   18.13992 1237654382516699210 GALAXY