python怎样使用各个日期赤纬_天文数据处理笔记之python(3)

今天介绍的主要是赤经赤纬相关内容,里面用到的csv文件和data文件课程官网没提供链接,各位只能去官网提供的平台练习,或者要是自己有类似的数据文件也可以拿来练习。第一节用到的fit文件已经从官网上提供的链接上下载下来了,将附在第一节的评论里。

本节最后寻找对应体的代码比较长,我自己写的和答案给的不一样,我把它们都放了出来供大家参考参考。笔记可能写的不全面,要是看不懂推荐大家去coursera上看完整的课程,也欢迎在评论区提问。

匹配不同波段的同一个星

样本:

AT20G Bright Source Sample (BSS) catalogue

SuperCOsmOS all-sky galaxy catalogue

地坪坐标:与观测的时间或地点有关

赤道坐标:赤道坐标相对于天球是固定的,因此其位置与观测的时间或地点无关。

春分点是天赤道与黄道的交点,春分点为经度开始的地方

赤经(right ascension RA):一圈24小时,用HMS(hours-minutes-seconds)标记,1小时等于15度,1小时又可分为60分钟,1分钟可分为60秒

赤纬(declination dec ):从天赤道到该点的角度,向北(负值表示向南)。用DMS(degree-minutes-seconds)标记,一圈360度,每度有60角分,每角分有60角秒

岁差:春分点所对应的位置会发生微小变化

将赤经HMS转变为十进制度数

def hms2dec(h,m,s):

if h<0:

hmsd=-15*(-h+m/60+s/3600)

else:

hmsd=15*(h+m/60+s/3600)

return hmsd

将赤纬DMS转变为度数

def dms2dec(d,m,s):

if d<0:

dmsd=-1*(-d+m/60+s/3600)

else:

dmsd=d+m/60+s/3600

return dmsd

# You can use this to test your function.

# Any code inside this `if` statement will be ignored by the automarker.

if __name__ == '__main__':

# The first example from the question

print(hms2dec(23, 12, 6))

# The second example from the question

print(dms2dec(22, 57, 18))

# The third example from the question

print(dms2dec(-66, 5, 5.1))

由赤经赤纬计算两颗星的角距离:

(α1,δ1)分别是赤经和赤纬,单位为度

大多数语言和库(包括Python和NumPy)中的三角函数以弧度为单位,但是我们正在使用的是角度。

角度弧度转换:

a_rad = np.radians(a_deg)

a_deg = np.degrees(a_rad)

完整程序,已知两个星的角度坐标(ra1, dec1, ra2, dec2)

import numpy as np

def angular_dist(RA1, dec1, RA2, dec2):

# Convert to radians将角度变为弧度

r1 = np.radians(RA1)

d1 = np.radians(dec1)

r2 = np.radians(RA2)

d2 = np.radians(dec2)

a = np.sin(np.abs(d1 - d2)/2)**2

b = np.cos(d1)*np.cos(d2)*np.sin(np.abs(r1 - r2)/2)**2

angle = 2*np.arcsin(np.sqrt(a + b))

# Convert back to degrees

return np.degrees(angle)

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值