You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Python按恒星名称查询Gaia获取视差、kmag等参数

Gaia指定恒星查询实现方案

核心原理

Gaia官方发布的主源表gaiadr2.gaia_source本身不存储恒星通用名称,需要关联官方提供的交叉证认表gaiadr2.identifications获取名称和source_id的对应关系;如果需要K波段星等(kmag),还需要额外关联2MASS交叉匹配表gaiadr2.tmass_best_neighbour获取对应参数。

实现代码

1. 单个恒星查询示例

以下示例可以直接传入恒星标准名称查询所需参数:

# 替换为你要查询的恒星名称
target_name = "Sirius"

query = f"""
SELECT 
    i.original_ext_source_id AS star_name,
    g.source_id,
    g.ra,
    g.dec,
    g.parallax,
    1000/g.parallax AS distance_pc, -- 视差转距离,单位秒差距
    g.phot_g_mean_mag AS gmag, -- Gaia G波段星等
    t.k_m AS kmag -- 2MASS K波段星等
FROM gaiadr2.gaia_source g
-- 关联名称证认表获取恒星名称
JOIN gaiadr2.identifications i 
    ON g.source_id = i.source_id
-- 关联2MASS表获取K波段星等
LEFT JOIN gaiadr2.tmass_best_neighbour t 
    ON g.source_id = t.source_id
WHERE 
    -- 过滤指定恒星名称,需要和SIMBAD标准命名完全一致
    i.original_ext_source_id = '{target_name}'
    -- 过滤视差精度较高的源,避免距离计算误差过大
    AND g.parallax_over_error > 5
"""
job = Gaia.launch_job(query)
results = job.get_results()

2. 批量查询多个恒星

如果需要一次性查询一组恒星,直接修改WHERE条件的过滤规则即可:

# 替换为你的恒星名称列表
target_list = ["Sirius", "Vega", "Betelgeuse", "Arcturus"]
# 把列表拼接为SQL IN语句需要的格式
name_condition = "', '".join(target_list)

query = f"""
SELECT 
    i.original_ext_source_id AS star_name,
    g.source_id,
    g.ra,
    g.dec,
    g.parallax,
    1000/g.parallax AS distance_pc,
    g.phot_g_mean_mag AS gmag,
    t.k_m AS kmag
FROM gaiadr2.gaia_source g
JOIN gaiadr2.identifications i 
    ON g.source_id = i.source_id
LEFT JOIN gaiadr2.tmass_best_neighbour t 
    ON g.source_id = t.source_id
WHERE 
    i.original_ext_source_id IN ('{name_condition}')
    AND g.parallax_over_error > 5
"""
job = Gaia.launch_job(query)
results = job.get_results()

注意事项

  • 恒星名称拼写需要和SIMBAD等天文标准星表的命名完全一致,大小写敏感,若查询无返回可以先验证目标的标准名称是否正确。
  • 若使用Gaia DR3版本数据,将SQL语句中的gaiadr2统一替换为gaiadr3即可,字段规则基本兼容。
  • 视差直接取倒数计算距离的方法仅适用于近场、视差误差小的恒星,远场大误差目标建议使用专业的距离反演方法计算,避免结果偏差过大。
  • 若部分恒星在identifications表中无匹配记录,可以提前通过交叉证认获取目标的Gaia source_id,直接通过g.source_id IN (id1, id2...)的方式过滤,查询效率更高。

内容的提问来源于stack exchange,提问作者Random_Astro_Student

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 07:27:06