Here is the torus example that I started in class, finished up in Maple.
We start by describing a circle of radius 1 in the xy-plane.
Next, we describe a circle of radius 1 in the plane generated by r1 and (0,0,1).
![]()
Add the two together and plot the surface.
We got a bagel, rather than a donut. Let's try 2r1+r2 to open it up a bit.
We convert r back to a list and differentiate.
Next, we find the magnitude of r_theta cross r_phi.
In class, one of the students suggested that the torus was obtained by rolling up a cylinder.
This gives the right answer, but it's not correct reasoning. To see the problem, we'll find
the area of the outside half of the torus. If the cylinder idea were correct, we would get 4Pi^2.
We begin by plotting the surface:
> plot3d(r,theta = 0 .. 2*Pi,phi = -Pi/2 .. Pi/2,scaling = constrained);
There is a theorem of Pappus which lets you caculate the area of the torus in your head. It
says that the area of a surface of revolution is equal to the length of the generating curve
times the distance travelled by its centroid. In this case, the generating curve is a circle of
radius 1 and the centroid travels distance 4Pi, so the area is 8Pi^2.
The theorem of Pappus is not hard to prove. Ask in class and I'll do it on the board.