2
如何計算特定日期和時間某站(經度,緯度)處觀測者的恆星位置(ra,dec)?我需要計算所有元素(包括計算中的所有元素(恆星,氣壓和溫度自行運動...)的全座標約簡)座標減少python
我試過用pyephem,但我不確定能不能完成。
import ephem
polaris = ephem.readdb("Polaris,f|M|F7,2:31:48.704,89:15:50.72,2.02,1")
polaris.compute('2016/3/1 16:22:56')
print polaris.a_ra
print polaris.a_dec
我也試圖與astroplan,我認爲我更接近的解決方案,但仍然不知道如何還原後得到的座標,並添加適當的運動。
import astropy.units as u
from astropy.coordinates import EarthLocation
from astropy.coordinates import SkyCoord
from pytz import timezone
from astroplan import Observer
from astropy.time import Time
from astroplan import FixedTarget
import numpy as np
import astropy.units as u
from astroplan.plots import plot_sky
from astroplan.plots import plot_parallactic
from astroplan.plots import plot_airmass
import matplotlib.pyplot as plt
from astroplan import FixedTarget
longitude = '21d33m20.4s'
latitude = '+43d08m24.6s'
elevation = 1150 * u.m
time = Time('2015-06-16 12:00:00')
location = EarthLocation.from_geodetic(longitude, latitude, elevation)
observer = Observer(name='Name',
location=location,
pressure=0.615 * u.bar,
relative_humidity=0.11,
temperature=0 * u.deg_C,
timezone=timezone('Europe/Belgrade'),
description="..")
coordinates = SkyCoord('2h31m48.704s', '89d15m50.72s', frame = 'icrs')
polaris = FixedTarget(name='Polaris', coord=coordinates)
plot_airmass(polaris, observer, time)
ax = plt.gca()
box = ax.get_position()
ax.set_position([box.x0, box.y0, box.width * 0.8, box.height * 0.8])
plt.legend(loc=1, bbox_to_anchor=(1.35, 1))
plt.show()
您可能在http://physics.stackexchange.com上獲得了更多成功 - 這個問題似乎更多地是關於物理學而不是計算機編程。 –
或http://astronomy.stackexchange.com/ –
不要忘記添加如下信息:您需要什麼目標精度?你想要幾何或視覺位置?如果精度太高或者物體太近,高度有時也很重要,但對於恆星來說,它應該沒有問題。 – Spektre