Ask Your Question

Revision history [back]

AttributeError when defining a metric on a differentiable manifold

Hello everyone,

I am getting started with SageMath and try to define a metric on a differential manifold. Despite tutorials, search online and asking questions to colleagues, I cannot understand the following error.

Here is the code, with Kernel SageMath 9.0

FM = Manifold(2,'FM', structure='Riemannian', start_index=1)

K = FM.metric('K')

K[1,1]=1

which generates the following error AttributeError Traceback (most recent call last) <ipython-input-17-f83570b8b1cf> in <module>() 1 K = FM.metric('K') ----> 2 K[Integer(1),Integer(1)]=Integer(1)

/ext/sage/sage-9.0/local/lib/python3.7/site-packages/sage/tensor/modules/free_module_tensor.py in __setitem__(self, args, value) 1629 else: 1630 basis = self._fmodule._def_basis -> 1631 self.set_comp(basis)[args] = value 1632 1633 def copy_from(self, other): /ext/sage/sage-9.0/local/lib/python3.7/site-packages/sage/manifolds/differentiable/tensorfield_paral.py in set_comp(self, basis) 883 self._is_zero = False # a priori 884 --> 885 if basis._domain == self._domain: 886 # Setting components on the tensor field domain: 887 return FreeModuleTensor.set_comp(self, basis=basis) AttributeError: 'One' object has no attribute '_domain'

It seems that the index type in the metric is wrong. Is that the problem? Have you some ideas to solve the problem?

Thanks