弱重力場中のテスト粒子の軌道
\(r_g\) の1次までの範囲で(ただし,\(O(r_g e^2)\) の項は無視して)求めたテスト粒子の軌道は,以下のように書けることがわかった。
$$r = \frac{a(1-e^2)}{1 + e \cos(\gamma\phi) }$$
ここで
$$\gamma = \sqrt{ 1 – \frac{3 r_g}{a(1-e^2)}} \simeq 1 – \frac{3 r_g}{2a(1-e^2)}
$$
また,$a$ および $e$ はニュートン理論では楕円の「軌道長半径」および「離心率」に対応するが,一般相対論的な近似解では,閉じた楕円にならないので,厳密には「軌道長半径」とか「離心率」とかなどと呼ぶことはできない。
しかし,軌道が厳密には解けないとしても,運動が有界であれば $r$ が無限大になったりゼロになったりすることなく,原点のまわりを有限の範囲
$$ r_g < r_{\rm min} \le r \le r_{\rm max}$$
で,有界な束縛運動をするハズである。そこで,
\begin{eqnarray}
r_{\rm max} &\equiv& a\,(1+e) \\
r_{\rm min} &\equiv& a\,(1-e)
\end{eqnarray}
として変数 $a$ および $e$ を定義している。
近(日)点移動角
また,$0<\gamma < 1$ であるために,$\phi = 0$ で $r$ が最小値 \(r_{\textrm{min}}\) をとった後,次の最小値となる角度 \(\phi\) は $2\pi$ ラジアンからさらに $\varDelta$ だけ必要である。この現象を近点移動(中心天体が太陽の場合は近日点移動),この角度 $\varDelta$ を近点移動角(中心天体が太陽の場合は近日点移動角)と呼び,以下のようにして求められる。
\begin{eqnarray}
(2\pi + \varDelta) \gamma &=& 2\pi\\
\therefore\ \ \varDelta &=& \frac{2\pi}{\gamma} – 2 \pi\\
&=&\frac{3\pi r_g}{a(1-e^2)} = \frac{6\pi GM}{c^2 a (1-e^2)}
\end{eqnarray}
Maxima-Jupyter での計算例
Maxima で水星の近日点移動
一般相対論的効果により,近日点が1周あたり以下の値だけ移動。
$$ \Delta = \frac{3\pi r_g}{a(1-e^2)} = \frac{6\pi GM}{c^2 a (1-e^2)}$$
では,一般相対論的効果による水星の近日点移動は100年あたり何秒角であるか。
Delta = Delta: 6*%pi*G*M/(c**2 * a * (1-e**2));
/* 万有引力定数 */
G: 6.674E-11$
/* 太陽質量 kg */
M: 1.9891E30$
/* 水星の軌道長半径 m */
a: 57.909E9$
/* 水星の離心率 */
e: 0.2056$
/* 水星の公転周期 年 */
T: 0.241$
/* 光速 m/s */
c: 299792458$
ev(float(Delta));
ラジアンを秒になおし,100年あたりの公転回数 $\displaystyle \frac{100}{T}$ をかける。
fpprintprec: 3$
print("100年あたり",
float(ev(Delta) /%pi * 180 * 60 * 60 * 100/T), "秒角")$
Python の SymPy での計算例
Python で水星の近日点移動
一般相対論的効果により,近日点が1周あたり以下の値だけ移動。
$$\Delta = \frac{3\pi r_g}{a(1-e^2)} = \frac{6\pi GM}{c^2 a (1-e^2)}$$
では,一般相対論的効果による水星の近日点移動は100年あたり何秒角であるか。
from sympy.abc import *
from sympy import *
Delta = 6*pi*G*M/(c**2 * a * (1-e**2))
Delta
# 万有引力定数
G = 6.674E-11
# 太陽質量 kg
M = 1.9891E30
# 水星の軌道長半径 m
a = 57.909E9
# 水星の離心率
e = 0.2056
# 水星の公転周期 年
T = 0.241
# 光速 m/s
c = 299792458
Delta = 6*float(pi)*G*M/(c**2 * a * (1-e**2))
Delta
ラジアンを秒角になおし,100年あたりの公転回数 $\displaystyle \frac{100}{T}$ をかける。
print('100年あたり %4.1f 秒'
% (Delta/float(pi) * 180 * 60 * 60 * 100/T))
近点移動のイメージ