Experiments in Differential Geometry with Mathematica

Yoshihiko Tazawa
tazawa@cck.dendai.ac.jp

Introduction

The classical theory of curves and surfaces was established long ago. But there has always been difficulty in applying the general theory to individual curves or surfaces, because calculating integrations,, or solving differential equations explicitly is not possible in general. So the examples appearing in this field have been confined to a small group of calculable objects. But Mathematica has made it possible to deal with a more generic group of objects. 
In this talk, I will introduce some experimental visualizations that I have produced by Mathematica and used in my differential geometry class. They help students to understand basic notions of differential geometry without difficulty. 
Since the time is limited, I will mainly talk about plane curves focusing on the meaning of their  curvature.

Remark

All Mathematica commands for this talk are contained in the notebooks distributed on web or CD.  Most figures in this article are one of the scenes of animations. The animations are also contained in the CD.

Plane Curves

Random Curves

First, I will explain how to generate a random curve.

Use the command Random to get random points ((Subscript[x, i]), (Subscript[y, i])). Then, use the command Fit to get fit functions φ(t) and ψ(t) that approximate the coordinates (Subscript[x, i]) and (Subscript[y, i]) of the points, and obtain a parametrized curve (φ(t),ψ(t)). Use the command Arrow to attach an arrow to indicate the direction of the curve.

Each time we enter the command, we get different curves.

Random Closed Curves

Likewise, we can generate random closed curves. To do this, we aplly the command FourierTrigSeries and get periodic coordinate functins \(TraditionalForm\`\(\(φ\&~\)(t)\ 
\)\)and \(TraditionalForm\`\(ψ\&~\)(t)\), and get a parametrized closed curve (\(TraditionalForm\`\(\(φ\&~\)(t)
\)\),\(TraditionalForm\`\(ψ\&~\)(t)\)).

Moving frame and curvature

Moving Frame

The moving frame of a curve is the pair ((Subscript[e, 1])(t),  (Subscript[e, 2])(t)) of the unit tangent vector (Subscript[e, 1])(t) and the unit normal vector  (Subscript[e, 2])(t), traveling along the curve.

If  we regard the curve as a river, then the moving frame is regarded as the basis of the coordinate system fixed on a boat sailing along the river.

Osculating Circle

An osculating circle of a curve is the limit of the circle passing through three close points on the curve.  
We fix a point on the curve and take two moving points on the curve, and draw the red circle passing through these three points. Then, the blue osculating circle is the limit of red circle, as the moving points approach to the fixed point .
The radius of a osculating circle is called the radius of curvature, and denoted by  ρ(t) .

Curvature

The curvature κ(t) of a curve is 1 over the radius of curvature ρ(t), κ(t) = ±(1/(ρ(t))), with the signature that is plus if the osculating circle lies on the same side with the normal vector.

Gauss Map

Let us consider the curvature from a different view point.

The Gauss map γ of a curve maps the curve into the unit circle (S^1)centered at the origin, that sends a point c(t) on the curve to the unit tangent vector (Subscript[e, 1])(t) with its initial point on the origin. 

                      γ  :  c(t) ⟶ (Subscript[e, 1])(t) ∈ (S^1)

In terms of the Gauss map, another geometrical meaning of the curvature  κ(t)  is stated as  the speed of the Gauss map γ, if we take the arclength as the parameter. If the curve bends into the direction of the unit normal vector, then the Gauss map goes in the positive direction, and the signature of the curvature is positive.

View from the Moving Frame

Let us observe a curve from the coordinate system determined by the moving frame.
We may say this as looking at the landscape from a boat traveling along a river, which was Cesaro's original idea of the moving frame.

Fundamental Theorem

The fundamental theorem of plane curves states that  the curvature determines the curve up to isometries, that is, if we are given any continuous function, we get a curve whose curvature is the given function, and any two such curves are mapped onto each other by an isometry. 

The theorem is proved by solving a system of ordinary differential equations, and we can construct such a curve by  Mathematica, making use of  the NDSolve command.
Let us consider here a kind fo experiment. Since the curvature κ(t) is 1 over the radius of the osculationg circle ρ(t), κ(t) = ±(1/(ρ(t))) and the osculating circle approximates the curve, so, we can approximate the curve by jointing together pieces of circles with radii determined by the curvature function.

Let us consider the simplest case: the curvature is  κ(s) = s , where s is the arclength. We joint 16 pieces of circles with the same length and with shrinking radii. 
In the animation, we take a line separated into 16 segments, and wind each segment to the circle whose size is determined by the curvature function and which is tangential to the line.

To compare this approximation with the actual solution, we obtain the curve by NDSolve and draw it in light green, that is a curve called clothoid.

If we increase the number of the pieces, then we get a better approximation. The animation shows the number of the pieces from 4 to 30.

Another example with κ(s)=sin s.

Global properties

Total curvature & total absolute curvature

The integration of the curvature on the whole curve divided by 2π is called the total curvature, and the integration of the absolute value of the curvature is called the total absolute curvature, which coincides with the length of the Gauss map. They are related to the global properties of the curve.

                                     total curvature =  (1/(2 π))(∫_α^β)κ(s) 
                  ds  =  rotation number
 
                        total absolute curvature =    (∫_α^β) | 
              κ(s) | ds  =  length of the Gauss map

To calculate these integrations, we take the full advantage of the command NIntegrate.

Just as the rotation number that appears in complex analysis,  the total curvature of a closed curve is an integer that shows how many times the unit tangent vector rotates around the origin. The following figure shows closed curves with total curveture 1, -1 and 0, respectively.

On the other hand,the total absolute curvature is not always a multiple of an integer by 2π.

The following animation shows how the moving frame, curvatute, the Gauss map, the integration of the curvature, and the integration of the absolute value of the curvature  divided by 2π are related.  
I used the command NIntegrate to calculate the integration. The blue curve is the integration of the curvature, and the red is the integration of the absolute value of the curvature.

Homotopy

The geometric meaning of the total curvature and total absolute curvature becomes clearer under the notion of homotopy. Homptopy is a continuous deformation of a geometric object. The following example shows a homotopy of a closed curve to the unit circle.

Total curvature  & total absolute curvature under homotopy

Example 1. Under the homptopy just mensioned above, the total curvature is stable, as can be seen in the following animation. The overlapping part on the circle where the Gauss map goes back and forth does not affect the value of the total curvature..

Example 2. On the other hand,  the total curvature in the following example changes its value. The original closed curve has the rotation number -2, and the homotopy connects it to the negative unit circle, that is the unit circle with opposite direction. At first, the value takes -2, and at the end -1. The homotopy has a critical point where the total curvature changes its value discontinuously.

We can obserse the critical point of the homotopy in the following animation. If we consider the curve determined by the tangent vector of the closed curve, instead of the Gauss map that is the curve determined by the unit tangent vector, then we can observe that one of the homotopy curves passes the origin that shows it has a vanishing tangent vector, and it is not a regular curve. At this point the toatal curvature changes its value.

Example 3. As is well known, Fenchel's Theorem states that the total absolute curvature of a closed plane curve is always greater than or equal to 2π, and it is 2π if and only if the curve is convex. 
The following animation indicates the change of both the total curvature and total absolute curvature under homotopy. The total absolute curvature divided by 2π changes continuously, and takes value greater than 1 even after the total cuvature becomes 1, until the curve becomes convex.

Space Curves

I have talked about plane curves, but we can obtain smilar visualizations about space curves and surfaces. I just show here two examples about space curves.

Example 1:  The first one is a view from the moving frame of a space curve. The graphics are shown as a pair of graphics with slightly different view points so that if we look at them on a monitor we can see stereographically. I have also plotted lattice points to make the landscape clearer. The vertical segment shows the torsion and the horizontal the curvature.

Example 2: Approximation of a curve by jointing small pieces of circles, twisting according to the torsion.

Conclusion

As a coclusion, I would like to emphasize the following. All examples in my talk are about ramdomly generated curves, except for the clothoid and Viviani's curve. And I was able to do this kind of experimental treatment of such random curves, depending essentially on the power of numerical calculation of Mathematica.