资讯专栏INFORMATION COLUMN

用Python搓一个太阳系

shaonbean / 2986人阅读


你们要的3D太阳系

图片上传之后不知为何帧率降低了许多。。。

日地月三体

所谓三体,就是三个物体在重力作用下的运动。由于三点共面,所以三个质点仅在重力作用下的运动轨迹也必然无法逃离平面。

三体运动所遵循的规律就是古老而经典的万有引力

F ⃗ = G m i m j r 2 e ⃗ r /vec F=/frac{Gm_im_j}{r^2}/vec e_r F =r2Gmimje r

则对于 m i m_i mi而言,

m i d v ⃗ i d t = G m i m j r i j 3 r ⃗ i j m_i/frac{/text d/vec v_i}{/text dt}=/frac{Gm_im_j}{r_{ij}^3}/vec r_{ij} midtdv i=rij3Gmimjr ij

d r ⃗ i d t = v ⃗ i /frac{/text d/vec r_i}{/text dt}=/vec v_i dtdr i=v i

将其写为差分形式

v ⃗ i = ∑ j ≠ i G m j r i j 3 r ⃗ i j d t r ⃗ i = v ⃗ i d t /begin{aligned} /vec v_i&=/sum_{j/not=i}/frac{Gm_j}{r_{ij}^3}/vec r_{ij}/text dt// /vec r_i&= /vec v_i/text dt /end{aligned} v ir i=j=irij3Gmjr ijdt=v idt

由于我们希望观察三体运动的复杂形式,而不关系其随对应的宇宙星体,所以不必考虑单位制,将其在二维平面坐标系中拆分,令 v ⃗ = ( u , v ) /vec v=(u,v) v =(u,v),则

u i + = ∑ j ≠ i G m j ( x j − x i ) d t ( x i − x j ) 2 + ( y i − y j ) 2 3 v i + = ∑ j ≠ i G m j ( y j − y i ) d t ( x i − x j ) 2 + ( y i − y j ) 2 3 x i + = u ⃗ i d t y i + = v ⃗ i d t /begin{aligned} u_i&+=/sum_{j/not=i}/frac{Gm_j(x_j-x_i)/text dt}{/sqrt{(x_i-x_j)^2+(y_i-y_j)^2}^3}// v_i&+=/sum_{j/not=i}/frac{Gm_j(y_j-y_i)/text dt}{/sqrt{(x_i-x_j)^2+(y_i-y_j)^2}^3}// x_i&+= /vec u_i/text dt// y_i&+= /vec v_i/text dt /end{aligned} uivixiyi+=j=i(xixj)2+(yiyj)2 3Gmj(xjxi)dt+=j=i(xix

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/122440.html

相关文章

  • python模拟《流浪地球》的木星引力弹弓效应

    摘要:来源重力助推而在影片中,也就是为了获取更大的速度以脱离太阳系,人类才选择借助木星的引力弹弓效应。引力弹弓的概念在几年前的星际穿越和火星救援中都有提及,我一直想写个模拟,直到这次趁流浪地球热映的机会才动手实现。 本文涉及影片内容,但算不上剧透。想看还未看的同学请谨慎阅读。 春节档的几部电影里,《 流浪地球 》成为一匹黑马,刷爆微博和朋友圈,从最初不高的排片率,一跃上升到票房榜首。 看过影...

    fsmStudy 评论0 收藏0
  • 你们要的3D阳系

    摘要:用画一个平面的太阳系得到一些朋友的欣赏,然后有同学提出了绘制三维太阳系的要求。从画图的角度来说,三维太阳系其实并不难,问题在于八大行星对黄道面的倾斜太小,所以尽管画个三维的图,但就观感而言,无非是把二维的嵌入到三维空间罢了。 ...

    MadPecker 评论0 收藏0
  • 记一次小程序之旅

    摘要:用户绑定的逻辑主要复杂在既需要考虑微信本身的接口在不同情况下提供的数据不同,另外一方面就是考虑本身用户模块的业务逻辑问题。针对每一节课以及每一节系列课程生成小程序太阳码主要涉及到几个细节问题。 感觉已经好久没写程序了,最近这段时间,一方面是学习了python,然后折腾了scrapy框架,用python写了下守护进程程序监听任务以及用redis做队列任务通信,并开进程来处理爬虫任务。以上...

    不知名网友 评论0 收藏0
  • 极客爱情: 情人节礼物大作战

    摘要:故而总结如下编成的代码浪漫的环境亲手制作的礼物注意请将下面的程序员的情人节礼物换成语言。言归正传程序员的情人节礼物入门之材料构思情人节礼物之设备展示想着在这个移动盛行的时代,再用电脑就不太合适了。 是时候应该反击了 当我看到@鄢得諼草 的那几篇黑我黑到体无完肤的#极客爱情# @Phodal 故事的时候,我发现我竟无言以对。或许,作为一名程序员,我们或多或少都有这样的共性。 ...

    XGBCCC 评论0 收藏0
  • 遇见一只黑猫,她说Python是个怪物

    摘要:原文地址喵喵,读者朋友们好,我是来自喵星的客人,地球登记名为猫。今天依然是些猫言猫语,请看官们不要嫌弃。这样的破坏神,不是怪物是什么喵喵了个大乖乖这不是我认识的,也不是我以为自己知道的蟒蛇啊听起来倒像是一个吓唬小孩的神话故事。 导读: Python猫是一只喵星来客,它爱地球的一切,特别爱优雅而无所不能的 Python。我是它的人类朋友豌豆花下猫,被授权润色与发表它的文章。如果你是第一次...

    joyvw 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<