📡 Radar — Two Charts, One Answer (C++ / WASM)

数値相対論が使う 3+1 の帳簿(ラプス α とシフト β)で解いたものと、 c·t = const の座標で解いたものを、同じ実験で突き合わせます。 実験はレーダー往復です ―― 皿(面積半径 50m)から光のパルスを内側へ撃ち、鏡で跳ね返して、皿で受ける。 これは実際に測られている量(Shapiro 遅延、Cassini で 10⁻⁵ の精度)です。

先に断っておきます。このデモはアインシュタイン方程式を解いていません。 計量は解析形を手で打ち込んだ固定背景で、その上をテスト場が流れるだけです。 546 行のうち相対論は 13 行 ―― 計量の 1 行関数 11 個と、座標光速の式 2 行だけ。 残りは 4 次中心差分・RK4・シンプソン則・5点フィルタで、相対論とは無関係な普通の数値計算です。
ADM も BSSN も、拘束条件も、曲率も、地平面探索も、波形抽出も、AMR も入っていません。 本物の数値相対論の本体はそこにあります。ここで確かめているのは 「同じ時空を 2 通りの座標で書いたとき、観測量が一致するか」だけです。

両方とも 3+1 の座標光速の式は 1 本だけで、渡す (α, β, γ) が違うだけです。

ラプス αシフト βrγrr出てくる光速 dx/dt = −β ± α/√γ
pg1√(2m/r)1±1 − √(2m/r) ← 空間は平ら、自由落下する観測者が格子を横切る
iso(1−u)/(1+u)0(1+u)⁴±(1−u)/(1+u)³ ← 格子は静止、光速が場所で変わる

どちらの座標でも、格子は落ちません。格子点は座標のラベルなので動きようがない。 α が言うのは「スライスに直交して進む観測者が自由落下しているか」、 β が言うのは「格子がその落下に付き合うか」です。法観測者の座標速度はちょうど dxi/dt = −βi
pg では α=1 なので法観測者は落下していて(nμ = (1, −√(2m/r), 0, 0)、無限遠で静止から落ちる「雨」)、 シフトは格子を付き合わせないために入っています ―― 動径ラベルを面積半径に固定するためです。
逆に β=0 にすると格子が本当に自由落下に乗ります(測地線スライシング)。 静止スライスから始めると喉が r=0 に着くのは固有時 ちょうど π·m = 3.141592654 で、それがその計算の寿命の全部です。

読み込み中…

結論から書きます。一致の幅は、測れる範囲ときっちり同じで、それより一歩も広くありません。

pgiso
いつ折り返したか34.07503148.969813 14.894782
いつ帰ってきたか97.93962659915297.939626599151 5.3×10⁻¹³

「いま光はどこにいるか」は各座標の私的な帳簿です ―― 「いま」が切り方の選択だからです。 上のグラフの真ん中の段を見てください。同じ t で、pg のパルスと iso のパルスはまったく違う場所にいます (既定の設定だと最大で 20m 近く離れます)。
往復時間はそうではありません。これは同じ場所にある 1 個の時計の読みの差でしかないので、切り方に依れません。 そして実際に依っていません ―― 共通の被積分関数を 1 つも持たない 2 つの積分から、12 桁同じ数が出ます:
pg は ∫ 2 dr / (1 − 2m/r)、iso は ∫ 2 dρ / c(ρ)、どちらも 2[(r₁−r₂) + 4m·ln((r₁−2m)/(r₂−2m))]。

グリッドで解いた方も一致します(こちらが数値相対論の本番)。 4 次精度の差分+RK4 で、鏡と皿はどちらの座標でもぴったり格子点に乗せてあります。 格子を細かくすると、2 つの独立した計算が同じ数に収束します:

格子点 npg の誤差iso の誤差pg と iso の差収束次数
4006.6×10⁻³2.3×10⁻³4.3×10⁻³
8002.8×10⁻⁴1.2×10⁻⁴1.5×10⁻⁴4.6 / 4.2
16003.4×10⁻⁵7.4×10⁻⁶2.6×10⁻⁵3.0 / 4.1
32001.9×10⁻⁵1.2×10⁻⁵6.6×10⁻⁶測定の床 ~10⁻⁵

10⁻⁵ で止まるのは物理でも座標でもなく、到達時刻を山の頂点から読むときの 3 点放物線あてはめの限界です。 隠さずに書いておきます。戻ってきたパルスの高さは 0.9996(散逸ほぼゼロ)。

つまり c·t = const の座標は、何も新しいことを言いません。 数値相対論が出す答えと、測れる量については 12 桁同じで、測れない量(いまどこ、いつ折り返した)については堂々と違う。 それが「座標の違い」の意味の全部です。
→ 影の大きさで同じことを見るなら twogrid_os、 座標そのものが裂ける話は gaugeshock_os

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