🪞 Two Grids, One Shadow (C++ / WASM)

同じブラックホールを、まったく違う 2 つの格子で計算して並べたものです。

左:静止した格子右:流れる水(格子は固定)
格子動かない。等方座標ユークリッド。格子は動かず、水が落ちる
光速場所で変わる c(ρ)=(1−u)/(1+u)³厳密に一定。ただし川に流される
地平面とはc が 0 になる面(ρ = m/2)川の速さが c に達する面(r = 2m)
絵の見た目喉のところに全部詰まるふつうの半径のまま広がる
読み込み中…

動いているものが 3 種類あります。
青い丸い輪(右だけ)。無限遠で静止していた殻が落ちてくるところで、 厳密に dr/dt = −√(2m/r)。明るいほど速いので、いちばん明るくなるのが r = 2m ―― そこで水が光速に達します。 右の四角い目は動かない平らな定規で、これは動かないのが正しい(空間はユークリッドのまま)。
水色の点内向きの光橙色の点外向きの光。 左では光速そのものが場所で変わり、右では光速はいつでも 1 で、水に流されます。

見どころは、水色の点が左右で食い違うことです。 左では喉に近づくほど遅くなっていつまでも着かず、団子になって詰まります。 右では r = 2m を何ごともなく通り抜けます
食い違っているのは時計の目盛りの付け方だけで、光の側には何も起きていません。数値でも出してあります —— 静止格子では ρ−m/2 が e^(−t/4m) で減るだけ(実測 τ = 3.9846 m/c、厳密値 4)なので t が「通過」に目盛りを振れず、 川の側では t = 3.622 m/c で通過します。どちらの絵でも、光は戻ってきません。
そして橙色の点は、左右どちらでも同じ面で止まります —— 左は c(ρ) が 0 になるから(面積半径 2.000000000 m)、右は水が光速に達するから(r = 2.000000000 m)。 仕組みは別で、面は同じ。これが「座標の違いは物理の違いではない」の中身です。

それでも紫の輪 —— 影の縁 —— は左右でぴったり同じ大きさです。 片方では「光速が 0 になる」ことで、もう片方では「川が光速に追いつく」ことで決まるのに、 出てくる衝突径数は同じ数になります:
静止格子 b_crit = 5.196152422707(min ρ/c(ρ) から)、 川の座標 b_crit = 5.196152422707(min r/√(1−2m/r) から)、 √27 = 5.196152422707差 1.78×10⁻¹⁵ —— 倍精度の丸め誤差そのものです。
光子軌道の面積半径も 左 2.999999984 / 右 2.999999999 で一致(どちらも 3m)。
落ちてくる水も飾りではありません —— r = 10m から t = 6m/c 落とすと積分器は 7.094073797 m、 厳密解 (r₀^(3/2) − (3/2)√2·t)^(2/3) は 7.094073797 m、差 7.8×10⁻¹⁰。

曲がり角も一致します。b を b_crit に近づけると光は何周も回りますが、 ちょうど π だけ曲がる(=真後ろに戻ってくる)b を左右それぞれで探すと、 右(折り返し点の積分)で 3.14327 rad、目標 π = 3.14159 と 4 桁。 左(光線追跡)は 3.04691 rad で 3% 低いですが、これは有限の距離 X₀ で発射・打ち切っている分の誤差で、 X₀ を伸ばすと π に寄っていきます。物理の違いではありません。

言いたいことはひとつです —— 座標の違いは物理の違いではない。 格子が歪んでいるか、光速が変わるか、空間が流れているかは選べます。 選べないのは、望遠鏡が撮る影の大きさ 2√27 m のほうです。
→ 静止格子だけを詳しく見るなら flatgrid_os、 川の側だけなら river_os、 円軌道の不安定さは photonsphere_os

ソース: github.com/yomei-o/universe_cpp