#18843: Differentiable manifolds: vector fields and tensor fields
-------------------------------------+-------------------------------------
Reporter: egourgoulhon | Owner: egourgoulhon
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-7.3
Component: geometry | Resolution:
Keywords: differentiable | Merged in:
manifold, tensor field, vector |
field, differential form |
Authors: Eric Gourgoulhon, | Reviewers: Travis Scrimshaw
Michal Bejger |
Report Upstream: N/A | Work issues:
Branch: | Commit:
public/manifolds/diff_manif_tensor_fields|
dcb08fc969128ca01e9c5bb88ec1cd93aba334ff
Dependencies: #15916, #18783, | Stopgaps:
#20770 |
-------------------------------------+-------------------------------------
Comment (by egourgoulhon):
Replying to [comment:35 tscrim]:
> - To run the tests on `tensorfield.py` takes ~172 seconds (that is after
marking a bunch of them as `# long time`). This is too long IMO, and we
need to either find a way to speed things up or simplify the tests somehow
(smaller manifolds perhaps?) so they don't take so long. One or two non-
trivial top-level examples are good. For the doctests, it just needs to be
small examples showing the functionality. For any more complicated
examples needed to do a more complete test should either be relatively
small (in terms of number of lines) and be marked as `# long time` or you
need to have a separate file with the complete examples where most (all?)
tests are marked as `# long time`.
By selecting simpler examples, the last commit decreases by a factor ~2
the doctest time of `tensorfield.py`. It's difficult to go below this
because the manifold dimension is already at its minimum (for a non-
parallelizable manifold): it is 2 for all tests.
>
> - I'm not sure about importing `xder` into the global namespace.
`exterior_derivative` I am okay with since it is explicit, but `xder` is
not a descriptive name IMO. If you want it, then you can import it in your
`init.sage` file (in the `~/.sage` folder).
`xder` is no longer in the global namespace. I've also suppressed
`exterior_derivative`, but maybe we can restore the latter, as you
suggest.
>
> - I added some long versions of each of the names. It is good to at
least have the long name. I actually changed `exterior_der` to
`exterior_derivative`. I am not opposed to having an alias to `xder`
though.
In the same spirit, I have renamed `lie_der` to `lie_derivative` and set
`lie_der` as an alias to it.
>
>
> - We will probably want to use the coercion framework, so `__mul__`
which handles the scalar action should become `acted_upon` or `_rmul_`
(and `_lmul_`).
>
Actually `_rmul_` is already implemented in tensor fields and handles the
scalar action. The current `__mul__` handles mostly the tensor product.
Since this is an external operation (w.r.t. the parent module), I am not
sure that it can be changed to some single underscore method within the
coercion framework. Note that we already had `__mul__` for handling tensor
products in ` sage.tensor.modules.free_module_tensor.FreeModuleTensor`.
--
Ticket URL: <https://trac.sagemath.org/ticket/18843#comment:45>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.