我对PyEphem模块给出的有关Observer()查询的结果以及海拔效果有一个查询。我从几个来源(如http://curious.astro.cornell.edu/question.php?number=388)了解到,观察者的海拔高度对日落时间有显着影响。然而,在下面的代码,我看到旁边没有区别:Observer()的结果似乎没有考虑到PyEphem中的海拔效应
import ephem
emphemObj = ephem.Observer()
emphemObj.date = '2011/08/09'
emphemObj.lat = '53.4167'
emphemObj.long = '-3'
emphemObj.elevation = 0
ephemResult = ephem.Sun()
ephemResult.compute(emphemObj)
print "Sunset time @ 0m: " + str(emphemObj.previous_rising(ephemResult))
emphemObj.elevation = 10000
ephemResult.compute(emphemObj)
print "Sunset time @ 10000m: " + str(emphemObj.previous_rising(ephemResult))
我得到的输出:
Sunset time @ 0m: 2011/8/8 04:38:34
Sunset time @ 10000m: 2011/8/8 04:38:34
我确信我做错了什么,而不是这是一个错误,但已经尝试了许多不同的方式,恐怕我会继续收到相同的结果。有谁知道我在这里做错了吗?
我已经在https://launchpad.net/pyephem上发布了,但是我没有回应。我希望我没有从根本上误解海拔函数的目的...
如果您链接的文章中复制的例子,在赤道为12000米,你会得到相同的结果呢?如果是这样,那么他们可能还没有实现高程问题。 – wberry
我不是100%肯定我已经尝试过12,000米,但我肯定尝试了其他(更多)更高的值。 previous_rising报告的时间确实发生了变化,这导致我认为高程代码正在做某些事情。我只是希望它不是仅仅考虑大气折射而不是“视界”效应。 – Smingos