太阳系计算机模型

时间:2010-01-13 13:28:20

标签: astronomy

我有兴趣建立一个用于网络的太阳系3D模型(可能是AS3和papervision),并且一直在研究如何编码行星位置。我的想法是从美国国家航空航天局下载已计算的位置,因为计算位置我自己看似但是过于复杂。我不确定我是否应该使用以helio为中心或以地球为中心的编码。

我想知道是否有任何有此经验的人。哪种方法会更好?美国宇航局的JPL网站似乎将我们太阳系中所有主要机构的位置视为以地球为中心。虽然将Voyager和Mars Lander任务添加到模型中时,我可以看到这会成为一个问题吗?

非常欢迎任何反馈,评论和链接。

编辑:我有一个使用日心坐标的粗略模型,但是我无法找到这种格式的所有行星的坐标。

更新

我没有太多的细节来提供知识,因为我真的不知道我在做什么(从空间的角度来看)。我想搞定3D编程,对空间很感兴趣。我的想法是,我将首先制作一个粗糙的太阳系模拟器,首先是所有行星及其轨道运行器(最初可能不包括卫星)。也许包括新闻聚合器和一些新闻/资源链接等。一般的想法是允许人们点击并对去月球和火星(作为首发)感到非常兴奋。

从长远来看,我希望能够增加卫星和月球任务(及时向后滚动到70年代并看月亮任务)。

所以回答Arrieta的问题,这个想法不是计算日食,而是建立一个易于接近的互动空间探索,并在途中学习一些3D和空间相关的东西。

4 个答案:

答案 0 :(得分:4)

很高兴你想建立自己的模拟器,但根据你想做的事情,这可能远非一件容易的事。最简单的方法如下:

  1. 下载JPL-DE405星历表和检索行星位置的子程序(wrt Solar System Barycenter)。
  2. 请求时间跨度,计算位置,并以视觉上吸引人的方式将它们显示在屏幕上
  3. 完成
  4. 现在,你为什么要这样做?如果你想观察行星的轨道,那就是它。你完成了。如果你想计算几何事件(如日食,视线或照明),那么你就是在一个完全不同的球类游戏中。那是航天,并不简单。

    请更具体。你对“地心”或“日心说”坐标的区别确实没有太大的困难。如果您具有日心框架中的所有状态,则可以通过简单的矢量减法计算地心框架。那不是问题!问题还有一千多个,但你需要具体,这样我们才能提供更多的指导。

    JPL几十年来一直提供高质量的星历表,我们拥有一支由优秀人才组成的完整团队。这是最难对付的事情之一!

    再次提供更多详细信息或查看其他信息来源。

    请谷歌“太阳能系统模拟器”(在这里,在JPL完成),看看它是否满足您的需求。

    干杯。

答案 1 :(得分:2)

值得您查看ASCOM Platform(我们还有一个名为ASCOM Answers的堆栈交换网站)。

ASCOM平台有几个有用的库来完成这类工作。

  • USNO NOVAS(海军天文台矢量天体测量法)
  • 开普勒轨道引擎

USNO / NOVAS的东西最初是用C语言编写的,我们将它包装在.NET中,以方便C#和VB使用。

作为一个额外的奖励(实际上它是ASCOM的 raison d'être),平台让您可以轻松控制望远镜这样的东西,它被微软的World Wide Telescope精确地用于那个目的。我可以为你的模型做一个有趣的扩展,以便能够将望远镜指向事物。

答案 2 :(得分:1)

我可能会以日心坐标开始(好吧,我做了一会儿)并让一些行星运转起来。但是迟早你会想要写一个以日心为中心的地心坐标转换程序,以及它的反转。对于某些物体,例如人造卫星,地心坐标将更容易处理。

答案 3 :(得分:0)

您可以使用astro-phys api为所有行星获取JSON格式的状态向量。它使用JPL的de406计算它们,因此它非常准确,并使用太阳系重心。

虽然,如果您知道太阳相对于地球的位置并且您处于地心模型中,您可以从所有物体(包括地球)中减去太阳的位置,使其成为日心说。