Opened 15 months ago

Last modified 2 months ago

#30189 new task

Add Examples to Manifolds Catalog

Reported by: gh-mjungmath Owned by:
Priority: major Milestone: sage-9.5
Component: manifolds Keywords:
Cc: egourgoulhon, tscrim, gh-tobiasdiez Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by egourgoulhon)

The current catalog is nice to have but still very limited or incomplete. Constructing some examples in the current catalog also takes a lot of time.

While improving and extend this, it is also a good opportunity to expand the tutorials a little bit. Furthermore, most of our docstring examples are based on the 2-sphere. Hence we can perhaps shorten or simplify some parts of the documentation.

Step 1: rearrange folder structure (#30799)

Step 2: unification/improvement/extension of preexisting models

  • More Flexible Coordinate Treatment for EuclideanSpace (#30824)
  • Category of connected manifolds will be joined to spheres, Euclidean spaces and open intervals (#31243)
  • Add Orientation to EuclideanSpace
  • Sphere (#30804)
  • Kerr (some inspiration may be found in the class KerrBH of the Sage package kerrgeodesic_gw)
  • Minkowski
  • Torus
  • #32228 Move examples from sage.geometry.riemannian_manifolds to sage.manifolds

Step 3: add new examples

  • Real Projective Space / Real Grassmannians (#31249)
  • Complex Projective Space / Complex Grassmannians (#31249)
  • Hyperbolic space (a starting point may be this notebook)

Step 4: improve the tutorial/doctests

  • simplify preexisting 2-sphere examples
  • add thorough tutorial with old/new models

Change History (24)

comment:1 follow-up: Changed 15 months ago by egourgoulhon

This sounds like a very good idea!

Note that in order not to clutter the global namespace, one can let access to the sphere and the hyperbolic space via the manifold catalog. The current version of the catalog is very primitive and the function Sphere() in it should call the constructor the sphere class, as soon as the latter is ready.

comment:2 in reply to: ↑ 1 ; follow-up: Changed 15 months ago by gh-mjungmath

Replying to egourgoulhon:

This sounds like a very good idea!

Note that in order not to clutter the global namespace, one can let access to the sphere and the hyperbolic space via the manifold catalog. The current version of the catalog is very primitive and the function Sphere() in it should call the constructor the sphere class, as soon as the latter is ready.

Ah, that is very nice. Actually, I was not aware that something like that exists. This should be populated somewhere more obvious. Probably in a tutorial?

So, the only thing that should be added now is the hyperbolic space, right?

comment:3 follow-up: Changed 15 months ago by gh-mjungmath

By the way, I noticed that the result coming from sage.manifolds.catalog.Sphere is not even correct:

sage: S.<th, ph> = manifolds.Sphere()
sage: S
2-dimensional Riemannian submanifold S embedded in the Euclidean
 space E^3
sage: S.atlas()
[Chart (S, (th, ph))]

This is not a correct atlas.

comment:4 in reply to: ↑ 2 Changed 15 months ago by egourgoulhon

Replying to gh-mjungmath:

Ah, that is very nice. Actually, I was not aware that something like that exists. This should be populated somewhere more obvious. Probably in a tutorial?

Indeed, when it is more developed.

So, the only thing that should be added now is the hyperbolic space, right?

No, there remains to introduce a proper sphere class, on the model of EuclideanSpace, with methods like stereographic_coordinates.

comment:5 in reply to: ↑ 3 Changed 15 months ago by egourgoulhon

Replying to gh-mjungmath:

By the way, I noticed that the result coming from sage.manifolds.catalog.Sphere is not even correct:

sage: S.<th, ph> = manifolds.Sphere()
sage: S
2-dimensional Riemannian submanifold S embedded in the Euclidean
 space E^3
sage: S.atlas()
[Chart (S, (th, ph))]

This is not a correct atlas.

Indeed. As I say in comment:1, the catalog is in a primitive stage.

comment:6 Changed 15 months ago by gh-mjungmath

Now I see what you mean. I first thought that "primitive" was just referring to the amount of examples.

That's good: there's still work to do. :)

comment:7 Changed 14 months ago by gh-tobiasdiez

  • Cc gh-tobiasdiez added

comment:8 Changed 12 months ago by gh-mjungmath

  • Description modified (diff)
  • Summary changed from Add Sphere and Hyperbolic Space Permanently to Add Models to Manifolds Catalog
  • Type changed from enhancement to task

comment:9 Changed 12 months ago by gh-mjungmath

  • Description modified (diff)

comment:10 Changed 12 months ago by gh-mjungmath

  • Description modified (diff)

comment:11 Changed 12 months ago by gh-mjungmath

  • Description modified (diff)
  • Summary changed from Add Models to Manifolds Catalog to Add Examples to Manifolds Catalog

comment:12 Changed 12 months ago by gh-mjungmath

  • Description modified (diff)

comment:13 Changed 12 months ago by gh-mjungmath

  • Description modified (diff)

comment:14 Changed 12 months ago by mkoeppe

  • Milestone changed from sage-9.2 to sage-9.3

comment:15 Changed 12 months ago by gh-mjungmath

  • Description modified (diff)

comment:16 Changed 9 months ago by gh-mjungmath

  • Description modified (diff)

comment:17 Changed 9 months ago by gh-mjungmath

  • Description modified (diff)

comment:18 Changed 8 months ago by mkoeppe

  • Milestone changed from sage-9.3 to sage-9.4

Setting new milestone based on a cursory review of ticket status, priority, and last modification date.

comment:19 follow-up: Changed 7 months ago by mkoeppe

There is also some old code in sage.geometry.riemannian_manifolds that seems to provide some examples

comment:20 in reply to: ↑ 19 Changed 7 months ago by egourgoulhon

Replying to mkoeppe:

There is also some old code in sage.geometry.riemannian_manifolds that seems to provide some examples

Indeed! These examples should be integrated into the catalog and then sage.geometry.riemannian_manifolds should be deprecated, since all the functionalities it contains are available in sage.manifolds.differentiable.pseudo_riemannian_submanifold.

comment:21 Changed 3 months ago by mkoeppe

  • Description modified (diff)

comment:22 Changed 3 months ago by egourgoulhon

  • Description modified (diff)

comment:23 Changed 3 months ago by egourgoulhon

  • Description modified (diff)

comment:24 Changed 2 months ago by mkoeppe

  • Milestone changed from sage-9.4 to sage-9.5
Note: See TracTickets for help on using tickets.