#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|
3ab0af048e9ba51f09752a02f0d6544a53ffe15e
Dependencies: #15916, #18783, | Stopgaps:
#20770 |
-------------------------------------+-------------------------------------
Changes (by tscrim):
* status: needs_review => needs_work
* commit: 2150a43db88da8007dd6b35b1a5c6876e1c67eab =>
3ab0af048e9ba51f09752a02f0d6544a53ffe15e
* reviewer: => Travis Scrimshaw
Comment:
Okay, here's the first round. Overall, the code looks okay, but I haven't
check things in detail yet. I've made my way through most of the doc;
there are likely some other doc fixes that I will need to do, but I've
done a fair bit of clean-up. However, there are some issues:
- 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`.
- 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).
- 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.
- While in general, it is good to adhere to 80 character lines, sometimes
it just makes it harder read (which is why it is a guideline). I exercised
some judgment and made some lines go over this because IMO they become
easier to read.
- We will probably want to use the coercion framework, so `__mul__` which
handles the scalar action should become `acted_upon` or `_rmul_` (and
`_lmul_`).
I believe this is the biggest of the remaining !SageManifolds tickets, so
we just need to power through this and the rest should be easy...
--
Ticket URL: <https://trac.sagemath.org/ticket/18843#comment:35>
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.