1 | initial version |
Question 1: v(f)
, where v
is a tangent vector at a given point on a manifold and f
a scalar field on that manifold should work as is. I've opened the ticket #27856 to fix this. Thanks for your report.
Question 2: for any Sage parent (here the tangent space Tp
), the method an_element()
returns an arbitrary element of it. The end user has no control on which element is returned. For tangent spaces on a manifold of dimension $n$, the element is hard-coded to be the vector of components $(1, 2, \ldots, n)$ in the default basis.
Another example is the method an_element
of the manifold:
sage: M.an_element()
Point on the 3-dimensional differentiable manifold M
sage: M.an_element().coordinates()
(0, 0, 0)
Actually, the methods an_element
are mostly used for test suites in Sage, like
sage: TestSuite(Tp).run(verbose=True)
running ._test_additive_associativity() . . . pass
running ._test_an_element() . . . pass
running ._test_cardinality() . . . pass
running ._test_category() . . . pass
running ._test_elements() . . .
Running the test suite of self.an_element()
running ._test_category() . . . pass
running ._test_eq() . . . pass
running ._test_new() . . . pass
running ._test_nonzero_equal() . . . pass
running ._test_not_implemented_methods() . . . pass
running ._test_pickling() . . . pass
pass
running ._test_elements_eq_reflexive() . . . pass
running ._test_elements_eq_symmetric() . . . pass
running ._test_elements_eq_transitive() . . . pass
running ._test_elements_neq() . . . pass
running ._test_eq() . . . pass
running ._test_new() . . . pass
running ._test_not_implemented_methods() . . . pass
running ._test_pickling() . . . pass
running ._test_some_elements() . . . pass
running ._test_zero() . . . pass
They probably should not be exposed in the tutorial. This is more confusing than useful, as you pointed out.
2 | No.2 Revision |
Question 1: v(f)
, where v
is a tangent vector at a given point on a manifold and f
a scalar field on that manifold manifold, should work as is. I've opened the ticket #27856 to fix this. Thanks for your report.
Question 2: for any Sage parent (here the tangent space Tp
), the method an_element()
returns an arbitrary element of it. The end user has no control on which element is returned. For tangent spaces on a manifold of dimension $n$, the element is hard-coded to be the vector of components $(1, 2, \ldots, n)$ in the default basis.
Another example is the method an_element
of the manifold:
sage: M.an_element()
Point on the 3-dimensional differentiable manifold M
sage: M.an_element().coordinates()
(0, 0, 0)
Actually, the methods an_element
are mostly used for test suites in Sage, like
sage: TestSuite(Tp).run(verbose=True)
running ._test_additive_associativity() . . . pass
running ._test_an_element() . . . pass
running ._test_cardinality() . . . pass
running ._test_category() . . . pass
running ._test_elements() . . .
Running the test suite of self.an_element()
running ._test_category() . . . pass
running ._test_eq() . . . pass
running ._test_new() . . . pass
running ._test_nonzero_equal() . . . pass
running ._test_not_implemented_methods() . . . pass
running ._test_pickling() . . . pass
pass
running ._test_elements_eq_reflexive() . . . pass
running ._test_elements_eq_symmetric() . . . pass
running ._test_elements_eq_transitive() . . . pass
running ._test_elements_neq() . . . pass
running ._test_eq() . . . pass
running ._test_new() . . . pass
running ._test_not_implemented_methods() . . . pass
running ._test_pickling() . . . pass
running ._test_some_elements() . . . pass
running ._test_zero() . . . pass
They probably should not be exposed in the tutorial. This is more confusing than useful, as you pointed out.
3 | No.3 Revision |
Question 1: v(f)
, where v
is a tangent vector at a given point p
on a manifold and f
a scalar field on that manifold, should work as is. I've opened the ticket #27856 to fix this. Thanks for your report.report. A workaround is
v(f.differential().at(p))
Question 2: for any Sage parent (here the tangent space Tp
), the method an_element()
returns an arbitrary element of it. The end user has no control on which element is returned. For tangent spaces on a manifold of dimension $n$, the element is hard-coded to be the vector of components $(1, 2, \ldots, n)$ in the default basis.
Another example is the method an_element
of the manifold:
sage: M.an_element()
Point on the 3-dimensional differentiable manifold M
sage: M.an_element().coordinates()
(0, 0, 0)
Actually, the methods an_element
are mostly used for test suites in Sage, like
sage: TestSuite(Tp).run(verbose=True)
running ._test_additive_associativity() . . . pass
running ._test_an_element() . . . pass
running ._test_cardinality() . . . pass
running ._test_category() . . . pass
running ._test_elements() . . .
Running the test suite of self.an_element()
running ._test_category() . . . pass
running ._test_eq() . . . pass
running ._test_new() . . . pass
running ._test_nonzero_equal() . . . pass
running ._test_not_implemented_methods() . . . pass
running ._test_pickling() . . . pass
pass
running ._test_elements_eq_reflexive() . . . pass
running ._test_elements_eq_symmetric() . . . pass
running ._test_elements_eq_transitive() . . . pass
running ._test_elements_neq() . . . pass
running ._test_eq() . . . pass
running ._test_new() . . . pass
running ._test_not_implemented_methods() . . . pass
running ._test_pickling() . . . pass
running ._test_some_elements() . . . pass
running ._test_zero() . . . pass
They probably should not be exposed in the tutorial. This is more confusing than useful, as you pointed out.