Opened 3 years ago
Closed 19 months ago
#19124 closed enhancement (fixed)
Curves in differentiable manifolds
Reported by:  egourgoulhon  Owned by:  egourgoulhon 

Priority:  major  Milestone:  sage7.5 
Component:  geometry  Keywords:  differentiable manifold, curve, interval, real line 
Cc:  Merged in:  
Authors:  Eric Gourgoulhon  Reviewers:  Travis Scrimshaw 
Report Upstream:  N/A  Work issues:  
Branch:  d3f3798 (Commits)  Commit:  d3f37987fac85506c8ae7e5a221f6757b7f3a47b 
Dependencies:  #20771  Stopgaps: 
Description (last modified by )
This ticket implements differentiable curves in real differentiable manifolds. This is a followup of #19092 within the SageManifolds project (see the metaticket #18528 for an overview).
This ticket implements the following Python classes:
 the parent class
OpenInterval
for open intervals of R as 1dimensional diff. manifolds with a canonical chart, the subclass
RealLine
for R as a 1dimensional diff. manifold
 the subclass
 the parent class
DifferentiableCurveSet
for homsets Hom(I,M), i.e. sets of differentiable maps I > M, where I is an open interval of R and M a differentiable manifold over R  the element class
DifferentiableCurve
for curves, i.e. differentiable maps I > M
Documentation:
The reference manual is produced by
sage docbuild reference/manifolds html
It can also be accessed online at http://sagemanifolds.obspm.fr/doc/19124/reference/manifolds/
More documentation (e.g. example worksheets) can be found here.
Change History (33)
comment:1 Changed 3 years ago by
 Description modified (diff)
comment:2 Changed 3 years ago by
 Commit changed from d38f3cf21af912c3a55610b3c299d482c01389d3 to 52014ea42d24fe7a48bb757d0020370b29010877
comment:3 Changed 3 years ago by
 Commit changed from 52014ea42d24fe7a48bb757d0020370b29010877 to 4510196468e82cb0d4d674f0bf447e9e60f34165
Branch pushed to git repo; I updated commit sha1. New commits:
4510196  Full doctest coverage for curves in manifolds

comment:4 Changed 3 years ago by
 Commit changed from 4510196468e82cb0d4d674f0bf447e9e60f34165 to 2fff74986464547fbc48a2f1a3f19f4afd40c6d2
Branch pushed to git repo; I updated commit sha1. New commits:
2fff749  Small change in documentatin of DiffManifoldCurve

comment:5 Changed 3 years ago by
 Commit changed from 2fff74986464547fbc48a2f1a3f19f4afd40c6d2 to fb139dce7318ccbb949dce8c24ed0953b646dba0
Branch pushed to git repo; I updated commit sha1. New commits:
fb139dc  Major improvements in the documentation of diff. manifolds (curves part)

comment:6 Changed 3 years ago by
 Commit changed from fb139dce7318ccbb949dce8c24ed0953b646dba0 to 2673e589737d47e6fe5aeada7d5b15799a20d784
Branch pushed to git repo; I updated commit sha1. New commits:
2673e58  Improve TensorField.__eq__ (case with no open cover known)

comment:7 Changed 3 years ago by
 Commit changed from 2673e589737d47e6fe5aeada7d5b15799a20d784 to dc25947cd9232486a9c8d5b338197dc73ad0e2ba
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
8ab80d8  Improvement in simplify_sqrt_real(); minor modif. in documentation

2f231b6  Major improvements in the documentation of diff. manifolds (basic part)

f0ca2de  Merge #18783 into #18725

307e655  Major improvements in the documentation of diff. manifolds (tensor field part)

dc7f7a1  Improve TensorField.__eq__ (case with no open cover known)

4d6f21c  Merge #18843 into #18783

04360b0  Major improvements in the documentation of diff. manifolds (tangent spaces part)

513f5ba  Improve TensorField.__eq__ (case with no open cover known)

e43e03b  Merge #19092 into #18843

dc25947  Merge #19124 into #19092

comment:8 Changed 3 years ago by
 Description modified (diff)
 Milestone changed from sage6.9 to sage6.10
 Status changed from new to needs_review
comment:9 Changed 3 years ago by
 Commit changed from dc25947cd9232486a9c8d5b338197dc73ad0e2ba to 666bbab52deab3907b957cb723a6465758aedafe
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
bfa0cdf  One last doc tweak.

d13c368  Fixing doc of metric spaces.

2605c0b  Merge #18529 (Topological manifolds: basics) into #18175 (Implement categories for topological...)

6dec6d5  Implement topological manifolds (basics, #18529) on the new categories for manifolds (#18175)

3403978  Implement top. manifolds (scalar fields, #18640) on the new manifold categories (#18175)

b0521ef  Implement top. manifolds (morphisms, #18725) on the new manifold categories (#18175)

f643097  Implement diff. manifolds (basics, #18783) on the new manifold categories (#18175)

a527726  Implement diff. manifolds (tensor fields, #18843) on the new manifold categories (#18175)

22923ab  Implement diff. manifolds (tangent spaces, #19092) on the new manifold categories (#18175).

666bbab  Implement diff. manifolds (curves, #19124) on the new manifold categories (#18175)

comment:10 Changed 3 years ago by
 Commit changed from 666bbab52deab3907b957cb723a6465758aedafe to dca7f9d8ee4b651657c9880a943c776e8d58e4ed
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
6518699  Introduce the attribute _field_type in class TopologicalManifold to check for real and complex manifolds.

22383e6  Check for real/complex manifold performed on base_field_type() instead of RR/CC

66f2c5a  Change function('f', x) to function('f')(x) to accomodate the deprecation warning introduced in #17447

a28ed04  Morphisms of topological manifolds with the use of base_field_type()

f31bed1  Remove UniqueRepresentation from differentiable manifolds

0ee4c41  Tensor fields on differentiable manifolds without unique representation

e8f11ff  Fix pickling test in tensor field modules.

a967787  Suppress direct call to _element_constructor_ in tensor field parent classes

1bf77fd  Tangent spaces on differentiable manifolds without unique representation

dca7f9d  Curves on differentiable manifolds without unique representation

comment:11 Changed 2 years ago by
 Commit changed from dca7f9d8ee4b651657c9880a943c776e8d58e4ed to b836212ddc4a1889a9d1125335e843925565d2e5
Branch pushed to git repo; I updated commit sha1. New commits:
d8397c1  Merge branch 'public/manifolds/top_manif_basics' of trac.sagemath.org:sage into public/manifolds/top_manif_basics

0b08b11  Some small tweaks as part of the review.

d3e5d4d  Revert to UniqueRepresentation for topological manifolds

2481359  Revert to UniqueRepresentation for ScalarFieldAlgebra; better ScalarField constructor

0cc06e8  Revert to UniqueRepresentation for topological manifold homsets

322d5bd  Revert to UniqueRepresentation for differentiable manifolds

45beae5  Revert to UniqueRepresentation for differentiable manifolds: tensor fields

98c6036  Revert to UniqueRepresentation for differentiable manifolds: tangent spaces

b836212  Revert to UniqueRepresentation for differentiable manifolds: curves

comment:12 Changed 2 years ago by
 Commit changed from b836212ddc4a1889a9d1125335e843925565d2e5 to 6b5192628e55ed206c472f8aa5bd15ee5ba44cc7
Branch pushed to git repo; I updated commit sha1. New commits:
85d03dc  Change the argument type to structure in Manifold

5251ef0  Remove method _test_pickling from class TopologicalManifoldPoint

f69c9ee  Fix doctest error in coord_func_symb.py due to #19312 (update to pynac0.5.2)

7889a5d  Change in simplify_sqrt_real to cope with the change of != operator induced by #19312 (Sage 6.10.beta7)

e8d2ba6  Differentiable manifolds: basics with the change in symbolic expression logic induced by #19312 (Sage 6.10.beta7)

0d68f86  Diff. manifolds: tensor fields, with the change in symbolic expression logic induced by #19312 (Sage 6.10.beta7)

347a9cc  Diff. manifolds: tangent spaces, with the change in symbolic expression logic induced by #19312 (Sage 6.10.beta7)

6b51926  Diff. manifolds: curves, with the change in symbolic expression logic induced by #19312 (Sage 6.10.beta7)

comment:13 Changed 2 years ago by
 Description modified (diff)
comment:14 Changed 2 years ago by
 Commit changed from 6b5192628e55ed206c472f8aa5bd15ee5ba44cc7 to db58a0cd830bcaec261c18123c0827c85532c881
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
db99641  Parallel plotting vectorfield: added example

b07ffd9  Tangent spaces on refactored differentiable manifolds

3cd03a4  Add methods lift() and retract() to ManifoldSubset; add method __eq__() in CoordChange

984c3c2  Revert to simple hierarchy for manifold classes

c01048f  Scalar fields with the simplified hierarchy for manifold classes

c866d6c  Morphisms of topological manifolds with the simplified hierarchy for manifold classes

0e04631  Basics of diff. manifolds with the simplified hierarchy for manifold classes

1f226bd  Tensor fields with the simplified hierarchy for manifold classes

9fa77c4  Tangent spaces with the simplified hierarchy for manifold classes

db58a0c  Curves in diff. manifolds with the simplified hierarchy for manifold classes

comment:15 Changed 2 years ago by
 Milestone changed from sage6.10 to sage7.0
comment:16 Changed 2 years ago by
 Commit changed from db58a0cd830bcaec261c18123c0827c85532c881 to 9a7454959010ca09843d9fe820e78e2bd0e1c398
Branch pushed to git repo; I updated commit sha1. New commits:
8e17d54  Merge into the latest version of #18529; improve treatment of composite functions in ExpressionNice

f00be00  Topological manifold morphisms: solved merge conflict with Sage 7.1.beta1

21b3968  Basics of diff. manifolds: solve merge conflict with Sage 7.1.beta1

8ba4b91  Tensor fields: solve merge conflict with Sage 7.1.beta1

2fad9db  Correct doctest in class DiffFormParal

b47f55f  Tangent spaces: solve merge conflict with Sage 7.1.beta1

9a74549  Curves in diff. manifolds: solve merge conflict with Sage 7.1.beta1

comment:17 Changed 2 years ago by
 Commit changed from 9a7454959010ca09843d9fe820e78e2bd0e1c398 to bdb91dfa03130f67904689045ace822d7f23dd7f
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
f3f5470  Fixing a (essentially trivial) doctest failure.

7b3dab3  Merge branch 'public/manifolds/top_manif_scalar_fields' of git://trac.sagemath.org/sage into Sage 7.2.rc0

9ec7d3e  Python 3 format for print in manifolds

d190b37  Morphisms of topological manifolds with coordinate functions as algebra elements

2577fc5  Fixing a (essentially trivial) doctest failure.

7125e29  Python3 format for print in morphims of topological manifolds

bd2f35a  Diff. manifolds with coordinate functions as algebra elements

73b4a03  Tensor fields with with coordinate functions as algebra elements

37521ae  Tangent spaces with coordinate functions as algebra elements

bdb91df  Curves in diff. manifolds with coordinate functions as algebra elements

comment:18 Changed 2 years ago by
 Milestone changed from sage7.0 to sage7.2
comment:19 Changed 2 years ago by
 Commit changed from bdb91dfa03130f67904689045ace822d7f23dd7f to 1b79561956848db8af48cf1cda743c986052ac2c
Branch pushed to git repo; I updated commit sha1. New commits:
4fad094  Merge branch 'public/manifolds/top_manif_morphisms' of trac.sagemath.org:sage into public/manifolds/top_manif_morphisms

cfecb18  Reviewer changes and tweaks for continuous maps ticket.

efcb618  Modify authorship for continuous maps.

84051b0  Merge branch 'public/manifolds/diff_manif_basics' of trac.sagemath.org:sage into public/manifolds/diff_manif_basics

97172dd  Basics of differentiable manifolds with changes in morphisms of topological manifolds

29832ec  Use @cached_method for VectorFieldModule.identity_map() and AutomorphismFieldGroup.one()

159afb4  Tangent spaces upon latest version of tensor fields

1b79561  Update of OpenInterval._Hom_

comment:20 Changed 22 months ago by
 Commit changed from 1b79561956848db8af48cf1cda743c986052ac2c to edde6048822a3474b05c218ac44715e3366ed626
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
3ab0af0  Initial reviewer changes.

d7ad8e1  Merge branch 'public/manifolds/diff_manif_tensor_fields' of git://trac.sagemath.org/sage into sage 7.3.beta5

dcb08fc  Decrease doctest times in tensor fields; remove xder from the global namespace

3b1b794  Fix doctests in tangent spaces after the merge of #20770 in sage 7.3.beta3

c70792e  Update tangent spaces to the latest version of #18843 (vector fields)

0d6f47e  Merge branch 'public/manifolds/diff_manif_tangent_spaces' of trac.sagemath.org:sage into public/manifolds/lie_algebras20771

96f09ab  Added information about the vector field module being a Lie algebroid.

72396dd  Merge with latest #19092 to fix doctests after the merge of #20770 in sage 7.3.beta3

835b293  Update Lie algebroids to the latest version of #18843 (vector fields)

edde604  Update curves to the latest version of #18843 (vector fields)

comment:21 Changed 22 months ago by
 Milestone changed from sage7.2 to sage7.4
comment:22 Changed 20 months ago by
 Commit changed from edde6048822a3474b05c218ac44715e3366ed626 to cd27531644dd9c2ad7bb3bd9a0b1e615add313a2
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
3e73095  Merge branch 'develop' into public/manifolds/diff_manif_tensor_fields

4955c3c  Final review of everything.

7cf4ff4  Merge branch 'public/manifolds/diff_manif_tensor_fields' of trac.sagemath.org:sage into public/manifolds/diff_manif_tensor_fields

58ae506  Merge branch 'public/manifolds/diff_manif_tensor_fields' of git://trac.sagemath.org/sage into Sage 7.4.beta6

8219403  Fix documentation error; change in TensorField comparison to zero

a841f79  Python 3 compatible syntax in tensor fields

5a5f400  Slight change in TensorField.__eq__ (comparison to zero)

98efa66  Update tangent spaces to the final version of the dependency ticket #18843

a5ab39a  Update Lie algebroids to the latest version of the dependency ticket #19092

cd27531  Update curves to the latest version of the dependency ticket #19092

comment:23 Changed 19 months ago by
 Commit changed from cd27531644dd9c2ad7bb3bd9a0b1e615add313a2 to cdb3f28708462bfe1000149ac8afc31ced4bc75f
Branch pushed to git repo; I updated commit sha1. New commits:
8860387  Add missing reference Lee13

fb7f4dd  Bibliographic references for tensor fields moved to the master file

8205dca  Update tangent spaces to the last change (adding a missing reference) in the dependency ticket #18843

785300b  Bibliographic references for tangent spaces moved to the master file created by #21454

6af8ad2  Bibliographic references for vector field modules as Lie algebroids moved to the master file created by #21454

cdb3f28  Bibliographic references for curves on manifolds moved to the master file created by #21454

comment:24 Changed 19 months ago by
 Commit changed from cdb3f28708462bfe1000149ac8afc31ced4bc75f to 7a38c9600e417b002c10ff7bf9c2846d688725ec
Branch pushed to git repo; I updated commit sha1. New commits:
4ce1118  Merge branch 'public/manifolds/diff_manif_tangent_spaces' of git://trac.sagemath.org/sage into public/manifolds/diff_manif_tangent_spaces

567b892  Doing some reviewer changes for #19092.

3a297f7  Merge branch 'public/manifolds/diff_manif_curves' of git://trac.sagemath.org/sage into public/manifolds/diff_manif_curves

7a38c96  Doing some reviewer changes.

comment:25 followup: ↓ 27 Changed 19 months ago by
 Milestone changed from sage7.4 to sage7.5
 Reviewers set to Travis Scrimshaw
Same things as on #19092. If you're happy with my changes, then you can set a positive review.
comment:26 Changed 19 months ago by
 Commit changed from 7a38c9600e417b002c10ff7bf9c2846d688725ec to 181d53a42d0c0ed0b96cdef84650ab348c18b586
Branch pushed to git repo; I updated commit sha1. New commits:
05f8cc7  A little bit of extra cleanup.

23eb9d8  Correct doctest and documentation in tangent spaces

b4a4530  Use sphinx_plot for 3D plots in the documentation of charts and vector fields

ff6eb09  Name of argument 'nb_values' in RealChart.plot changed to 'number_values'.

2f1d037  Update Lie algebroids to the latest version of tangent spaces

181d53a  Use sphinx_plot for 3D rendering of an example in DifferentiableCurve.plot documentation

comment:27 in reply to: ↑ 25 Changed 19 months ago by
 Dependencies changed from #19092 to #20771
Replying to tscrim:
Same things as on #19092. If you're happy with my changes, then you can set a positive review.
Thank you very much again for this review and the changes!
In the last commits, I've updated to the latest version of #19092 and have added the display of a 3D example in the documentation of DifferentiableCurve.plot
. I am also changing the dependency to #20771, which itself depends on #19092.
comment:28 Changed 19 months ago by
 Status changed from needs_review to positive_review
All LGTM. Thanks.
comment:29 Changed 19 months ago by
Thank you!
comment:30 Changed 19 months ago by
 Commit changed from 181d53a42d0c0ed0b96cdef84650ab348c18b586 to d3f37987fac85506c8ae7e5a221f6757b7f3a47b
 Status changed from positive_review to needs_review
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
d3f3798  Use \Bold{R} instead of \RR for the default LaTeX symbol of RealLine

comment:31 Changed 19 months ago by
I've just noticed that the LaTeX rendering of RealLine
in Jupyter notebooks was not correct. It was using \RR
, which worked fine in Sage legacy notebook, but is displayed as a red "\RR" in the Jupyter notebook (when using %display latex
). The above commit changes the default LaTeX name to \Bold{R}
, which is what is used by other Sage objects representing the real numbers: RR
and RDF
. It works fine with both the Jupyter notebook and the legacy notebook. Do you agree?
PS: an alternative would be to use \mathbb{R}
, which is correctly rendered in both notebooks.
comment:32 Changed 19 months ago by
 Status changed from needs_review to positive_review
I think we should be consistent with the rest of Sage, so I agree with \Bold{R}
.
comment:33 Changed 19 months ago by
 Branch changed from public/manifolds/diff_manif_curves to d3f37987fac85506c8ae7e5a221f6757b7f3a47b
 Resolution set to fixed
 Status changed from positive_review to closed
Branch pushed to git repo; I updated commit sha1. New commits:
Improve the documentation of curves in manifolds