sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.39k stars 472 forks source link

Differentiable manifolds: tangent spaces #19092

Closed egourgoulhon closed 7 years ago

egourgoulhon commented 9 years ago

This ticket implements tangent vectors and tangent spaces on differentiable manifolds. This is a follow-up of #18843 within the SageManifolds project (see the metaticket #18528 for an overview). As in #18843, the non-discrete topological field K over which the differentiable manifold is defined is generic, although in most applications, K=R or K=C.

This ticket implements the following Python classes:

Documentation: The reference manual is produced by sage -docbuild reference/manifolds html It can also be accessed online at http://sagemanifolds.obspm.fr/doc/19092/reference/manifolds/ More documentation (e.g. example worksheets) can be found here.

Depends on #15916 Depends on #18843

CC: @sagetrac-mbejger

Component: geometry

Keywords: differentiable manifold, tangent vector, tangent space

Author: Eric Gourgoulhon, Michal Bejger, Marco Mancini

Branch/Commit: ff6eb09

Reviewer: Travis Scrimshaw

Issue created by migration from https://trac.sagemath.org/ticket/19092

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from d5562a2 to 6a1fc97

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

6a1fc97Add method differential() to class DiffMap
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

31d6789Add method plot() to class VectorField; full doctest coverage.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 6a1fc97 to 31d6789

egourgoulhon commented 9 years ago

Changed dependencies from #15916, #18100, #18843 to #15916, #18843

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 31d6789 to 04360b0

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

04360b0Major improvements in the documentation of diff. manifolds (tangent spaces part)
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 04360b0 to 513f5ba

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

513f5baImprove TensorField.__eq__ (case with no open cover known)
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 513f5ba to e43e03b

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

00c327dSlight reorganization of the reference manual of topological manifolds (morphisms part)
f8d3f27Merge #18725 into #18640
f2fef7bSmall improvements in the documentation of differentiable manifolds
8ab80d8Improvement in simplify_sqrt_real(); minor modif. in documentation
2f231b6Major improvements in the documentation of diff. manifolds (basic part)
f0ca2deMerge #18783 into #18725
307e655Major improvements in the documentation of diff. manifolds (tensor field part)
dc7f7a1Improve TensorField.__eq__ (case with no open cover known)
4d6f21cMerge #18843 into #18783
e43e03bMerge #19092 into #18843
egourgoulhon commented 9 years ago

Description changed:

--- 
+++ 
@@ -11,4 +11,11 @@
   fields 
 - the methods `differential()`, `differential_functions()` and `jacobian_matrix()` to the class 
   `DiffMap` introduced in #18783 (differential of a map between differentiable manifolds at a
-  given point). 
+  given point).
+
+**Documentation**:
+The reference manual is produced by
+`sage -docbuild reference/manifolds html`
+It can also be accessed online at http://sagemanifolds.obspm.fr/doc/19092/reference/manifolds/
+More documentation (e.g. example worksheets) can be found [here](http://sagemanifolds.obspm.fr/documentation.html).
+
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from e43e03b to 22923ab

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

041a5d1Adding p-adics to metric spaces and some cleanup.
bfa0cdfOne last doc tweak.
d13c368Fixing doc of metric spaces.
2605c0bMerge #18529 (Topological manifolds: basics) into #18175 (Implement categories for topological...)
6dec6d5Implement topological manifolds (basics, #18529) on the new categories for manifolds (#18175)
3403978Implement top. manifolds (scalar fields, #18640) on the new manifold categories (#18175)
b0521efImplement top. manifolds (morphisms, #18725) on the new manifold categories (#18175)
f643097Implement diff. manifolds (basics, #18783) on the new manifold categories (#18175)
a527726Implement diff. manifolds (tensor fields, #18843) on the new manifold categories (#18175)
22923abImplement diff. manifolds (tangent spaces, #19092) on the new manifold categories (#18175).
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

668bc26Remove UniqueRepresentation, leaving only WithEqualityById, for topological manifold homsets
6518699Introduce the attribute _field_type in class TopologicalManifold to check for real and complex manifolds.
22383e6Check for real/complex manifold performed on base_field_type() instead of RR/CC
66f2c5aChange function('f', x) to function('f')(x) to accomodate the deprecation warning introduced in #17447
a28ed04Morphisms of topological manifolds with the use of base_field_type()
f31bed1Remove UniqueRepresentation from differentiable manifolds
0ee4c41Tensor fields on differentiable manifolds without unique representation
e8f11ffFix pickling test in tensor field modules.
a967787Suppress direct call to `_element_constructor_` in tensor field parent classes
1bf77fdTangent spaces on differentiable manifolds without unique representation
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 22923ab to 1bf77fd

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

d8397c1Merge branch 'public/manifolds/top_manif_basics' of trac.sagemath.org:sage into public/manifolds/top_manif_basics
0b08b11Some small tweaks as part of the review.
d3e5d4dRevert to UniqueRepresentation for topological manifolds
2481359Revert to UniqueRepresentation for ScalarFieldAlgebra; better ScalarField constructor
0cc06e8Revert to UniqueRepresentation for topological manifold homsets
322d5bdRevert to UniqueRepresentation for differentiable manifolds
45beae5Revert to UniqueRepresentation for differentiable manifolds: tensor fields
98c6036Revert to UniqueRepresentation for differentiable manifolds: tangent spaces
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 1bf77fd to 98c6036

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 98c6036 to 347a9cc

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

85d03dcChange the argument type to structure in Manifold
5251ef0Remove method _test_pickling from class TopologicalManifoldPoint
f69c9eeFix doctest error in coord_func_symb.py due to #19312 (update to pynac-0.5.2)
7889a5dChange in simplify_sqrt_real to cope with the change of != operator induced by #19312 (Sage 6.10.beta7)
e8d2ba6Differentiable manifolds: basics with the change in symbolic expression logic induced by #19312 (Sage 6.10.beta7)
0d68f86Diff. manifolds: tensor fields, with the change in symbolic expression logic induced by #19312 (Sage 6.10.beta7)
347a9ccDiff. manifolds: tangent spaces, with the change in symbolic expression logic induced by #19312 (Sage 6.10.beta7)
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 347a9cc to db99641

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

1c1fcccParallel plot for Manifold: only 2D. Flat parallelization.
9b87ff1Vectorfields : plot parallelization improvement and bug corrction.
db99641Parallel plotting vectorfield: added example
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

ce03503Scalar fields on topological manifolds: slight improvements in the documentation
9d25aa0Scalar field algebras with AbstractNamedObject without argument full_name
ed4aa58ScalarFieldAlgebra does not longer inherit from AbstractNamedObject
bc77059Morphisms on the refactored topoological manifolds
f6c6a34Topological manifold morphisms with AbstractNamedObject without full_name
2df7af7Refactorization of differentiable manifolds, with the mixin class DifferentiableMixin
7204572Basics of diff. manifolds with AbstractNamedObject without full_name
ecfbf2cTensor fields on refactored differentiable manifolds
8b720a5Tensor fields with AbstractNamedObject without full_name
b07ffd9Tangent spaces on refactored differentiable manifolds
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from db99641 to b07ffd9

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from b07ffd9 to 9fa77c4

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

3cd03a4Add methods lift() and retract() to ManifoldSubset; add method __eq__() in CoordChange
984c3c2Revert to simple hierarchy for manifold classes
c01048fScalar fields with the simplified hierarchy for manifold classes
c866d6cMorphisms of topological manifolds with the simplified hierarchy for manifold classes
0e04631Basics of diff. manifolds with the simplified hierarchy for manifold classes
1f226bdTensor fields with the simplified hierarchy for manifold classes
9fa77c4Tangent spaces with the simplified hierarchy for manifold classes
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 9fa77c4 to b47f55f

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

8e17d54Merge into the latest version of #18529; improve treatment of composite functions in ExpressionNice
f00be00Topological manifold morphisms: solved merge conflict with Sage 7.1.beta1
21b3968Basics of diff. manifolds: solve merge conflict with Sage 7.1.beta1
8ba4b91Tensor fields: solve merge conflict with Sage 7.1.beta1
2fad9dbCorrect doctest in class DiffFormParal
b47f55fTangent spaces: solve merge conflict with Sage 7.1.beta1
egourgoulhon commented 8 years ago

Changed author from Eric Gourgoulhon, Michal Bejger to Eric Gourgoulhon, Michal Bejger, Marco Mancini

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from b47f55f to 37521ae

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

f11df50Set CoordFunctionSymbRing in the category of commutative algebras over SR; minor documentation changes
f3f5470Fixing a (essentially trivial) doctest failure.
7b3dab3Merge branch 'public/manifolds/top_manif_scalar_fields' of git://trac.sagemath.org/sage into Sage 7.2.rc0
9ec7d3ePython 3 format for print in manifolds
d190b37Morphisms of topological manifolds with coordinate functions as algebra elements
2577fc5Fixing a (essentially trivial) doctest failure.
7125e29Python3 format for print in morphims of topological manifolds
bd2f35aDiff. manifolds with coordinate functions as algebra elements
73b4a03Tensor fields with with coordinate functions as algebra elements
37521aeTangent spaces with coordinate functions as algebra elements
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 37521ae to 159afb4

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

4fad094Merge branch 'public/manifolds/top_manif_morphisms' of trac.sagemath.org:sage into public/manifolds/top_manif_morphisms
cfecb18Reviewer changes and tweaks for continuous maps ticket.
efcb618Modify authorship for continuous maps.
84051b0Merge branch 'public/manifolds/diff_manif_basics' of trac.sagemath.org:sage into public/manifolds/diff_manif_basics
97172ddBasics of differentiable manifolds with changes in morphisms of topological manifolds
29832ecUse @cached_method for VectorFieldModule.identity_map() and AutomorphismFieldGroup.one()
159afb4Tangent spaces upon latest version of tensor fields
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

2150a43Correct doctests in vector fields after the merge of #20770 in sage 7.3.beta3
3b1b794Fix doctests in tangent spaces after the merge of #20770 in sage 7.3.beta3
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 159afb4 to 3b1b794

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

3ab0af0Initial reviewer changes.
d7ad8e1Merge branch 'public/manifolds/diff_manif_tensor_fields' of git://trac.sagemath.org/sage into sage 7.3.beta5
dcb08fcDecrease doctest times in tensor fields; remove xder from the global namespace
c70792eUpdate tangent spaces to the latest version of #18843 (vector fields)
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 3b1b794 to c70792e

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

88295c6Merge branch 'develop' into public/manifolds/diff_manif_tensor_fields
58f7fb9Merge branch 'develop' into public/manifolds/diff_manif_tensor_fields
3e73095Merge branch 'develop' into public/manifolds/diff_manif_tensor_fields
4955c3cFinal review of everything.
7cf4ff4Merge branch 'public/manifolds/diff_manif_tensor_fields' of trac.sagemath.org:sage into public/manifolds/diff_manif_tensor_fields
58ae506Merge branch 'public/manifolds/diff_manif_tensor_fields' of git://trac.sagemath.org/sage into Sage 7.4.beta6
8219403Fix documentation error; change in TensorField comparison to zero
a841f79Python 3 compatible syntax in tensor fields
5a5f400Slight change in TensorField.__eq__ (comparison to zero)
98efa66Update tangent spaces to the final version of the dependency ticket #18843
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from c70792e to 98efa66

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

8860387Add missing reference Lee13
8205dcaUpdate tangent spaces to the last change (adding a missing reference) in the dependency ticket #18843
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 98efa66 to 8205dca

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 8205dca to 785300b

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

fb7f4ddBibliographic references for tensor fields moved to the master file
785300bBibliographic references for tangent spaces moved to the master file created by #21454
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 785300b to 567b892

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

4ce1118Merge branch 'public/manifolds/diff_manif_tangent_spaces' of git://trac.sagemath.org/sage into public/manifolds/diff_manif_tangent_spaces
567b892Doing some reviewer changes for #19092.
tscrim commented 7 years ago

Reviewer: Travis Scrimshaw

tscrim commented 7 years ago
comment:29

Okay, I've made it through this one. Mostly it is documentation format changes, but the exception:

For plotting, I used the @options for scale and max_range as these seemed like something a user might want to not have to pass every single time (you change change their default with v.plot.options). From the user perspective, nothing really changes unless you explicitly set said default value.

So if you agree with my changes, then you can set a positive review.

tscrim commented 7 years ago
comment:30

I'm handling rebasing #19124 as I'm starting my review of that now.

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 567b892 to 05f8cc7

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

05f8cc7A little bit of extra cleanup.