Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Display connection coefficients under a change of chart

I want to define the connection components as the derivative of a scalar field in one frame and calculate their values in another frame.

M = Manifold(4, 'M', latex_name=r'\mathcal{M}')
X.<t,x,y,z> = M.chart()
U = M.open_subset('U', coord_def={X: (y!=0, x<0)})
X_U = X.restrict(U)
var('l', latex_name='\lambda')
Y.<t,l,th,r> = U.chart(r't:(0,+oo) l:(0,pi) th:(0,2*pi):\theta r:(0,+oo)')
Omega = var('Omega')
transit_Y_to_X = Y.transition_map(X_U, [t, r*cos(th)*cos(l+Omega*t), r*cos(th)*sin(l+Omega*t), r*sin(th)])

nabla = M.affine_connection('nabla', r'\nabla') 
phi = M.scalar_field(function('Phi', latex_name='\Phi')(x, y, z), name='phi', latex_name='\phi')

e = X_U.frame()

nabla[1,0,0] = e[1](phi).expr()

Then

nabla.display(coordinate_labels=False, only_nonredundant=True)

show that the coefficients are good in the X_U chart, but the change of coordinate fail

nabla.display(frame=Y.frame(), chart=Y, coordinate_labels=False, only_nonredundant=True)

What is wrong ?