# ga&ra2az.py
# 2021.01.07 by ***
from astropy import units as u #單位
from astropy.time import time
from astropy.coordinates import skycoord
from astropy.coordinates import earthlocation
from astropy.coordinates import altaz
import numpy as np
import matplotlib.pyplot as plt
#赤道轉銀道
c=skycoord('20:12:06.542 38:21:17.78', unit=(u.hourangle, u.deg))
print(c.galactic)
#銀道轉赤道
gc=skycoord(l=229.5*u.degree, b=-0.5*u.degree, frame='galactic') #1235+340 123.5 34.0
print(gc.icrs.to_string('hmsdms'))
#某一utc時刻、某地理緯度、某天體座標對應的望遠鏡方位、俯仰
c=skycoord('12:50:56 41:08:08',unit=(u.hourangle,u.deg))
observing_time = time('2020-01-05 20:50:00') #utc時間,not北京時
dlh=earthlocation(lon=97.369751 * u.deg, lat=37.377139 * u.deg, height=3000 * u.m)
aa=altaz(location=dlh, obstime=observing_time)
print(c.transform_to(aa)) #方位俯仰與時間對應13.7m觀測記錄稍有差別,是因為本地時和北京時的差(+7.*小時)
#俯仰隨utc變化
c=skycoord('05:06:52 42:21:16', unit=(u.hourangle, u.deg))
dlh = earthlocation(lon='97d43m46s', lat='37d22m40s', height=3171.1*u.m)
observing_time = time('2020-01-05 00:00:00') #utc
delta_hours = np.linspace(0, 24, 480)*u.hour
full_night_times = observing_time + delta_hours
full_night_aa_frames = altaz(location=dlh, obstime=full_night_times)
full_night_aa_coos = c.transform_to(full_night_aa_frames)
plt.plot(delta_hours, full_night_aa_coos.alt)
plt.xlabel('utc time(hours)')
plt.ylabel('el(deg)')
plt.locator_params(nbins=24)
plt.title('el variety with utc')
plt.grid()
plt.tight_layout()
plt.show()
參考:
關於天文座標系的介紹
x射線脈衝星導航可見性分析(毛悅等)
赤道 銀道 座標系轉換
赤道座標轉銀道座標的python程式
嘗試**,error
# 可能有錯!!!
import math
from math import pi
from math import sin
from math import cos
i0=62.6
i=i0*pi/180 #角度轉弧度
omega0=282.25
omega=omega0*pi/180
lomega0=33.345
lomega=lomega0*pi/180
l0=float(raw_input('l0 = '))
b0=float(raw_input('b0 = '))
l=l0*pi/180
b=b0*pi/180
sin_delta=sin(b)*cos(i)+cos(b)*sin(i)*sin((l0-lomega0)*pi/180)
print 'sin_delta=', sin_delta
delta=math.asin(sin_delta)
print 'delta 弧度=', delta
delta=delta*180/pi
#delta=180+delta
print 'delta 角度=', delta
cos_alpha_cut_omega=(cos(b)*cos(l-lomega))/cos(delta)
print 'cos_alpha_cut_omega=', cos_alpha_cut_omega
alpha_cut_omega=math.acos(cos_alpha_cut_omega)
print 'cos_alpha_cut_omega 弧度=', alpha_cut_omega
alpha_cut_omega=alpha_cut_omega*180/pi
print 'cos_alpha_cut_omega 角度=', alpha_cut_omega
alpha=alpha_cut_omega+omega0
print 'alpha=', alpha
天文座標系
座標系統 中心點 起點 基面 lat 0 極座標 主要方向 primary direction 0 longitude 緯度 latitude 經度 longitude 地平座標系 horizaonal,alt az 觀測者地平面 天頂 zenith 天底 nadir 赤緯或者高度 altitude...
Python地理座標系和投影座標系轉換
地心地固座標系 earth centered,earth fixed,ecef 簡稱地心座標系。地理座標系統 geographic coordinate system,gcs 1 座標系是地心座標系,用經緯度表示球面上的點。世界大地測量系統 world geodetic system,wgs 比如w...
座標系轉換
根據halcon的演算法,設座標系1 影象 的點 px,py 座標系2 世界 的點為 qx,qy 則 qx px qy hommat2d py 1 1 其中 hommat2d為乙個3乘3的矩陣,且第三行為 0,0,1 1 0 tx cos phi sin phi 0 1 sin theta 0 sx...