三体問題 シミュレーター 戻る
物理シミュレーター

三体問題 シミュレーター

3天体の重力相互作用をリアルタイム可視化。figure-8周期解・ラグランジュ安定三角形など特殊解から、ポアンカレが1890年に証明した一般解不在の「カオス」まで体験。

プリセット
パラメータ設定
● 質量 m₁
● 質量 m₂
● 質量 m₃
G 定数
軌跡の長さ
pt
再生コントロール
軌跡の比較
計算結果
全エネルギー E
角運動量 L
0.00
経過時間 t
800
Trail pts
三体問題シミュレーション — リアルタイム状態値
天体 x y vx vy
天体1 (青)
天体2 (ピンク)
天体3 (緑)
天体1(青) 天体2(ピンク) 天体3(緑)
エネルギー内訳
運動エネルギー:
ポテンシャルエネルギー:
全エネルギー:
角運動量 (z成分):
理論・主要公式

各天体 $i$ に働く重力加速度:

$$\ddot{\mathbf{r}}_i = G \sum_{j \neq i}\frac{m_j (\mathbf{r}_j - \mathbf{r}_i)}{|\mathbf{r}_j - \mathbf{r}_i|^3}$$

全エネルギー(保存量):

$$E = \frac{1}{2}\sum_i m_i |\dot{\mathbf{r}}_i|^2 - G\sum_{i \lt j}\frac{m_i m_j}{|\mathbf{r}_i - \mathbf{r}_j|}$$

角運動量(保存量):$\mathbf{L}= \sum_i m_i (\mathbf{r}_i \times \dot{\mathbf{r}}_i)$

数値積分:リープフロッグ(Störmer–Verlet)、$\Delta t = 0.0005$

ポアンカレ(1890年)は一般三体問題が解析積分を持たないことを証明。これがカオス理論の出発点となった。

フィードバック
ご意見・不具合をお寄せください

三体問題シミュレーターとは

🙋
三体問題って何ですか?太陽と地球みたいに2つなら楕円軌道できれいに解けるのに、天体が3つになるとどうしてそんなに難しいんですか?
🎓
大まかに言うと、3つの天体が互いに重力で引き合う運動は、長期的に予測できない「カオス」の世界に入ってしまうんだ。ポアンカレが証明したように、一般解をきれいな数式で表すことは原理的に不可能なんだよ。でも、このシミュレーターで上の「プリセット」から「Figure-8」を選んでみて。2000年に発見された、等質量の3つが8の字を追いかける、めったにない美しい周期解が見られるよ。
🙋
え、そうなんですか!確かに8の字できれいに回ってる!でも、この「質量 m₁」のスライダーをほんの少しだけ、例えば1.0から1.001に変えたらどうなりますか?
🎓
良いところに気づいたね。それが三体問題の本質だ。初期条件やパラメータのごくわずかな変化が、時間が経つと軌道を完全に非常ににするんだ。シミュレーターで確認してみて。最初は似た動きでも、すぐに複雑に絡み合い、最後には1つが吹っ飛んでいったりする。これが「初期値敏感性」、つまりカオスだよ。実務では、宇宙機をラグランジュ点に置くときも、微小な摂動を常に監視・制御する必要があるんだ。
🙋
なるほど…。でも「軌跡の長さ」を長くすると、画面が軌跡だらけで見づらくなります。あの軌跡は、コンピュータはどうやって計算してるんですか?
🎓
あの軌跡は、リープフロッグ法という数値積分法で刻一刻と位置を計算してつないでいるんだ。速度と位置を半歩ずつずらして計算するから、エネルギーがだいたい保存されて長い計算でも安定するんだよ。でも、これが「N体問題」のシミュレーションの基本。例えば銀河の形成シミュレーションでは、Barnes–Hut法という工夫で数十億個の星の動きを計算するんだ。まずはこのツールで、3体のカオスを体感してみよう!

よくある質問

いいえ、必ずしもカオスになるとは限りません。質量や位置・速度によっては、周期解や安定な三角形配置(ラグランジュ解)が現れることもあります。カオスは特定の初期条件の組み合わせで顕著になります。
3つの天体の質量を等しくし、特定の位置と速度(例:8の字軌道の数値解)を初期値として与える必要があります。本シミュレーターには、プリセットとしてfigure-8解を選択できる機能がありますので、そちらをご利用ください。
カメラの追従モードを有効にするか、ビューのリセットボタンで視点を初期位置に戻してください。また、初期速度が大きすぎると系が不安定になるため、速度スケールを小さく調整することをおすすめします。
原理的には可能ですが、現実の質量比や距離スケールを正確に設定する必要があります。ただし、数値誤差や長時間のカオス的振る舞いにより、長期間の正確な予測は困難です。教育・観察目的でのご利用を推奨します。

実世界での応用

天体力学・太陽系安定性解析:太陽系は多体問題の塊です。長期的に地球の軌道は安定なのか? 冥王星以遠の小天体の動きは? 三体問題の理解は、こうした大規模なN体シミュレーションの基礎となります。

宇宙機軌道設計(ラグランジュ点利用):地球と月の重力が釣り合うラグランジュ点は、宇宙望遠鏡を置くのに好都合です。これは制限三体問題の特殊解。ただし、実際は太陽の摂動などがあり、カオス的な影響を受けるため、定期的な軌道修正が必要です。

連星系・系外惑星系のダイナミクス研究:2つの恒星の周りを回る惑星(周連星惑星)は、まさに三体問題です。その軌道が長期にわたって安定に存在できる条件は何か? 生命居住可能領域はどこか? を探る上で核心的な課題です。

数値計算アルゴリズム開発:三体問題の高速かつ高精度なシミュレーション手法は、銀河の形成や星団の進化を扱う「重力多体問題」の計算手法(ツリー法、高速多重極法など)の開発の礎となっています。

よくある誤解と注意点

まず、「シミュレーション結果がいつも正しい」と思わないでください。このツールは数値計算の一種であり、リープフロッグ法も万能ではありません。特に、天体が極端に接近する「ニアミス」が起こると、計算誤差が急激に大きくなり、物理的にありえない高速回転や吹き飛びが発生することがあります。実務では、こうした特異点近傍の処理には特別な工夫が必要です。

次に、「プリセットは特別な魔法の解」という誤解。Figure-8解は確かに美しいですが、それは質量比や位置・速度が完璧に調整された、非常にデリケートな平衡状態です。現実の宇宙でこの配置が自然に生まれる確率は限りなくゼロに近い。あくまで数学的に存在する「可能性の一つ」として見るのが正しい理解です。

パラメータ設定のコツとしては、無次元化を意識すると良いでしょう。例えば、質量を1, 10, 100と設定するより、総質量を1に規格化して(0.1, 0.3, 0.6)などと設定すると、系の挙動を比較・理解しやすくなります。距離や時間も同様で、例えば太陽-地球間を1(天文単位)、1年を1とするような単位系を頭の中で考えると、現実感が湧きます。

使い方ガイド

  1. 質量入力欄(m1Val, m2Val, m3Val)に各天体の質量をkg単位で設定。例:太陽質量1.989×10³⁰kg、地球質量5.972×10²⁴kg
  2. 重力定数gConstを6.674×10⁻¹¹ N·m²/kg²に設定し、初期位置と速度ベクトルを座標系に配置
  3. シミュレーション開始後、全エネルギーE、角運動量L、経過時間tの変化を監視しながら軌道を追跡

具体的な計算例

火星質量6.417×10²³kg、木星質量1.898×10²⁷kg、土星質量5.683×10²⁶kgの三体系において、初期配置を距離5AU間隔で設定した場合、figure-8周期解では約20年周期で安定軌道を形成。全エネルギーE≈-2.5×10³³J、角運動量L≈1.8×10⁴⁰kg·m²/sで推移。ラグランジュ点L4/L5では三角形配置を保ちながら公転する

実務での注意点