3

我很难找到天空中星星的当前坐标(RA,DEC)。在网上我发现只有这一个教程,如何使用 ephem 库:http ://asimpleweblog.wordpress.com/2010/07/04/astrometry-in-python-with-pyephem/

据我了解,我需要:

  1. 创建观察者
telescope = ephem.Observer()
telescope.long =  ephem.degrees('10')
telescope.lat = ephem.degrees('60')
telescope.elevation = 200
  1. 在这里创建一个主体对象星很麻烦,我只有(RA,DEC)星坐标

  2. 通过 .calculate(now()) 计算位置

  3. 通过新坐标找到高度

关于这个库的准确性的另一个问题,它有多准确?我比较了这个程序和 kstars 之间的 juliandate 和 sidestreal time,看起来非常相似。

这个http://www.jgiesen.de/astro/astroJS/siderealClock/

PS!或者可能有人可以为此目的推荐更好的库。

4

2 回答 2

6

I guess you're looking for FixedBody?

telescope = ephem.Observer()
telescope.long =  ephem.degrees('10')
telescope.lat = ephem.degrees('60')
telescope.elevation = 200
star = ephem.FixedBody()
star._ra = 123.123
star._dec = 45.45
star.compute(telescope)
print star.alt, star.az

I don't know about the accuracy; pyephem uses the same code as xephem, and eg the positions of the planets are given by rounded-down VSOP87 solutions (accuracy better than 1 arcsecond); kstars appears to use the full VSOP solution.
But this will really depend on your need; eg don't rely on it blindly guiding your telescope, there are better solutions for that.

于 2011-07-29T12:24:31.257 回答
3
star = ephem.FixedBody(ra=123.123, dec=45.45)

在我的情况下,固定体创建不起作用,应该是

star = ephem.FixedBody()
star._ra = ephem.hours('10:10:10')
star._dec = ephem.degrees('10:10:10')
于 2011-09-02T07:32:35.363 回答