Opened 3 years ago

Last modified 2 years ago

#27703 closed enhancement

Tutorial about vector calculus — at Version 13

Reported by: egourgoulhon Owned by:
Priority: major Milestone: sage-8.9
Component: documentation Keywords: vector calculus, Euclidean space
Cc: mforets, kcrisman, tscrim Merged in:
Authors: Eric Gourgoulhon Reviewers:
Report Upstream: N/A Work issues:
Branch: public/manifolds/tutorial_vector_calculus (Commits, GitHub, GitLab) Commit: ce92e4c1bd975a977c540fa0c985815206898c48
Dependencies: Stopgaps:

Status badges

Description (last modified by egourgoulhon)

This ticket adds a new tutorial regarding vector calculus in Euclidean spaces, in the Thematic Tutorials section of the documentation.

The tutorial is divived in five parts. The first one regards vector calculus in the 3-dimensional Euclidean space E3 in Cartesian coordinates, focusing on the evaluation of the standard vector operators. The second tutorial deals with the same topic but based on curvilinear (spherical and cylindrical) coordinates. The third tutorial is devoted to changes between the various coordinate systems. The fourth tutorial presents some advanced aspects, namely the treatment of E3 as a Riemannian manifold. Finally, the last tutorial is devoted to 2-dimensional vector calculus, using both Cartesian and polar coordinates in the Euclidean plane E2 ; it combines various features of the other tutorials.

A preview of the tutorial is available here.

Change History (13)

comment:1 Changed 3 years ago by egourgoulhon

  • Branch set to public/manifolds/tutorial_vector_calculus
  • Commit set to 91a721b23824c199602257ad914cf93b53e47fb3

New commits:

6f84452First draft of the vector calcululus tutorial
9c9bc95Add tutorial on vector calculus in cylindrical coordinates
7b47a74Add two more vector calculus tutorials
d298749Add nbviewer and binder links in vector calculus tutorial
b4afeb6Small improvements in the vector calculus tutorial
91a721bA py3 fix in the Euclidean plane tutorial

comment:2 Changed 3 years ago by egourgoulhon

  • Cc mforets kcrisman tscrim added
  • Status changed from new to needs_review

comment:3 Changed 3 years ago by egourgoulhon

  • Description modified (diff)

comment:4 follow-up: Changed 2 years ago by tscrim

So I would say the "What's next" sections are unnecessary considering the table of contents and the next links.

I think it would be good to have some more pictures in part 4, in particular, showing how the two coordinate systems interact.

Do you want to talk at all about integration along curves or determining geodesics?

How difficult would it be to add another tutorial discussing things on a (2D) torus? I think a slightly more non-trivial example than R3 would be beneficial.

Actually, overall I felt that there was no message being conveyed. Just the tutorial outlining what things you can do, rather than, say, trying to answer a particular question. I do think it is useful to have one tutorial about the things you can do on a particular object, but I think given the code samples already in the docstrings, this is not currently saying much more. Perhaps what I am suggesting is to think of this as something you would point a new student/researcher to who did not know the theory as a way to give them a starting point.

comment:5 in reply to: ↑ 4 Changed 2 years ago by egourgoulhon

Replying to tscrim:

So I would say the "What's next" sections are unnecessary considering the table of contents and the next links.

OK, I'll remove them.

I think it would be good to have some more pictures in part 4, in particular, showing how the two coordinate systems interact.

OK.

Do you want to talk at all about integration along curves or determining geodesics?

I think this is out of the scope of this tutorial, which is elementary vector calculus, in the meaning of https://en.wikipedia.org/wiki/Vector_calculus

How difficult would it be to add another tutorial discussing things on a (2D) torus? I think a slightly more non-trivial example than R3 would be beneficial.

This would certainly be interesting but in a separate tutorial. Again, the present one is devoted to elementary vector calculus (probably this should be stressed in the introduction to the tutorial), for which the arena is E3.

Actually, overall I felt that there was no message being conveyed. Just the tutorial outlining what things you can do, rather than, say, trying to answer a particular question.

Agreed. This tutorial presents some tools and is not answering to any precise mathematical question.

I do think it is useful to have one tutorial about the things you can do on a particular object, but I think given the code samples already in the docstrings, this is not currently saying much more.

Agreed. All the information in the tutorial is already in the reference manual, but scattered over various places. For instance, many methods are described in the manifold section or in the tensor field one, not in the vector field section. I have the feeling that a newcomer to Sage will first jump on tutorials rather than explore the reference manual.

Perhaps what I am suggesting is to think of this as something you would point a new student/researcher to who did not know the theory as a way to give them a starting point.

Indeed, this tutorial assumes the reader knows already about Euclidean spaces and elementary vector calculus. It is not an introduction to the subject, but to the vector calculus tools available in Sage.

Last edited 2 years ago by egourgoulhon (previous) (diff)

comment:6 follow-up: Changed 2 years ago by tscrim

I think it would be nice to at least frame parts of the tutorial as answering a question (i.e., how can this be used). For instance, I like the divergence, curl, and Laplacian because they show that you can verify (important) identities. In some ways, having just one tutorial that does these things for one, maybe two, coordinate systems seems sufficient, as well as part 4 to change between the coordinates.

I know a lot of this is bikeshedding, and I think these tutorials are a good addition (I probably should add a few for my research stuff). I might be too bias/subborn about what I think a good tutorial will have. (I can cc you on any tutorials I do so you can tell me how hypocritical I am ;)).

comment:7 in reply to: ↑ 6 Changed 2 years ago by egourgoulhon

Replying to tscrim:

I think it would be nice to at least frame parts of the tutorial as answering a question (i.e., how can this be used). For instance, I like the divergence, curl, and Laplacian because they show that you can verify (important) identities. In some ways, having just one tutorial that does these things for one, maybe two, coordinate systems seems sufficient, as well as part 4 to change between the coordinates.

OK I see your point. I'll try to reformulate things as questions as much as possible. I don't have time to it now, though...

I know a lot of this is bikeshedding, and I think these tutorials are a good addition (I probably should add a few for my research stuff). I might be too bias/subborn about what I think a good tutorial will have. (I can cc you on any tutorials I do so you can tell me how hypocritical I am ;)).

No problem, your criticism is always constructive.

comment:8 Changed 2 years ago by egourgoulhon

  • Status changed from needs_review to needs_work

comment:9 Changed 2 years ago by git

  • Commit changed from 91a721b23824c199602257ad914cf93b53e47fb3 to 153ecadc068d40e3ac8555fc37f94468e9d7ed88

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

4af2f7dMerge branch 'public/manifolds/tutorial_vector_calculus' of git://trac.sagemath.org/sage into Sage 8.8.beta6.
153ecadStart rewriting the vector calculus tutorial in question form

comment:10 Changed 2 years ago by git

  • Commit changed from 153ecadc068d40e3ac8555fc37f94468e9d7ed88 to 17a57edfbdd33ae008f889698d5f87bfef6381ee

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

feaeb31Complete tutorial on vector calculus in curvilinear coordinates
17a57edAdd plots in the tutorial about coordinate changes

comment:11 Changed 2 years ago by git

  • Commit changed from 17a57edfbdd33ae008f889698d5f87bfef6381ee to 7ad4de5363621bc11f7bdeb1c1f41bc395594313

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

7ad4de5Changes in two vector calculus tutorials (change of coordinates and advanced aspects)

comment:12 Changed 2 years ago by git

  • Commit changed from 7ad4de5363621bc11f7bdeb1c1f41bc395594313 to ce92e4c1bd975a977c540fa0c985815206898c48

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

ce92e4cMinor changes in the vector calculus tutorials

comment:13 Changed 2 years ago by egourgoulhon

  • Description modified (diff)
  • Status changed from needs_work to needs_review

I have modified the tutorial according to your recommendations (comment:4 and comment:6). The various topics are now introduced as questions that the reader may ask (in the first three tutorials). I have merged the previous tutorials 2 (spherical coord.) and 3 (cylindrical coord.) into a single document (curvilinear coord.). I have added some plots illustrating the link between spherical and Cartesian coordinates in the third document (previously no. 4). I kept the tutorial about advanced topics in the same shape, performing only minor changes, because I did not feel putting it in the "How to" flavor. Same thing for the last document, which recaps all the previous ones, but in the 2-dimensional case.

The preview has been updated to the new version.

Last edited 2 years ago by egourgoulhon (previous) (diff)
Note: See TracTickets for help on using tickets.