三体运动的程序模拟

      前几天看了《三体》,很不错的科幻小说。说到三体,我想到我大学的一个舍友叫王晶,和香港那个导演同名同姓同性别.记得有一次几个同学在一块聊天,有个女生问他:父母为什么给他取名叫晶.他说叫晶是父母希望能有三个太阳守护着他。那时我还很单纯,不会用五行缺什么的话来讽刺他,只是说,如果给他起名叫王晶晶的话,那就有6个太阳守护他了.现在对三体有了一些了解,才意识到被三个太阳罩着,那不叫守护,应该是被蹂躏.三体内的行星,感觉是被三个恒星玩弄于股掌之间,如同球一样踢来踢去.

      空间中三个星体,受万有引力作用下的运动被称为三体运动,这是最简单且引人注目的混沌。混沌确定系统是庞加莱在研究三体问题时第一次发现的。仅仅三颗星体的运动,就能变得复杂而眩目。这种复杂曾令数学家们在百年间困惑不已。如果只有两个天体,那么一切是多么简单,18世纪的伯努利就已解出了运动的所有可能轨迹,用合适的坐标,就能用简单的曲线描述。但仅仅是多了一个天体,就要等到19世纪的庞加莱,才给出了差强人意的答案:没有漂亮的解(正式术语是三体系统是不可积的)。这并非因为人类的智慧所限,而是从本质上来说,三个天体之间的运动轨迹不可能用简单的式子表达。自然并不像原来期盼的那么简单,它的复杂性令人绝望。但正是这种复杂性孕育了无数可能。并非所有三体系统都不可理解,通过合适的构造,我们可以得到一些会沿着既定曲线运转的系统。通过合适地安排速度和位置,我们也可以使其中一颗星体按照任意给定的顺序探访其余两颗星体。但这些系统是如此脆弱,一点点扰动就会打破微妙的平衡,后果可能是其中一颗星体被抛射出去,从此分道扬镳。混沌,似乎代表了无尽的不确定性,以及所带来的恐惧,就像我们的祖先曾感受过的那样。

     软件运行后,会有三个大点的球代表恒星,三个球互相影响着旋转.可以为三体世界添加一个行星,和一个彗星.可以看到行星的恒纪元,乱纪元.

      代码使用万有引力和势能动能守恒定律为基础,详细见我上一篇文章:行星运动轨迹的程序实现.当然程序写得很简化,其精度是没法保证的.如果真要做精确的话,微积分是必需的.还有就是在恒纪元时,行星容易进入恒星的内部,所以我做了点篡改,保证行星在恒星外部旋转.这一修改会使用行星的轨迹线不够平滑.

 

 

 

程序启动后,会出现三个随机大小的球体在运动.

鼠标右键用于控制视角
键盘U用于开关UI用户界面.
通过UI用户界面可以设置三个球体的质量,设置万有引力系数,设置天体运行速度,设置球体的显示大小.

键盘1,2,3用于开关三个球体运动轨迹的显示
键盘9,用于开关行星,启动后,会有一个小球体被三体所吸引
键盘0,用于开关慧星,启动后,会有发射一个球体.
键盘4,5分别用于开关行星和彗星运动轨迹的显示

键盘G,用于开关三维网格的显示
键盘C,用于开关坐标轴的显示
键盘P,用于暂停
键盘R,用于重置,这时会随机为三个球体设置质量与初速度.

软件下载地址:http://files.cnblogs.com/WhyEngine/Chaos.7z

如果对N体运动有兴趣可以看下我的下篇文章:N体运动的程序模拟

转载于:https://my.oschina.net/abcijkxyz/blog/723577

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/23884.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

由《三体》太阳文明末日场景想到的……

《三体》电视剧正在热播,热度持续不退,豆瓣评分8.6,基本已经预定年度口碑最高的科幻题材剧;除了在国内多个平台播出外,还走出国门,成功“出海”,《人民日报》两会特刊都予以了高度赞扬。 上图红…

(转贴)关于《三体》的天文学

原文地址:http://sonicbbs.eastday.com/topicdisplay.asp?BoardID22&Page2&TopicID1723978 原作者:rottenweed 这一阵在看刘慈欣的《三体》,的确是好科幻小说。不过,再好的科幻小说也仍然是科幻,更何况“硬度…

ChatGPT让职业被取代,不公平优势则让我们成为不可替代!

ChatGPT的横空出世,在业界掀起了惊涛骇浪。专家表示,ChatGPT和相关人工智能技术可能会威胁到一些工作岗位,尤其是白领工作。 自去年11月发布以来,新型聊天机器人模型ChatGPT已经被用于各种各样的工作:撰写求职信、编写…

Amazon亚马逊广告API申请流程

亚马逊广告API申请链接:https://advertising.amazon.com/about-api 首先需要一个该网站的账户 申请页面内容必须英文书写 要符合亚马逊的策略亚马逊链接:https://advertising.amazon.com/API/docs/en-us/get-started/compatibility-versioning-policy

怎么监测facebook上竞争对手的广告

在facebook上投放广告时,我们学习很多营销手段和投放广告知识,也会去查看好的广告案例,以及监测竞争对手的facebook ads。how to spy on competitors facebook ads?有哪些好用又简单操作的工具? facebook ads了解 我们…

Google广告投放技巧,开始Google广告投放

Google 广告是指通过 Google 广告网络在 Google 搜索和其他网站上展示的广告。要投放 Google 广告,您需要使用 Google 广告帐户,并通过 Google 广告平台设置广告活动。 要开始使用 Google 广告,您需要做出以下几步: 在 Google Ad…

Facebook广告投放怎么使用?Facebook广告投放的教程

做跨境电商的,多多少少都离不开广告投放,Facebook广告投放更是很多人的首选,所以东哥今天就来分享一个Facebook广告投放的教程,看完不信你还不会Facebook广告投放! Facebook广告投放的教程 1、用科学上网的方式注册一个…

谷歌广告投放,谷歌广告怎么投放?

谷歌广告怎么投放? 谷歌广告的投放流程非常简单,如果你已经开通了谷歌广告账户,按如下7步即可立即开始你的谷歌投放之路。 1、登录Google账号,点击广告系列,选择「新广告系列」 2、选择广告系列目标和类型搜索广告系…

亚马逊中关于店铺广告设定的介绍

1. Visibility Advertising : Sponsored Products 作用:增加可见率及转化率 页面:检索结果页及产品页 方法:设置关键字及产品 付费:按点击付费或者PPC付费 设置方法: – 手动设置:卖家手动设置…

亚马逊广告投放策略卖家们知多少?

关于投放策略,分阶段执行会更加高效。特别是推新品,可分成初始期、成长期和成熟期几个阶段,通过自动/手动以及否定投放等策略有目的性的进行推广。 1、自动/手动投放 初始期:可利用商品推广,进行广告分组&#xff0c…

亚马逊站内广告

对于大部分卖家来说,在亚马逊的运营中,站内广告是必不可少的推动产品销量上升和成为爆款的工具。 亚马逊在站内广告的投放上有两种投放方式:自动广告和手动广告。 PPC全名pay-per-click,也就是点击付费的意思&…

亚马逊运营,如何调整你的广告和自然订单占比?

比如,我的一款产品,现在已经是小类目排名第一,但让我痛苦的是,出单主要是广告单,自然订单很少,导致这种情况的主要原因是什么呢?我该如何优化来提高自然单的比例呢? 这样的情况还真…

跨境电商卖家如何创建客户参与的 Facebook 广告?

关键词:跨境电商卖家、客户参与、Facebook广告 想要从您的 Facebook 广告中获得更多潜在客户或转化?正在寻找为您自己的广告建模的成功秘诀? 在本文中,您将了解创建消费者响应的 Facebook 广告的八个技巧。 将您现有的 Facebook 受…

亚马逊广告API对接概述

广告API对接总体流程>>> 下图中出现的相关URL,是以北美站为例 亚马逊广告各实体间关系>>> 1. 广告API对接准备 ​​​​​​​1.1 申请亚马逊开发者帐号和广告API访问帐号 (略)API申请如有问题,可以入群交流。…

亚马逊 站内广告数据分析

一、广告的清理 将停止的,归档的广告先过滤掉,这个可以在广告的左侧“筛选”项完成,我们可以选择“已启用”的选项,这样做的好处是,把原来那些已经无用的广告筛选出去,可以让我们的数据看起来更清爽&#x…

亚马逊广告接口 amazon advertising

亚马逊广告接口官方说明:https://advertising.amazon.com/API/docs/en-us/setting-up/account-setup 一:注册aws开发者账号 注册地址:https://developer.amazon.com 二:填写注册资料 三:进入控制台,生成…

ChatGPT 聊天黑科技 - 如何提问

01 引言:轻松操控 ChatGPT 最近,有一个火爆全网的 ChatGPT 提问方式,给其创造 “生死边缘” 的紧张氛围,激发潜能,可以说是赤裸裸的 PUA ChatGPT 了: 1. 给 AI 设定 “5 条命”,每当它不能完成…

GitHub 又一黑科技项目诞生,成功复现 ChatGPT 完整流程!

来源:脑机转口社区 本文约3800字,建议阅读7分钟GitHub 知名开源项目 Colossal-AI 快速跟进,成功做出了首个开源低成本复现 ChatGPT 完整流程! 近日,火爆全网的 ChatGPT,仿佛开启了第四次工业革命&#xff0…

论文阅读:“Inpaint Anything: Segment Anything Meets Image Inpainting”

** Inpaint Anything: Segment Anything Meets Image Inpainting ** 论文地址:https://arxiv.org/abs/2304.06790 项目地址:https://github.com/geekyutao/Inpaint-Anything Abstract 尽管现代图像修复系统取得了显著的进展,但在mask选择…

从不自量力到 AI 助力,我如何翻译完一整本英文书

披露和声明: 本文提及的翻译作品系使用 AI 技术制作,并经人工调整,具体步骤如文中所述。本文在后期修改过程中使用 ChatGPT 辅助,目的为精简原版中的口语化表述。我的英文水平有限,翻译这本书主要是为了自我学习&…