Source code for einsteinpy.symbolic.predefined.barriola_vilenkin

from sympy import diag, sin, symbols

from einsteinpy.symbolic import constants
from einsteinpy.symbolic.metric import MetricTensor


[docs] def BarriolaVilekin(c=constants.c, k=symbols("k")): """ Barriola-Vilekin monopol metric Phys. Rev. Lett. 63, 341 Manuel Barriola and Alexander Vilenkin Published 24 July 1989 Parameters ---------- c : ~sympy.core.basic.Basic or int or float Any value to assign to speed of light. Defaults to 'c'. k : ~sympy.core.basic.Basic or int or float The scaling factor responsible for the deficit/surplus angle Defaults to ``k``. """ coords = symbols("t r theta phi") t, r, th, ph = coords # define the metric metric = diag( -1, 1 / (c**2), ((k * r) ** 2) / (c**2), ((k * r * sin(th)) ** 2) / (c**2) ).tolist() return MetricTensor(metric, coords, "ll", name="BarriolaVilekinMetric")