Geodesics with NDSolve
- To: mathgroup at smc.vnet.net
- Subject: [mg66388] Geodesics with NDSolve
- From: "sigmundv" <sigmund at ostenfeld.dk>
- Date: Thu, 11 May 2006 02:15:34 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
I am working with geodesics on a torus, for which I want to locate the cut locus. For this purpose I solve the geodesic equations (two coupled non-linear first order ODEs), shooting off two geodesics in different directions from a point p on the surface. The geodesics then meet at some other (cut) point q1 on the surface. If you change the angle between the geodesics at the inital point p, they meet at another point q2 on the surface. In this way, you get a set of points, which together constitute the socalled cut locus of the torus. To solve the coupled ODEs in Mathematica, I use NDSolve. This works good, and I am able to locate the points q1, q2, etc. I do this by solving the ODEs in a fixed interval for the independent variable, say t. However, in order to find all the cut points, I have to use different intervals for t. At the moment, I change the interval manually, but I would like to do it somehow automatically. What I would like to achieve is: 1) I specify a large interval for t; 2) after each time step, I check the distance in space between the two geodesics; 3) if the distance is smaller than a given tolerance, NDSolve is stopped -- alternatively, if the distance at t(n+1) is larger than the distance at t(n), NDSolve is stopped, and t(n) is accepted. The problem is, however, that the solution to the ODEs is in the (u,v)-plane, and thus has to be inserted into the parametrization of the torus, in order to check the distance in space. This has to be done after each time step in NDSolve, why this strategy might prove ineffective. I do not know if I can achieve this in Mathematica -- with the built-in function NDSolve. Therefore I am asking you Mathematica experts for any suggestions on how to achieve what I want here. Do you see what I want to achieve? I will not provide you with more information now, but if you want to, I can post the work I have done so far later. Regards, Sigmund Vestergaard stud.polyt. at the Technical University of Denmark