您的位置首页百科知识

如何用Mathematica计算三体问题

如何用Mathematica计算三体问题

的有关信息介绍如下:

如何用Mathematica计算三体问题

本经验讲解用数学软件Mathematica编写程序,

计算三体问题轨迹,

绘图以及导出Gif.

首先,确定三个星体的坐标分别用X1,Y1, X2,Y2 X3,Y3表示。

为保险起见,将这几个变量Remove.

然后设定三个星体的初始位置和初速度。

然后设置三个星体的质量M1,M2,M3, 万有引力常数G, 解算时间TMAX,

(还有绘图相关:动画的时间间隔DeltaTime, 绘图范围MyLTBR(就是上下左右的距离))

为了避免三个星体越跑越远,我们需要在质心系中观察。因此相对质心算出速度偏移,并依次减去。

定义三个星体的水平竖直两个方向上的受力。写成函数。

使用NDSolve,带入函数,带入初始条件,设置解算范围为0~TMAX, 计算轨迹X1,Y1, X2,Y2 X3,Y3。

数据计算到此完成,然后进入画图环节。

计算三个球体的显示大小。

从NDSolve的解算结果取出答案。

使用Graphics嵌套三个Disk画出三个圆点,然后Show函数结合ParametricPlot(轨迹图)以及Graphics里三个圆点。

最外面嵌套一个Table生成一个图片列表。

使用列表帧动画函数ListAnimate得到动画。

使用Export方法导出Gif。最终效果如下。