Ask Your Question

Revision history [back]

Pullback computation hanging

I have the following code:

M = Manifold(3, 'M')
X.<x,y,z> = M.chart()

N = Manifold(3, 'N')
XN.<a,b1,b2> = N.chart()

omega = N.diff_form(2)
omega[0,1] = 2*b2/a^3
omega[0,2] = -2*b1/a^3
omega[1,2] = -2/a^2

Then I define a map M to N.

r = sqrt(x^2+y^2+z^2)
t = var('t', domain='real')
STSa = r^(1/2)*(r*cosh(2*r*t) - z*sinh(2*r*t))^(-1/2)
STSb1 = (x*sinh(2*r*t)/r)*STSa
STSb2 = (y*sinh(2*r*t)/r)*STSa

STS = M.diffeomorphism(N, [STSa, STSb1, STSb2])

Finally, I attempt to compute the pullback of omega to M by the map STS:

s = STS.pullback(omega)

Unfortunately, the program runs and runs and nothing ever comes out. Can anyone identify the issue? Of course, the Jacobian of the map STS will not be very nice, but this pullback should be perfectly computable.

click to hide/show revision 2
retagged

Pullback computation hanging

I have the following code:

M = Manifold(3, 'M')
X.<x,y,z> = M.chart()

N = Manifold(3, 'N')
XN.<a,b1,b2> = N.chart()

omega = N.diff_form(2)
omega[0,1] = 2*b2/a^3
omega[0,2] = -2*b1/a^3
omega[1,2] = -2/a^2

Then I define a map M to N.

r = sqrt(x^2+y^2+z^2)
t = var('t', domain='real')
STSa = r^(1/2)*(r*cosh(2*r*t) - z*sinh(2*r*t))^(-1/2)
STSb1 = (x*sinh(2*r*t)/r)*STSa
STSb2 = (y*sinh(2*r*t)/r)*STSa

STS = M.diffeomorphism(N, [STSa, STSb1, STSb2])

Finally, I attempt to compute the pullback of omega to M by the map STS:

s = STS.pullback(omega)

Unfortunately, the program runs and runs and nothing ever comes out. Can anyone identify the issue? Of course, the Jacobian of the map STS will not be very nice, but this pullback should be perfectly computable.