一体方程 二体方程 三体方程
我在 《人造卫星轨道 和 天体轨道 原理》 https://www.cnblogs.com/KSongKing/p/11867972.html 中 提出了 一体问题 在 直角坐标系 下 的 微分方程组 :
d²x / dt² = - G M / (x² + y²) 3/2次方 * x
d²y / dt² = - G M / (x² + y²) 3/2次方 * y
在 《极坐标系 下的 牛顿第二定律》 https://www.cnblogs.com/KSongKing/p/11986031.html 中 提出了 一体问题 在 极坐标系 下 的 微分方程 :
d²ρ / dt² = - G M / ρ² + ( ρ dθ / dt sin dθ + dρ / dt cos dθ - dρ / dt ) / dt
在 《大神们 看看 这个 微分方程 怎么解》 https://www.cnblogs.com/KSongKing/p/12199255.html 中 又 提出了 另一种思路, 提出了 一体问题(二体问题) 的 线速度 微分方程 :
dv切 = v切 cos dθ - v径 sin dθ - v切
在 《大神们 看看 这个 微分方程 怎么解》 中 还提到了 教科书 解 二体问题 的 方法 和 我 的 方法 的 对比 :
“
教科书 上 的 二体问题 解法 是 以 角动量守恒 为 前提, 推出 开普勒第一定律, 即 运动质点 的 轨迹 是 椭圆, 再结合 万有引力 机械能守恒 微积分方法 来 求出 二体运动方程 。
本文 的 意图 是 不考虑 角动量守恒, 从 运动规律 入手, 先 解出 线速度 变化规律, 再结合 万有引力 机械能守恒 微积分方法 来 求出 二体运动方程 。
线速度 变化规律 应该是 二体问题 的 一个 突破口, 当然, 先得把 方程 解出来 。
”
以上 是 一体问题, 也可以说是 二体问题, 因为 二体问题 可以 通过 约化质量 转化为 一体问题 。 什么 是 约化质量 呢 ?
设 有 2 个 质点 A 、B, 质量为 M 、m, 两者 在 引力 作用下 运动, 相对于 第三方参照系, 速度 为 V 、v, 加速度 为 A 、a , 两者间 的 引力 为 F, 根据 牛顿第二定律 :
A = F / M
a = F / m
如果 以 A 为 参照系, 根据 伽利略变换, B 相对于 A 的 加速度 a ′ = A + a, 即 a ′ = F / M + F / m ,
我们可以引入一个 虚拟 的 质量 m约 , 这样, a ′ 可以表示成 a ′ = F / m约 , 于是 ,
F / m约 = F / M + F / m
1 / m约 = 1 / M + 1 / m
1 / m约 = ( m + M ) / M m
m约 = M m / ( m + M )
m约 = M m / ( M + m ) 就是 B 相对于 A 的 约化质量, 以 m约 作为 B 的 质量, 则 可以 把 A 看作 是 惯性系 , 这样 就把 二体问题 转化成了 一体问题 。
通过 约化质量 把 二体 转化为 一体 后, 就可以用 一体 的 方法 方程 来 研究 二体 。
接下来 我们 来 看 三体, 简单起见, 以 二维情形 为例, 在 二维直角坐标系 下 ,
设 三个质点 的 质量 为 m1, m2, m3 , x 方向 速度 为 v1_x, v2_x, v3_x , y 方向 速度 为 v1_y, v2_y, v3_y , x 坐标 为 x1, x2, x3 , y 坐标 为 y1, y2, y3 。
三体方程组 :
m1 * d²x1 / dt² = G * m1 m2 / [ (x2 - x1) ² + (y2 - y1) ² ] * (x2 - x1) / [ (x2 - x1) ² + (y2 - y1) ² ] 开方 + G * m1 m3 / [ (x3 - x1) ² + (y3 - y1) ² ] * (x3 - x1) / [ (x3 - x1) ² + (y3 - y1) ² ] 开方
m1 * d²y1 / dt² = G * m1 m2 / [ (x2 - x1) ² + (y2 - y1) ² ] * (y2 - y1) / [ (x2 - x1) ² + (y2 - y1) ² ] 开方 + G * m1 m3 / [ (x3 - x1) ² + (y3 - y1) ² ] * (y3 - y1) / [ (x3 - x1) ² + (y3 - y1) ² ] 开方
m2 * d²x2 / dt² = G * m2 m1 / [ (x1 - x2) ² + (y1 - y2) ² ] * (x1 - x2) / [ (x1 - x2) ² + (y1 - y2) ² ] 开方 + G * m2 m3 / [ (x3 - x2) ² + (y3 - y2) ² ] * (x3 - x2) / [ (x3 - x2) ² + (y3 - y2) ² ] 开方
m2 * d²y2 / dt² = G * m2 m1 / [ (x1 - x2) ² + (y1 - y2) ² ] * (y1 - y2) / [ (x1 - x2) ² + (y1 - y2) ² ] 开方 + G * m2 m3 / [ (x3 - x2) ² + (y3 - y2) ² ] * (y3 - y2) / [ (x3 - x2) ² + (y3 - y2) ² ] 开方
m3 * d²x3 / dt² = G * m3 m1 / [ (x1 - x3) ² + (y1 - y3) ² ] * (x1 - x3) / [ (x1 - x3) ² + (y1 - y3) ² ] 开方 + G * m3 m2 / [ (x2 - x3) ² + (y2 - y3) ² ] * (x2 - x3) / [ (x2 - x3) ² + (y2 - y3) ² ] 开方
m3 * d²y3 / dt² = G * m3 m1 / [ (x1 - x3) ² + (y1 - y3) ² ] * (y1 - y3) / [ (x1 - x3) ² + (y1 - y3) ² ] 开方 + G * m3 m2 / [ (x2 - x3) ² + (y2 - y3) ² ] * (y2 - y3) / [ (x2 - x3) ² + (y2 - y3) ² ] 开方
这样写 三体方程组 不容易看懂, 可以 写成 文字式 的 方程, 就容易看懂了, 文字式 的 方程 相当于 计算机 程序 里 的 伪代码 。
m1 * a1_x = m2 对 m1 的 引力 的 x 分量 + m3 对 m1 的 引力 的 x 分量
m2 * a1_y = m2 对 m1 的 引力 的 y 分量 + m3 对 m1 的 引力 的 y 分量
m2 * a2_x = m1 对 m2 的 引力 的 x 分量 + m3 对 m2 的 引力 的 x 分量
m2 * a2_y = m1 对 m2 的 引力 的 y 分量 + m3 对 m2 的 引力 的 y 分量
m3 * a3_x = m1 对 m3 的 引力 的 x 分量 + m2 对 m3 的 引力 的 x 分量
m3 * a3_y = m1 对 m3 的 引力 的 y 分量 + m2 对 m3 的 引力 的 y 分量
a1_x , a1_y 是 m1 在 x , y 方向 上 的 加速度, a2_x , a2_y 是 m2 在 x , y 方向 上 的 加速度, a3_x , a3_y 是 m3 在 x , y 方向 上 的 加速度 。
可以看到, 二维平面 上 的 三体方程组 是 6 个 方程, 是 3 个 质点 在 x , y 2 个 坐标 上 的 的 运动方程, 所以是 3 * 2 = 6 个 运动方程 。
对于 三维空间, 还要 增加 z 坐标 上 的 运动方程, 每个 质点 对应一个 z 坐标 运动方程, 3 个 质点 就需要 增加 3 个 z 坐标 运动方程,
所以, 三维空间 上 的 三体方程组 是 6 + 3 = 9 个 运动方程 。
也可以说, 在 三维空间 上, 每个 质点 在 x , y , z 坐标 上 每个 坐标 有一个 运动方程, x, y, z 3 个 坐标 就 对应 3 个 运动方程,
也就是说, 在 三维空间 上, 一个 质点 对应 3 个 运动方程, 3 个 质点 就 对应 3 * 3 = 9 个 运动方程 。
二维平面 上 三体方程组 的 解 是 : v1_x, v2_x, v3_x , v1_y, v2_y, v3_y , x1, x2, x3 , y1, y2, y3
即 3 个 质点 在 时刻 t 时 的 位置 和 速度, 一共 12 个 变量, 这 12 个 变量 都是 积分,
所以, 也可以说, 二维平面 上 三体方程组 的 解 是 12 个 积分 。
对于 三维空间, 还要增加 z 坐标 的 速度 和 位置 : v1_z , v2_z , v3_z , z1 , z2 , z3 。
z 坐标 的 速度 和 位置 一共 是 6 个 变量, 加上 二维平面 的 12 个 变量, 三维空间 上 的 三体方程组 的 解 是 12 + 6 = 18 个 变量, 也可以说 是 18 个 积分 。
也可以说, 在 三维空间 上, 一个 质点 对应 的 速度 位置 是 6 个变量 : v_x , v_y , v_z , x , y , z ,
3 个 质点 对应 3 * 6 = 18 个 变量 。
三体方程组 怎么解 ? 我们 看看 一体方程组 怎么解 就知道了 。 在 本文开头, 我们 提出了 一体 在 直角坐标系 下 的 方程组 :
d²x / dt² = - G M / (x² + y²) 3/2次方 * x (1) 式
d²y / dt² = - G M / (x² + y²) 3/2次方 * y (2) 式
最简单 的 思路 是 代入消元法, 和 解 初等代数方程组 一样, 先把 (1) 式 里 的 x 解出来, x 是一个 y 的 表达式, 应该是 三角函数 自然对数 等 初等函数 的 组合, 把 x 代入 到 (2) 式 , 这样 (2) 式 就 只有 y 一个 未知数, 再 从 (2) 式 中 把 y 解出来 , 就可以了 。
注意, 在 从 (1) 式 中 解 出 x 时, 是 解 微分方程, 会 进行 微分积分 计算, 此时, 应 将 y 看作 常量 , 这样来解 。
把 y 看作 常量 ? 这 是 偏导数 和 偏微分 方程 ? 呵呵, 你说呢 ?
偏导数 是 怪胎, 偏微分方程 毫无意义 。
这样 能 解出 一体方程组 和 三体方程组 吗? 大家 自己 去 试试 就知道了 , 哈哈哈哈 。
我后来 想了一下, 解这个 微分方程组 解 (1) 式 不能 把 y 看作 常量, x y 相互影响, 一起变化, 所以, x y 对于 (1) (2) 式 都是 和 微分 相关 的 变量 , 不能 把 y 看作 常量 来解 (1) 式, 也不能 把 x 看作 常量 来解 二式 。
对于 微分方程组, 大概 要用 定性分析 的 方法 来 解, 就是 尝试 凑一个 或者一些 函数 看 能否 满足 方程组 。
这里收录 一篇 文章 《微分方程组解法举例》 https://wenku.baidu.com/view/b79b5df1f90f76c661371a55.html , 可以参考 。
坊间 流传的 说法 是 三体问题 无解, 三体问题 可不可解 ? 我在 《我写了一个 n-体 模拟程序, 大伙来看看吧》 https://www.cnblogs.com/KSongKing/p/11626271.html 中 提出了 “K氏 n-体 猜想” :
“
可以发现, n-体 运行 一小段时间以后, 就会 发生 碰撞, 或者 相互 无限远离 。 可以 通过 多次 的 演示测试 观察, 通常, n-体 开始运行后 没有 明显 的 周期性, 并且 在 很短 的 时间 内 就 达到 了 “结局” , 所谓 结局 就是 质点 发生 碰撞, 未 碰撞 的 质点 相互 无限远离 。
据此, 我们 可以推测, 如果 存在 一个 稳定运行 的 n-体 的 话, 那么 这个 n-体 应该是 周期性 的 。
稳定运行 是指 质点 不发生 碰撞 。
进一步, 也可以这样说, 如果 一个 n-体 是 不可碰撞 的, 那么, 这个 n-体 是 周期性 的 。
我将 这个 推测 命名 为 “K氏 n-体 猜想” 。
如果 K氏 n-体 猜想 成立, 那么 大刘(刘慈欣) 写的 《三体》 小说 里 三体人 居住 的 三体恒星系统 的 三体问题 就是 可以解的 。
三体恒星系统 存在了 很长时间, 没有 发生 碰撞, 所以 应该是 周期性 的, 既然 是 周期性 的, 就可以 观察 规律 和 预测 。
”
2020-05-31 补充 :
三体 虽然 对 初始条件 敏感, 但 在 数学上, 给定一个 初始条件, 三体 的 解 是 存在的, 3 个 质点 在 某个 时间 t 的 速度 、位置 是 可以确定的 。
至少在 一段 有限 的 时间 内 是 这样 。
数学 找不到 办法 来 找到 这个 解, 也没有办法 把 这个 解 表示出来 。
三体 的 解, 以 一个 质点 在 时刻 t 的 位置 (比如 x 坐标) 来 说, 没有 固定 的 单调性, 所以 不能 表示 为 代数方程, 也没有 周期性, 所以 不能 表示为 周期函数, 具体 的 说 是 包含 三角函数 的 函数 。
但是, 按照 傅里叶级数 的 宣告, 一个 非周期函数 也可以 表示 为 傅里叶级数, 把 定义域 看作一个 周期 就可以 。
所以, 即使 三体 的 解 没有 周期性, 也 无论 多么 奇形怪状, 都 可以 表示 为 傅里叶级数 。
可以 简化一点, 在 一段 有限的时间 内, 三体 的 解 可以 表示 为 傅里叶级数 。
三维空间 的 三体 的 解 包含 18 个 分量, 一个 质点 有 速度 、位置, 速度 有 x, y, z 3 个 方向 的 分量, 位置 也有 x, y, z 3 个 方向 的 分量, 一个 质点 一共 2 * 3 = 6 个 分量, 三 个 质点 有 3 * 6 = 18 个 分量 。
每个 分量 可以用 一个 傅里叶级数 来 表示, 当然, 18 个 分量 就是由 18 个 傅里叶级数 来 表示 。