我有一个关于时代的问题。我想展示夜空,作为一个超古代的观测者会看到它或在遥远的未来有人。我应该把年份和纪元定得一样吗?
Brandon Rhodes-Halley Comet示例中概述的三个场景如下。
my_star.compute(epoch='-100000')
my_star.compute(-100000',epoch='-100000')
my_star.compute('-100000')
对我来说,根据他对赤道望远镜的描述和1066年第二个例子对当代观测者的描述,我认为我应该选择第二个选择。也就是说,把纪元和年份都定在古代或未来的年份。
halley.compute(epoch='1066')
这可能是无用的:它计算哈雷的当前位置,但返回坐标相对于地球轴指向1066年的方向。除非你使用征服时代的星图,否则这是没有用的。
halley.compute('1066',epoch='1066')
这稍微更有希望:它计算出哈雷在1066年的位置,并返回当年地球方位的坐标。这可能有助于你想象这个物体是如何被放置在当代观察家之上的,他们认为这是英国国王哈罗德和私生子威廉之间即将爆发冲突的一个不祥预兆。但要在恒星的背景下绘制这个位置,首先必须在1066坐标系中重新计算每个恒星的位置。
halley.compute('1066')
这可能是你最常使用的;你在1066年得到了哈雷的位置,但是用你的星图可能使用的2000坐标表示。
为什么我对我得到的描述如此不确定,是因为伊恩·里奇和里克·波格得到了不同的结果。这些相关结果的链接发布在github问题中。瑞克说,星光的结果也证实了他的说法。我不介意我是不是错了,我只是看到了一个哈雷的例子,我认为是一些人与结果发生冲突的最佳选择。
我还不能在stackoverflow上发布很多链接(或图片!),但我在https://github.com/brandon-rhodes/pyephem/issues/61的github版本中对此进行了详细的文档记录。我只是想非常清楚我在寻找什么,并向你展示可能的情况。
如果您想测试两个工作的IPython笔记本,请参阅github上mynotebooks文件夹中的Part1:proper-motion.ipynb和Part2:big-dipper.ipynb
big-dipper.ipynb示例中有很多代码,所以我不会在tracker中发布,但我很快会在上面发表一篇博客文章。请参阅上面的github问题链接以获取所有代码和图像!
我相信,不同的时代和年份在一起的描绘,是我想要的关于一个古代观测者看到夜空在他的角度,一个未来的观测者看到夜空在他自己的角度。有时候这很难理解,所以我非常希望能在这个问题上有一些社区的意见。
这是代码的一小部分。big-dipper.ipynb笔记本显示了更彻底的场景。

%pylab inline
import ephem

UMa = {
'dubhe': 'αUMa', #HIP 54061
'merak': 'βUMa', #HIP 53910
'phecda':'γUMa', #HIP 58001
'megrez':'δUMa', #HIP 59774
'alioth':'εUMa', #HIP 62956
'mizar': 'ζUMa', #HIP 65378
'alcor': '80UMa',#HIP 65477
'alcaid':'ηUMa', #HIP 67301
}

def const(const,year=None,epoch='2000',title=None):
    s = []

    for star in const.keys():
        s.append(ephem.star(star.capitalize()))

    for i in range(len(s)):
        if(year!=None):
            s[i].compute(year,epoch=epoch)
        else:
            s[i].compute(epoch=epoch)

    tau = 2.0 * pi
    degree = tau / 360.0
    hour = tau / 24.0

    ra_list = [star.a_ra / hour for star in s]
    dec_list = [star.a_dec / degree for star in s]

    mag_array = np.array([star.mag for star in s])
    size_array = (5 - mag_array) ** 1.5 * 4

    scatter(ra_list,dec_list,size_array)
    if(title!=None):
        pyplot.title(title)
    gca().xaxis.grid(True)
    gca().yaxis.grid(True)
    gca().invert_xaxis()
    return s

最佳答案

如果我想模仿地球上的古代观察家或未来观察家,我们应该一起改变时代和时间。
the issue tracker中回答。
谢谢你的帮助:)

关于python - 古代或 future 观察者的岁差,正确 Action 和时代,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26981581/

10-14 12:21