#18640: Topological manifolds: scalar fields
-------------------------------------+-------------------------------------
Reporter: egourgoulhon | Owner: egourgoulhon
Type: enhancement | Status: needs_info
Priority: major | Milestone: sage-7.2
Component: geometry | Resolution:
Keywords: topological | Merged in:
manifolds | Reviewers:
Authors: Eric Gourgoulhon, | Work issues:
Michal Bejger | Commit:
Report Upstream: N/A | 3b92a85394e8fc6f7572c58d0a6ce8b1bebacce2
Branch: | Stopgaps:
public/manifolds/top_manif_scalar_fields|
Dependencies: #18529 |
-------------------------------------+-------------------------------------
Changes (by tscrim):
* status: needs_review => needs_info
* milestone: sage-7.0 => sage-7.2
Comment:
Yay, finally had time to go through this. So, compared to the previous
ticket, there is a lot less to discuss. I've mostly pushed a bunch of
documentation changes on my last commit. However, I think there are still
a few things to do.
- I am guessing there will eventually be another subclass of
`CoordFunction`? At present, there does not seem to be a reason to have an
ABC. Moreover, you could probably make any numerical coordinate chart be
`._express` with the appropriate methods. However, I am wondering if there
should be a parent for `CoordFunction` (and have `CoordFunction` be a
subclass of `AlgebraElement`), which would allow you to not duplicate code
and use the coercion framework. Actually, perhaps `CoordFunction` should
be a subclass of `Morphism`.
Also, I converted the methods in `CoordFunction` to `@abstract_method`
since these get picked up by the `TestSuite` as opposed to raising a
`NotImplementedError`. (I haven't fixed the doctests yet in case the ABC
gets removed.)
- I understand why you want to put "the" in the string representations
(e.g., in `ScalarFieldAlgebra`) because it is how we would say it (in
English), but this breaks convention with other parts of Sage. Moreover,
it implies a certain amount of uniqueness to the manifold. However, there
could be 2 different manifolds with the same dimension, name, etc.
- Similarly, in the docstrings, we should change "the *" to "this *"
(sorry I didn't catch this previously).
- I don't like `omit_function_args` and `nice_derivatives` being included
in the global namespace. I think these are better converted to global
options. The question becomes what to attach the global options to. I am
thinking `Manifold` (a function is a Python object too, so we can attach
data to it) and `TopologicalManifold`. Either that, or we just have one
object `ManifoldOptions` into the global namespace (but I am less
favorable to this option).
- There are failing doctests in `utilities.py` likely due to recent
changes in the symbolic function code (independent of my changes).
There's still likely a few more things that might need a little bit of
attention, but I am pretty sure these are all of the main points.
--
Ticket URL: <http://trac.sagemath.org/ticket/18640#comment:28>
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.