EinsteinPy の使用例:球対称真空非静的メトリック

In [1]:
from sympy import *
from einsteinpy.symbolic import *

球対称だけど時間依存性があるメトリック:その1

ランダウ・リフシッツ「場の古典論」§102. 球状物体の重力崩壊の項に載っている。

$$ds^2 = -d\tau^2 + \frac{dR^2}{\left(\frac{3}{2}(R-\tau)\right)^{2/3}}
+ \left(\frac{3}{2}(R-\tau)\right)^{4/3} (d\theta^2 + \sin^2\theta d\phi^2)$$

このメトリックが真空のアインシュタイン方程式の解であることを確かめる。

(ただし,この解は座標変換でシュバルツシルトメトリックになる。)

Python, EinsteinPy で分数を扱うときは注意。

In [2]:
2/3
Out[2]:
0.6666666666666666
In [3]:
Rational(2, 3)
Out[3]:
$\displaystyle \frac{2}{3}$
In [4]:
tau, R, theta, phi = symbols('tau, R, theta, phi')
f = (Rational(3,2)*(R-tau))**(Rational(2,3))

Metric = diag(-1, 1/f, f**2, f**2*sin(theta)**2).tolist()
g = MetricTensor(Metric, [tau, R, theta, phi])
In [5]:
g.tensor()
Out[5]:
$\displaystyle \left[\begin{matrix}-1 & 0 & 0 & 0\\0 & \frac{1}{\left(\frac{3 R}{2} – \frac{3 \tau}{2}\right)^{\frac{2}{3}}} & 0 & 0\\0 & 0 & \left(\frac{3 R}{2} – \frac{3 \tau}{2}\right)^{\frac{4}{3}} & 0\\0 & 0 & 0 & \left(\frac{3 R}{2} – \frac{3 \tau}{2}\right)^{\frac{4}{3}} \sin^{2}{\left(\theta \right)}\end{matrix}\right]$
In [6]:
ric = RicciTensor.from_metric(g)
print(ric.config)
ric.tensor()
ll
Out[6]:
$\displaystyle \left[\begin{matrix}0 & 0 & 0 & 0\\0 & 0 & 0 & 0\\0 & 0 & 0 & 0\\0 & 0 & 0 & 0\end{matrix}\right]$
In [7]:
ein = EinsteinTensor.from_metric(g)
print(ein.config)
ein.tensor()
ll
Out[7]:
$\displaystyle \left[\begin{matrix}0 & 0 & 0 & 0\\0 & 0 & 0 & 0\\0 & 0 & 0 & 0\\0 & 0 & 0 & 0\end{matrix}\right]$

… ということで,Ricci テンソルも,そして Einstein テンソルも全ての成分がゼロになるので,真空解である。

球対称だけど時間依存性があるメトリック:その2

\begin{eqnarray}
ds^2 &=& -dt^2 + t^2 \left(\frac{dr^2}{1 + r^2} + r^2(d\theta^2 + \sin^2\theta d\phi^2) \right)
\end{eqnarray}

このメトリックが真空のアインシュタイン方程式の解であることを確かめる。

(これはフリードマン方程式で $\Omega_{\rm m} = \Omega_{\Lambda} = 0$ としたときの解で,ミルン宇宙と呼ばれている。)

In [8]:
t, r, theta, phi = symbols('t, r, theta, phi')

Metric = diag(-1, t**2/(1+r**2), t**2*r**2, t**2*r**2*sin(theta)**2).tolist()
g = MetricTensor(Metric, [t, r, theta, phi])
In [9]:
g.tensor()
Out[9]:
$\displaystyle \left[\begin{matrix}-1 & 0 & 0 & 0\\0 & \frac{t^{2}}{r^{2} + 1} & 0 & 0\\0 & 0 & r^{2} t^{2} & 0\\0 & 0 & 0 & r^{2} t^{2} \sin^{2}{\left(\theta \right)}\end{matrix}\right]$
In [10]:
ein = EinsteinTensor.from_metric(g)
print(ein.config)
ein.tensor()
ll
Out[10]:
$\displaystyle \left[\begin{matrix}0 & 0 & 0 & 0\\0 & 0 & 0 & 0\\0 & 0 & 0 & 0\\0 & 0 & 0 & 0\end{matrix}\right]$

… ということで,Einstein テンソルの全ての成分がゼロになるので,真空解である。