The answer to your question is essentially "yes", since Sage can deal with any kind of vector frame, not necessarily coordinate frames, see http://doc.sagemath.org/html/en/reference/manifolds/sage/manifolds/differentiable/vectorframe.html In particular, a connection can be defined by its coefficients with respect to a moving frame; see the documentation of the function "curvature_form" for an example of curvature 2-form expressed in a moving frame: http://doc.sagemath.org/html/en/reference/manifolds/sage/manifolds/differentiable/affine_connection.html At the end of the S^2 example http://nbviewer.jupyter.org/github/sagemanifolds/SageManifolds/blob/master/Worksheets/v1.3/SM_sphere_S2.ipynb you have the computation of the structure coefficients of an orthonormal frame. You have also non-coordinate frames in the S^3 example: http://nbviewer.jupyter.org/github/sagemanifolds/SageManifolds/blob/master/Worksheets/v1.3/SM_sphere_S3_vectors.ipynb An example of curvature 2-form expressed in an orthonormal frame is in cell [87] of this notebook: http://nbviewer.jupyter.org/github/sagemanifolds/SageManifolds/blob/master/Worksheets/v1.3/SM_Schwarzschild.ipynb
Best wishes, Eric. Le jeudi 6 décembre 2018 02:10:22 UTC+1, Tevian Dray a écrit : > > Such an implementation would have 2 parts: > > 1. *Defining the objects:* The connection 1-forms, torsion 2-forms, and > curvature 2-forms are all indexed sets of differential forms. They are not > tensorial, but the index labels behave in many ways like tensor components. > In particular, there are "up" and "down" index versions, with particular > symmetries. The case of an orthonormal basis is particularly nice, leading > to "down" index antisymmetry, which it would be nice to have built in. > > 2. *Computing the objects:* The components of the connection 1-forms are > just the Christoffel symbols, but in an arbitrary frame. So when working > with explicit examples, it would be enough to be able to compute the > Christoffel symbols, then use them to determine the connection forms. But > this requires the ability to compute the connection in non-coordinate > frames. > > I'll settle for an implementation of question 2. However, so far as I can > tell, sage.manifolds only calculates in a coordinate basis, and the > VectorFrame class doesn't do tensor derivatives. If I'm missing something > here, or if there's some other known way to work in an arbitrary > (especially orthonormal) basis, please let me know -- ideally with an > example, such as polar coordinates in an orthonormal frame. > > Thank you. > -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscr...@googlegroups.com. To post to this group, send email to sage-support@googlegroups.com. Visit this group at https://groups.google.com/group/sage-support. For more options, visit https://groups.google.com/d/optout.