Contents
1. Geography of the
Surface
2. Goals
3. Plotting Tools
4. (to be continued)
Instead of two hills (as before), this surface has a hill and an infinitely tall tower. It is parametrized as a Monge surface
x[u_,v_] := {u,v,h[u,v]}
where
h[u_,v_] := 4/(1+(u+2)^2 + v^2) + 1/(u-2)^2 + v^2)
Then the surface is plotted by
Plot3D[h[u,v],{u,-4,4},{v,-3,3},
PlotPoints->35, PlotRange->12, Boxed->False]
where the picture shows the tower only up to height 12.
Note that the top of the hill is at (-2,0) and the tower is centered
around (2,0). But the tower is infinitely tall, and there is no point of the
surface above (2,0).
Now we look at the Gaussian curvature of the surface, which is always crucial to the behavior of geodesics. To work efficiently with curvature K, we first install its command from the Mathematica notes
<<gaussK.m
Then define:
kkuuvv=gaussK[x][uu,vv]; kkf[u_,v_]:=kkuuvv/.{uu->u,vv->v}
To compare kkf with gaussK, run a timing race:
gaussK[x][1.1,0.2]//Timing
kkf[1.1,0.2]//Timing
The functional form kkf is immensely faster because it uses the formula that gaussK computed for K, while gaussK itself has to recompute that formula for each (u,v).
One way to see the distribution of curvature over the surface is to plot its graph.
Plot3D[kkf[u,v],{u,-3.3,3.8},{v,-2,2},
PlotPoints->37,PlotRange-> {-1.5,3}, ViewPoint->{0,-3,.7}]
The tower has the lowest values of K < 0 around its base;
then K increases toward 0 as the tower rises to
. All the positive curvature of the surface is on the hill, with K > 0 a maximum
at its top.
By symmetry the profile curve u
(u,0,h(u,0)) is a geodesic -- or, strictly speaking two geodesics, for deletion
of (2,0) splits the real line into two domains:
-
< u < 2 and 2 < u <
.
This plot shows curvature along the profile curve:
Plot[{h[u,0],kkf[u,0]},{u,-5,5}, PlotRange->{-1.5,6},
PlotStyle-> {RGBColor[0,0,1],RGBColor[1,0,0]}]
Here the PlotStyle option shows the profile curve as blue and the
curvature as red.
Another way to see how curvature is distributed over the surface is by a contour plot of K. Here, by trial and error, we chose contours h=-.2, h=.05, and h=2 (see below).
Kcontour = ContourPlot[kkf[u,v], {u,-3.3,4.5},{v,-2,2}, Contours -> {-.2,.05,2},
PlotPoints->40, AspectRatio->Automatic]
The following three circles will mark off the main regions of the contour plot.
tops = ParametricPlot[{{2+.73 Sin[q], .73 Cos[q]},
{2.1+1.51 Sin[q], 1.51 Cos[q]}, {-2+.51Sin[q], .51 Cos[q]}},{q,0,2Pi},
PlotStyle->{RGBColor[1,0,0],RGBColor[1,0,0],RGBColor[0,0,1]},
AspectRatio->Automatic]
These are combined by:
Show[Kcontour,tops]

Comments: The white disk locates the hilltop, where K > 0.
The annulus between the two red circles is the base of the tower, where much of the lower values of K < 0 are. (No need for precision here...these circles are just rough guides.)
The territory inside the inner red circle is the top of the tower,
where it soars up to
, but with K < 0 increasing toward limit 0.
By including these circles in geodesic plots, we can see how the geodesics relate to the hill and tower -- and to Gaussian curvature
On the surface with two hills, we considered the geodesics orthogonal to the profile curve. Now on the hill-tower surface, we look at the geodesics radiating out from a point p. A natural choice of p is as the lowest point on the profile curve between the hill and the tower. By plotting graphs of h(u,0) on ever smaller intervals, we find the u-coordinate of p to be approximately
ctr = -0.31569694
The geodesics used in the two-hill case were of only a few simple types and the goal was to find them all. Here the geodesics emanating from p=x(ctr,0) are more complicated, and our goal is quite different: It is to decide if any geodesics from p go all the way up the tower to
. Such a geodesic is said to be tall. There is one: the branch of the profile curve through p, since as u
2,
h(u,0)
.
Here is some background to the problem. Suppose we eliminate the hill from our surface by replacing h(u,v) with
g[u,v] := 1/(u^2 + v^2)
The resulting surface is just a tower rising from the plane. Evidently,
it is a surface of revolution.
The meridians, which are always geodesic in a
surface of revolution, obviously go up the tower to
. Using Clairaut methods ([EDG], [G]) it is readily shown
that through each point of this surface, the meridian is the only
geodesic that goes all the way up the tower.
So the question is: In the hill-tower surface, will the hill make it
possible for other geodesics from p=x(ctr,0) to climb the tower all the way?
Plotting geodesics requires the installation of three of the dot-m files used in The Setup
< < efg.m
< < christoffel.m
< < gdesolv.m
where the latter contains the two commands, cht and gdesolv
As required by Step 1 of The Setup, we define
eeh[u_,v_] := ee[x][u,v]; ffh[u_,v_] := ff[x][u,v]; ggh[u_,v_] := gg[x][u,v]
The coordinate vector fields xu and xv are orthonormal at p. To see this, note that xu = (1, 0,
h/
u) and xv =
(0,1,
h/
v). But by symmetry,
h/
v(u,0) = 0 for all u, and
h/
u(ctr,0) = 0, since ctr is a local minimum on the profile curve. Thus xu(ctr,0) = (1, 0, 0) and
xv(ctr,0) = (0,1, 0)
It remains only to specify the initial conditions for our geodesics. All radiate out from the central point p=x(ctr,0). A natural way to describe these is in terms of their initial angle q with xu(which points in the positive u-direction), where, as usual, q is measured counter-clockwise (in degrees).
Recall that the pattern of input to gdesolv is
gdesolv[u0, v0, du0, dv0, t0, tmin, tmax].
Thus the geodesics produced by the following plotting machine leave x(ctr,0) at angle q, are defined on the interval [a, b], where a < 0 < b, and initially have unit speed. But geodesics always have constant speed, hence these have unit speed everywhere, that is, they have arclength parametrization:
rad[q_, a_, b_] := gdesolv[ctr, 0, Cos[q*Pi/180], Sin[q*Pi/180], 0, a, b]
At the very start of the search for tall geodesics, we may as well simultaneously plot both the backward (t < 0) and forward (t > 0) branches of each geodesic. (Later it will be necessary to restrict to just (t > 0) or just (t < 0).)
Also we want the tops circles to appear along with the
geodesic to give an idea of where it is going.
The command below does this. It uses a number of features from the Mathematica notes:
rg[q_] := Module[{sol,geo},
sol = rad[q,-20, 20]; geo = ParametricPlot[Evaluate[{u[t],v[t]} /. sol]
{t, -20, 20}, AspectRatio -> Automatic, PlotRange->All,
DisplayFunction -> Identity, Show[{geo, tops},
DisplayFunction -> $DisplayFunction]]
Here is a section of rg[30] -- the uv part of the geodesic with initial angle q=30 -- showing how it relates to the hill and tower.
Another behavior appears on a section of rg[10]: this suggests that the geodesic spirals up the tower for a while, then spirals back down again. This is verified by its R3 picture below, which is produced by the commands:
sol.10.40 = rad[10, 0, 40]
ParametricPlot3D[
Evaluate[x[u[t],v[t]] /. sol.10.40],
{t, .4, 40}, PlotPoints->250,
ViewPoint->{1,-1.5, 2.5},
Boxed->False, ImageSize->360]
To vizualize the spiraling, it may help to split the curve
into spiral-Up and spiral-Down by replacing the domain
{t, .4, 40}, first by {t, .4, 21}, then by {t, 21, 40}.
Note that since the surface is symmetrical about its profile curve, it's only necessary to search for geodesics with initial angle 0
q
90,
provided branches t<0 and t>0 are each plotted.
If you can find a tall geodesic -- one that climbs the tower to
-- please send it to bon@math.ucla.edu