Opened 2 years ago
Last modified 13 days ago
#18528 new enhancement
SageManifolds metaticket
Reported by: | egourgoulhon | Owned by: | egourgoulhon |
---|---|---|---|
Priority: | major | Milestone: | sage-8.1 |
Component: | geometry | Keywords: | manifold, tensor, differential geometry |
Cc: | mbejger, mmancini, tscrim, bpillet | Merged in: | |
Authors: | Eric Gourgoulhon, Michal Bejger, Marco Mancini | Reviewers: | |
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | #18175 | Stopgaps: |
Description (last modified by )
This is the implementation of manifolds resulting from the SageManifolds project, developed by the following authors.
Algebraic part
- Tensors on free modules of finite rank: #15916 (merged in Sage 6.6)
- Parallelization of tensor computations on free modules of finite rank: #18100 (merged in Sage 6.10)
- Improve category for finite rank free modules and provide list functionality for basis: #20770 (merged in Sage 7.3.beta3)
- Exterior powers of free modules of finite rank: #23207 (merged in Sage 8.1.beta0)
Topological and differential part
- Topological manifolds (over R, C or a topological field K):
- basics (charts, subsets): #18529 (merged in Sage 7.1.beta1)
- scalar fields (continuous functions to the base field): #18640 (merged in Sage 7.3.beta0)
- morphisms (continuous maps between manifolds): #18725 (merged in Sage 7.3.beta0)
- SymPy as an alternative to SR for symbolic calculus on manifolds: #22801
- Differentiable manifolds (over R, C or a non-discrete topological field K):
- basics (charts, transition maps, scalar fields, morphisms): #18783 (merged in Sage 7.3.beta2)
- vector fields, tensor fields and p-forms: #18843 (merged in Sage 7.5.beta1)
- tangent spaces: #19092 (merged in Sage 7.5.beta3)
- sets of vector fields as Lie algebroid: #20771 (merged in Sage 7.5.beta3)
- curves: #19124 (merged in Sage 7.5.beta3)
- affine connections: #19147 (merged in Sage 7.5.beta4)
- parallelization of Lie derivative computations: #22200 (merged in Sage 7.6.beta3)
- Multivector fields and the Schouten-Nijenhuis bracket: #23429
- Complex and almost complex manifolds:
- almost complex structures through Hodge structures: #18786
- Pseudo-riemannian manifolds:
Bug fixes and performance improvements
- List functionality of free module bases: #22518 (merged in Sage 7.6.rc0)
- Display of tensors on free modules of finite rank: #22520 (merged in Sage 7.6.rc0)
- Checking validity of coordinate values on a chart: #22535 (merged in Sage 7.6.rc0)
- Symbolic derivatives in simplification of coordinate functions: #22503 (merged in Sage 7.6.rc0)
- Pullback on parallelizable manifolds: #22563 (merged in Sage 8.0.beta0)
- Tensor field restrictions on parallelizable manifolds: #22637 (merged in Sage 8.0.beta1)
- Inverse metric on parallelizable manifolds: #22667 (merged in Sage 8.0.beta1)
- Improvements in Jacobian determinants of transition maps: #22789 (merged in Sage 8.0.beta2)
- Arithmetics of coordinate functions and scalar fields without zero check of the result: #22859 (merged in Sage 8.0.beta5)
- Characteristic of coordinate function rings: #23329 (merged in Sage 8.1.beta2)
- Faster comparison of manifold points: #23592 (merged in Sage 8.1.beta2)
- Fast comparison to zero (method
is_trivial_zero()
) for coordinate functions and scalar fields: #23623 (merged in Sage 8.1.beta4) - Minor errors in integrated curves: #23838
Change History (59)
comment:1 Changed 2 years ago by
- Description modified (diff)
comment:2 Changed 2 years ago by
- Cc bpillet added
- Description modified (diff)
comment:3 Changed 2 years ago by
- Description modified (diff)
- Summary changed from SageManifolds meta-ticket to SageManifolds metaticket
comment:4 Changed 2 years ago by
- Description modified (diff)
comment:5 Changed 2 years ago by
- Description modified (diff)
comment:6 Changed 2 years ago by
- Description modified (diff)
- Milestone changed from sage-6.8 to sage-6.9
comment:7 Changed 2 years ago by
- Description modified (diff)
comment:8 Changed 2 years ago by
- Description modified (diff)
comment:9 Changed 2 years ago by
- Keywords manifold tensor added; manifolds tensors removed
comment:10 Changed 2 years ago by
- Description modified (diff)
comment:11 Changed 2 years ago by
- Description modified (diff)
comment:12 Changed 2 years ago by
- Milestone changed from sage-6.9 to sage-6.10
comment:13 Changed 2 years ago by
All the tickets are now based on the category ticket #18175, so that the manifold categories are
Manifolds(K)
for topological manifolds over a topological field KManifolds(K).Differentiable()
for differentiable manifoldsManifolds(K).Smooth()
for smooth manifolds
comment:14 follow-up: ↓ 15 Changed 23 months ago by
Something I would like to see once the basics are done is a catalog of examples and common interesting manifolds:
- n-sphere
- n-torus
- real/complex projective n-space
- surfaces
- (Affine) Grassmannians
- Classical Lie groups (more for my info, a description of charts is on page 5 of https://www.dpmms.cam.ac.uk/~agk22/mfds.pdf, but this probably isn't a good atlas for doing computations)
I understand that some of these could be considered more wishlist than others. Some other wishlist items:
- Morse theory to compute homology of manifolds.
- Manifolds with boundary
- Cartesian products of manifolds (or more generally, fiber bundles)
- DeRham? cohomology (see, e.g., lecture notes above)
comment:15 in reply to: ↑ 14 Changed 23 months ago by
Replying to tscrim:
Something I would like to see once the basics are done is a catalog of examples and common interesting manifolds:
Thanks for these suggestions. For sure, one should have a catalog of standard manifolds. For the time being, there are only examples available as worksheets at http://sagemanifolds.obspm.fr/examples.html, for instance
- the 2-sphere at http://sagemanifolds.obspm.fr/examples/html/SM_sphere_S2.html
- the real projective plane at http://sagemanifolds.obspm.fr/examples/html/SM_projective_plane_RP2.html
- the hyperbolic plane at http://nbviewer.ipython.org/github/sagemanifolds/SageManifolds/blob/master/Worksheets/v0.8/SM_hyperbolic_plane.ipynb
I understand that some of these could be considered more wishlist than others. Some other wishlist items:
- Morse theory to compute homology of manifolds.
- Manifolds with boundary
- Cartesian products of manifolds (or more generally, fiber bundles)
- DeRham? cohomology (see, e.g., lecture notes above)
All the above seem indeed desirable extensions. Even if they are not implemented yet, we should have them in mind when setting the basics.
comment:16 Changed 23 months ago by
PS: could you point to some existing catalog in Sage, in order to have some example?
comment:17 follow-up: ↓ 18 Changed 23 months ago by
algebras.<tab>
insage/algebras/catalog.py
crystals.<tab>
insage/combinat/crystals.catalog.py
designs.<tab>
insage/combinat/designs.designs_catalog.py
groups.<tab>
insage/groups/groups_catalog.py
comment:18 in reply to: ↑ 17 Changed 23 months ago by
Thanks!
comment:19 Changed 21 months ago by
- Description modified (diff)
- Milestone changed from sage-6.10 to sage-7.0
comment:20 Changed 20 months ago by
- Description modified (diff)
- Milestone changed from sage-7.0 to sage-7.1
comment:21 Changed 20 months ago by
- Description modified (diff)
comment:22 Changed 16 months ago by
- Description modified (diff)
- Milestone changed from sage-7.1 to sage-7.3
comment:23 Changed 16 months ago by
- Description modified (diff)
comment:24 Changed 16 months ago by
- Description modified (diff)
comment:25 Changed 16 months ago by
- Description modified (diff)
comment:26 Changed 16 months ago by
- Description modified (diff)
comment:27 Changed 14 months ago by
- Milestone changed from sage-7.3 to sage-7.4
comment:28 Changed 11 months ago by
- Description modified (diff)
comment:29 Changed 11 months ago by
- Milestone changed from sage-7.4 to sage-7.5
comment:30 Changed 10 months ago by
- Description modified (diff)
comment:31 Changed 10 months ago by
- Description modified (diff)
comment:32 Changed 8 months ago by
- Description modified (diff)
comment:33 follow-up: ↓ 41 Changed 8 months ago by
Would there be any interest in Kontsevich graphs, which are related to Poisson structures on manifolds from what I saw? In particular, in https://arxiv.org/abs/1702.00681, there is reference to a C++ package https://github.com/rburing/kontsevich_graph_series-cpp (with the MIT license).
comment:34 Changed 7 months ago by
- Description modified (diff)
comment:35 Changed 7 months ago by
- Description modified (diff)
comment:36 Changed 7 months ago by
- Description modified (diff)
- Milestone changed from sage-7.5 to sage-7.6
comment:37 Changed 7 months ago by
- Description modified (diff)
comment:38 Changed 7 months ago by
- Description modified (diff)
comment:39 Changed 6 months ago by
- Description modified (diff)
comment:40 Changed 6 months ago by
- Description modified (diff)
comment:41 in reply to: ↑ 33 ; follow-up: ↓ 42 Changed 6 months ago by
Replying to tscrim:
Would there be any interest in Kontsevich graphs, which are related to Poisson structures on manifolds from what I saw? In particular, in https://arxiv.org/abs/1702.00681, there is reference to a C++ package https://github.com/rburing/kontsevich_graph_series-cpp (with the MIT license).
With collaborators (independent from the above) we have developed a Sage package for calculations with Kontsevich graphs, Poisson brackets and deformation quantizations; the preliminary version will be released later this year. We certainly would like to interface our code with SageManifolds.
The main thing we would need is a SageManifolds implementation of the algebra of multivector fields (exterior algebra of the tangent bundle) and its Schouten bracket https://en.wikipedia.org/wiki/Schouten%E2%80%93Nijenhuis_bracket. Are there any plans in this direction?
comment:42 in reply to: ↑ 41 ; follow-up: ↓ 43 Changed 6 months ago by
Replying to bpym:
With collaborators (independent from the above) we have developed a Sage package for calculations with Kontsevich graphs, Poisson brackets and deformation quantizations; the preliminary version will be released later this year. We certainly would like to interface our code with SageManifolds.
Very good!
The main thing we would need is a SageManifolds implementation of the algebra of multivector fields (exterior algebra of the tangent bundle) and its Schouten bracket https://en.wikipedia.org/wiki/Schouten%E2%80%93Nijenhuis_bracket. Are there any plans in this direction?
It would certainly be easy to implement multivector fields at the level of a sequence of modules over the ring of scalar fields, in the same footing as what has been done for differential forms, cf. http://doc.sagemath.org/html/en/reference/manifolds/sage/manifolds/differentiable/diff_form_module.html Each module, V^{p}(M) say, will be the set of multivector fields with a fixed degree p, i.e. the set of p-vectors. Implementing the Schouten bracket atop of this as an exterior operator V^{p}(M) x V^{q}(M) --> V^{p+q-1}(M) should not be too difficult either. But in such a setting, we do not introduce explicitely the algebra of multivector fields, which is the direct sum of all the modules V^{p}(M). Would this be an issue for you?
comment:43 in reply to: ↑ 42 ; follow-up: ↓ 44 Changed 6 months ago by
Replying to egourgoulhon:
It would certainly be easy to implement multivector fields at the level of a sequence of modules over the ring of scalar fields, in the same footing as what has been done for differential forms ...
Great! This is indeed the sort of implementation I was imagining. One would like the operations of wedge product V^{p} x V^{q} -> V^{p+q} and Schouten bracket V^{p} x V^{q} -> V^{p+q-1}. One would also like to have interior contractions with forms Omega^{p} x V^{q} -> V^{q-p} and V^{p} x Omega^{q} -> Omega^{q-p}, defined when q >= p.
But in such a setting, we do not introduce explicitely the algebra of multivector fields, which is the direct sum of all the modules V^{p}(M). Would this be an issue for you?
I don't foresee any issue.
comment:44 in reply to: ↑ 43 ; follow-up: ↓ 51 Changed 6 months ago by
Replying to bpym:
Replying to egourgoulhon:
It would certainly be easy to implement multivector fields at the level of a sequence of modules over the ring of scalar fields, in the same footing as what has been done for differential forms ...
Great! This is indeed the sort of implementation I was imagining. One would like the operations of wedge product V^{p} x V^{q} -> V^{p+q} and Schouten bracket V^{p} x V^{q} -> V^{p+q-1}. One would also like to have interior contractions with forms Omega^{p} x V^{q} -> V^{q-p} and V^{p} x Omega^{q} -> Omega^{q-p}, defined when q >= p.
This seems quite straightforward to implement. Only a matter of finding time to do it...
But in such a setting, we do not introduce explicitely the algebra of multivector fields, which is the direct sum of all the modules V^{p}(M). Would this be an issue for you?
I don't foresee any issue.
Very good!
The question is then: what is your time scale? i.e. when would you like these features to be available?
comment:45 Changed 6 months ago by
- Description modified (diff)
comment:46 Changed 6 months ago by
- Description modified (diff)
comment:47 Changed 5 months ago by
- Description modified (diff)
comment:48 Changed 5 months ago by
- Description modified (diff)
comment:49 Changed 5 months ago by
- Description modified (diff)
comment:50 Changed 4 months ago by
- Description modified (diff)
comment:51 in reply to: ↑ 44 ; follow-up: ↓ 52 Changed 4 months ago by
Replying to egourgoulhon:
Replying to bpym:
Great! This is indeed the sort of implementation I was imagining. One would like the operations of wedge product V^{p} x V^{q} -> V^{p+q} and Schouten bracket V^{p} x V^{q} -> V^{p+q-1}. One would also like to have interior contractions with forms Omega^{p} x V^{q} -> V^{q-p} and V^{p} x Omega^{q} -> Omega^{q-p}, defined when q >= p.
This seems quite straightforward to implement. Only a matter of finding time to do it...
The pure algebraic part of this has been implemented, including the interior products, see #23207. There remains to implement the differential part, in particular the Schouten bracket. On the Wikipedia page, there is some warning: "There are two different versions, both rather confusingly called by the same name." Do we agree that the thing to implement is the bracket given by the second formula in that page?
comment:52 in reply to: ↑ 51 ; follow-up: ↓ 53 Changed 4 months ago by
Replying to egourgoulhon:
The pure algebraic part of this has been implemented, including the interior products, see #23207.
Great, thank you!
There remains to implement the differential part, in particular the Schouten bracket. On the Wikipedia page, there is some warning: "There are two different versions, both rather confusingly called by the same name." Do we agree that the thing to implement is the bracket given by the second formula in that page?
Yes, we agree.
comment:53 in reply to: ↑ 52 Changed 2 months ago by
- Description modified (diff)
Replying to bpym:
Replying to egourgoulhon:
There remains to implement the differential part, in particular the Schouten bracket. On the Wikipedia page, there is some warning: "There are two different versions, both rather confusingly called by the same name." Do we agree that the thing to implement is the bracket given by the second formula in that page?
Yes, we agree.
Multivector fields and their Schouten-Nijenhuis bracket are now ready (at least for review...): #23429.
comment:54 Changed 2 months ago by
- Description modified (diff)
comment:55 Changed 7 weeks ago by
- Description modified (diff)
comment:56 Changed 6 weeks ago by
- Description modified (diff)
comment:57 Changed 3 weeks ago by
- Description modified (diff)
- Milestone changed from sage-7.6 to sage-8.1
comment:58 Changed 3 weeks ago by
- Description modified (diff)
comment:59 Changed 13 days ago by
- Description modified (diff)
All the tickets, except for #18786, are now ready for review.