皆さんは2物体の衝突回数を数えるだけで、円周率が求まる事を知っていますか?
とても不思議な現象ですが、実際にシミュレーションをしてみましょう!
シミュレーション
2つの物体を弾性衝突させた時の衝突回数を数えます。まずは、START/STOP ボタンを押して何回衝突するかを見てみましょう。その後、2物体の質量比を変えてみて、衝突回数がどのように変化するかを見てみましょう。
ただし、質量比は緑の物体に対する青の物体の質量の比を表しています。
衝突回数が円周率 π の最初の数桁に一致することに気づきましたか?
具体的には、質量比が 102(n−1) である時、衝突回数は円周率の最初の n 桁に一致します。
なお、質量比が 104 の時、最後(314回目)の衝突はとても時間がかかります。
このシミュレーションでは、n=3 までを見ることができます。グラフのリンクに飛べば、任意の n でシミュレーションを行えますが、 n≧4 では時間がかかりすぎるのでお勧めしません...
補足このシミュレーションでは、計算精度や計算速度の関係上、実際の衝突より長い時間がかかります。特に2物体がとても接近している間は、実際には恐ろしい速さで衝突が起こります。
なぜ π が現れる?
では、なぜ円周率 π が現れるのかを考えていきましょう。様々な証明方法がありますが、最も有名な円を用いた方法について解説します。

図のように x 軸を取り、二物体の速度を m,M 、速度を v,V とします。また、時刻 t=0 において v=0,V=V0 であるとします。
この時、物体間や壁との衝突が弾性衝突であることより、二物体のエネルギーの合計が保存します。
つまり、エネルギー保存則
21mv2+21MV2=21MV02 が成立します。ここで、 v′=mv,V′=MV とおくと、
v′2+V′2=(MV0)2 となります。よって、v′,V′ は半径 MV0 の円周上にあることがわかります!

t=0 において、上のグラフの右端の点にいます。
ではこの後、v′,V′ がどのように変化するかを考えます。二物体は衝突直前と衝突直後で運動量保存則が成立します。つまり、
が成立します。( C は定数です)
つまり、
mv′+MV′=C ⇔ V′=−mMv′+C′ となります。これは、衝突直前・直後の v′,V′ が傾き −mM の直線上に存在することを意味します。
よって、例えば1回衝突した後の v′,V′ は、先ほどの点を通る傾き −mM の直線を考えて、

図の赤い点になります。
次に軽い方の物体が左の壁に衝突します。衝突によって速度が −v になるので、 円においては −v′ にして、

上図のようになります。
後はこの繰り返しです!このようになります。

ここで、図の θ は、直線の傾きが全て −mM であることを踏まえると、
tanθ=Mm ⇔ θ=arctan(Mm) と求まります。ただし、arctan は tan の逆関数です。
また、円周角の定理より、

上図のようになります。
ここで、衝突回数が一回増えるたびに点が一個増えたことを思い出してください。図を見るとわかるように、これは 2θ の数に一致しています。
つまり、衝突回数は
2θ2π=arctan(Mm)π の整数部分に等しいです。
質量比が 102(n−1) である時、これは
arctan(10−2(n−1))π=arctan(10−(n−1))π≒10−(n−1)π=10(n−1)π となります。衝突回数はこの整数部分なので、π の最初の n 桁に一致します!
ただし、x≪1 の時に、
tanx≒x∴ x≒arctanx という近似が成り立つことを用いました。
原論文
この現象は、Gregory Galperin が PLAYING POOL WITH π という論文で2003年に発表し、広く知られるようになりました。
こちらのURLで読むことができます。(2025年3月現在)
この記事では曖昧なままにしましたが、
arctan(10−(n−1))π≒10−(n−1)π という近似の正当性についても、より深く考察しています。