The Three Body Problem and its Classical Integration

很多天文爱好者都已经接触到了“二体问题”(我们在高中学习到的“开普勒三定律”就是内容之一),由于在太阳系中行星质量相对较小而且距离相对较远,应用“二体问题”的解对天体进行计算、预报等能够满足一定的近似需求。不过,如果需要更高精度的计算,就不能把其他行星的引力给忽略掉了,于是就产生了所谓N体问题(N-Body Problem),即N个质点尽在它们各自引力的相互作用下的运动规律问题。最简单的二体已经被彻底解决,而三体或更多体的问题则与二体大相径庭,因为庞加莱证明了,三体问题不能严格求解,而且这是一个混沌系统,任何微小的扰动都会造成不可预期的效果。

根据牛顿力学,选择惯性参考系,设三个质点分别为$M_1,M_2,M_3$,向径分别为$\vec{r_1},\vec{r_2},\vec{r_3}$,可以列出运动方程(以下的导数都默认是对时间t求导)

$M_1\ddot{\vec{r_1}}=\frac{GM_1 M_2(\vec{r_2}-\vec{r_1})}{|\vec{r_2}-\vec{r_1}|^3}+\frac{GM_1 M_3(\vec{r_3}-\vec{r_1})}{|\vec{r_3}-\vec{r_1}|^3}$————(23)
$M_2\ddot{\vec{r_2}}=\frac{GM_1 M_2(\vec{r_1}-\vec{r_2})}{|\vec{r_1}-\vec{r_2}|^3}+\frac{GM_2 M_3(\vec{r_3}-\vec{r_2})}{|\vec{r_3}-\vec{r_2}|^3}$————(24)
$M_3\ddot{\vec{r_3}}=\frac{GM_1 M_3(\vec{r_1}-\vec{r_3})}{|\vec{r_1}-\vec{r_3}|^3}+\frac{GM_2 M_3(\vec{r_2}-\vec{r_3})}{|\vec{r_2}-\vec{r_3}|^3}$————(25)

我们也许看其他地方看到过类似这样的描述:“一般三体问题的运动方程为十八阶方程,必须得到18个积分才能得到完全解。”其实我认为这个说法不大严谨,或者说不大容易让人理解。准确来说,上面是一道二阶常微分方程组,其中每一个$\vec{r_i}$都可以投影到三个维度,所以得到9个二阶微分方程。每个二阶微分方程积分后都应该得到二个独立的积分常数,而且我们需要找到18个积分常数,问题才算完全解答。而1843年,雅可比证明,对N体问题,如果除两个积分外都已找出,则这两个积分也就随之可以用特殊方法找出。

对于N体问题,都有相同形式的10个经典积分。以三体问题为例,BoJone尝试和读者一起把这十个积分推导出来。首先是动量守恒,将(23)、(24)、(25)相加,我们得到
$M_1 \ddot{\vec{r_1}}+M_2 \ddot{\vec{r_2}}+M_3 \ddot{\vec{r_3}}=0$

积分得到$M_1 \vec{r_1}+M_2 \vec{r_1}+M_3 \vec{r_1}=\vec{C}_1 t+\vec{C}_2$————(26)

这里有多少个积分常数?两个?不对,这里已经有6个积分常数了!(投影到三维坐标系)。而且有一种特别情况,那就是如果选择它们的共同质心为参考点的话,会有$\vec{C}_1 =\vec{C}_2=\vec{0}$。这时问题会相对简单一些。

另外一个是动量矩守恒。根据(23)、(24)、(25),我们有
$M_1\vec{r_1}\times \ddot{\vec{r_1}}=\frac{GM_1 M_2(\vec{r_1}\times \vec{r_2})}{|\vec{r_2}-\vec{r_1}|^3}+\frac{GM_1 M_3(\vec{r_1}\times \vec{r_3})}{|\vec{r_3}-\vec{r_1}|^3}$
$M_2\vec{r_2}\times \ddot{\vec{r_2}}=\frac{GM_1 M_2(\vec{r_2}\times \vec{r_1})}{|\vec{r_1}-\vec{r_2}|^3}+\frac{GM_2 M_3(\vec{r_2}\times \vec{r_3})}{|\vec{r_3}-\vec{r_2}|^3}$
$M_3\vec{r_3}\times \ddot{\vec{r_3}}=\frac{GM_1 M_3(\vec{r_3}\times \vec{r_1})}{|\vec{r_1}-\vec{r_3}|^3}+\frac{GM_2 M_3(\vec{r_3}\times \vec{r_2})}{|\vec{r_2}-\vec{r_3}|^3}$

将三式相加,并根据$\vec{a} \times \vec{b}=-\vec{b} \times \vec{a}$得
$M_1\vec{r_1}\times \ddot{\vec{r_1}}+M_2\vec{r_2}\times \ddot{\vec{r_2}}+M_3\vec{r_3}\times \ddot{\vec{r_3}}=0$

由于$(\vec{r}\times \dot{\vec{r}})'=\vec{r}\times \ddot{\vec{r}}$,所以我们能够得到一个新积分
$M_1\vec{r_1}\times \dot{\vec{r_1}}+M_2\vec{r_2}\times \dot{\vec{r_2}}+M_3\ve