iconEuler Examples

Non-Orientable Surfaces

by Alain Busser

Compact non-orientable surfaces: Parametric Representations

To view these images, you need RED-CYAN anaglyph glasses. For the best experience, turn the files with the cursor keys.

I The Möbius bands

No, this is not the name of my rock band, but A. Möbius gave his name to the first model of a non-orientable surface in the middle of XIXth century:

>u=linspace(-1,1,10); ...
 v=linspace(0,2*pi,50)'; ...
 X=(3+u*cos(v/2))*cos(v); Y=(3+u*cos(v/2))*sin(v); Z=u*sin(v/2);

The following is an anaglyph. You will need red/cyan glasses to view this image properly.

>wirecolor(gray); plot3d(X,Y,Z,>anaglyph,<frame,scale=1.7):

Non-Orientable Surfaces

But any odd number of half-turns would lead to a non-orientable surface, homeographic to the model above. For example, replace "v/2" by "3*v/2" and you'll see 3 half-turns:

>u=linspace(-1,1,100); ...
 v=linspace(0,2*pi,100)'; ...
 X=(3+u*cos(3*v/2))*cos(v); Y=(3+u*cos(3*v/2))*sin(v); Z=u*sin(3*v/2); ...
 plot3d(X,Y,Z,>anaglyph,<frame,scale=1.8,grid=[10,5]):

Non-Orientable Surfaces

The border of this Möbius band is none the less than a trefoil knot:

>plot3d("(3+cos(3*x/2))*cos(x)","(3+cos(3*x/2))*sin(x)","sin(3*x/2)", ...
   xmin=0,xmax=4*pi,>anaglyph,<frame,scale=1.8):

Non-Orientable Surfaces

If one tries to close a non-orientable surface (reducing its border to a point), a self-intersection is unavoidable. So the compact non-orientable surfaces without border are always self-intersecting in R^3. Their characteristic is an integer inferior to 2. In some sense, the simplest one could be the one with characteristic one:

II The projective plane

If one sews the border of a one-half-turn Möbius band against the circle of a semi-sphere, one gets a surface looking like a bishop's hat, which french name is a "mitre". (Be careful though that in PovRay's example the name of "mitre" is given to an orientable surface). This model of the projective plane has been found by J. Steiner near the end of the XIXth century:

>u=linspace(0,2*pi,100); ...
 v=linspace(0,pi/2,50)'; ...
 X=1/2*cos(u)*sin(2*v); Y=1/2*sin(u)*sin(2*v);  ...
 Z=1/2*(cos(v)^2-(sin(v)*cos(u))^2); ...
 plot3d(X,Y,Z,n=20,<frame,>anaglyph,scale=1.5,angle=40°, ...
   >transparent,grid=10):

Non-Orientable Surfaces

Here is a cut version of this object.

>u=linspace(0,pi,100); ...
 v=linspace(0,pi/2,50)'; ...
 X=1/2*cos(u)*sin(2*v); Y=1/2*sin(u)*sin(2*v);  ...
 Z=1/2*(cos(v)^2-(sin(v)*cos(u))^2); ...
 plot3d(X,Y,Z,n=20,<frame,>anaglyph,scale=1.7,angle=40°, ...
 >hue,grid=10):

Non-Orientable Surfaces

This surface, whose english name is "crosscap" (source: Eric Weisstein), is a quartic. If now one sews a 3-half-turns Möbius band against the border of a disk, one gets the most symmetrical of all non-orientable surfaces: THE FAMOUS STEINER ROMAN SURFACE (with the rolling drums...):

>u=linspace(0,pi,100); ...
 v=linspace(0,pi,50)'; ...
 X=1/2*sin(2*u)*sin(v)^2; Y=1/2*sin(u)*sin(2*v); Z=1/2*cos(u)*sin(2*v); ...
 plot3d(X,Y,Z,>anaglyph,n=100,frame=0,scale=1.5,grid=10):

Non-Orientable Surfaces

This is a quartic too.
Steiner had an impressive collection of parametric models of the projective plane, but he seems to have missed this one, that I found empirically:

>u=linspace(0,2*pi,100); ...
 v=linspace(-pi/2,pi/2,50)'; ...
 X=cos(u)*cos(v); Y=sin(u)*cos(v); Z=sin(2*v)*cos(3*u/2); ...
 plot3d(X,Y,Z,anaglyph=1,n=20,<frame,height=60°, ...
   scale=1.5,grid=10):

Non-Orientable Surfaces

This surface should maybe be called "the Busser decic" because its implicit equation has degree 10.

All the Steiner models have self-intersection sets composed of segments. At the very beginning of the XXth century, D. Hilbert asked his students to try and prove that any model of the projective plane shares this property. One of them, called Boy, came up with this now famous counterexample, also found by sewing a 3 half-turn Möbius band against a hemisphere:

>u=linspace(0,2*pi,100); ...
 v=linspace(0,pi,50)'; ...
 m=3; c0=2; c1=0.5; c2=0.5; r=4; ...
 a=c0+c1*sin(2*m*v-pi/3)+c2*sin(m*v-pi/6); ...
 b=c0+c1*sin(2*m*v-pi/3)-c2*sin(m*v-pi/6); ...
 alpha=pi/8*sin(m*v); ...
 x1=(a^2-b^2)/sqrt(a^2+b^2)+a*cos(u)-b*sin(u); ...
 z1=sqrt(a^2+b^2)+a*cos(u)+b*sin(u); ...
 X=r*(x1*cos(v)-z1*sin(alpha)*sin(v)); ...
 Y=r*(x1*sin(v)+z1*sin(alpha)*cos(v)); ...
 Z=r*z1*cos(alpha); ...
 plot3d(X,Y,Z,>anaglyph,<frame,scale=1.5,grid=20):

Non-Orientable Surfaces

This model originates to J.P. Petit and J. Souriau, and was modified by J.F. Colonna. On wikipedia there is a slightly different parametric equation. Apery found a cartesian equation for this surface, making it an octic.

But no one seems to have tried before to sew a 5-half-turns Möbius band against a hemisphere, which leads to a Boy-like surface with 5 branches, and is quite new (it has no name):

>u=linspace(0,2*pi,100); ...
 v=linspace(0,pi,60)'; ...
 m=5; c0=2; c1=0.5; c2=0.5; r=4; ...
 a=c0+c1*sin(2*m*v-pi/3)+c2*sin(m*v-pi/6); ...
 b=c0+c1*sin(2*m*v-pi/3)-c2*sin(m*v-pi/6); ...
 alpha=pi/8*sin(m*v); ...
 x1=(a^2-b^2)/sqrt(a^2+b^2)+a*cos(u)-b*sin(u); ...
 z1=sqrt(a^2+b^2)+a*cos(u)+b*sin(u); ...
 X=r*(x1*cos(v)-z1*sin(alpha)*sin(v)); ...
 Y=r*(x1*sin(v)+z1*sin(alpha)*cos(v)); ...
 Z=r*z1*cos(alpha); ...
 plot3d(X,Y,Z,>anaglyph,<frame,scale=1.5,height=60°,grid=20):

Non-Orientable Surfaces

This can be generalized to 7, 9, 11 etc. halfturns (until an overflow...)

Now to the next compact non-orientable surface without a border, discovered by F. Klein at the very end of the XIXth century:

III The Klein bottles

The Klein bottle is obtained in sewing two Möbius bands, border to border. If the 2 borders have 1 half-turn, it leads to either the Banchoff model (see below) or the famous Etruscan venus:

>u=linspace(0.001,2*pi,100); ...
 v=linspace(0.001,2*pi,50)'; ...
 a=4; b=2; c=2; e=3; g=12; ...
 w=b*sin(u)+e; ...
 dx=a*cos(u)-a*cos(c*u); ...
 dy=-g*sin(u); ...
 rxy=sqrt(dx^2+dy^2); ...
 X=a*sin(u)-b*sin(c*u)-dy*w*cos(v)/rxy; ...
 Y=g*cos(u)+dx*w*cos(v)/rxy; ...
 Z=w*sin(v); ...
 plot3d(X,Y,Z,>anaglyph,<frame,scale=2,angle=180°,grid=20):

Non-Orientable Surfaces

This parametric representation is due to P. Jeener (a different one can be found on wikipedia). P. Jeener generalized his parametric representation to the case where the bottle has any odd number of necks (see Colonna's web site at the Ecole Polytechnique). What he found has been ameliorated by E. Bonan; which leads to this beautiful 3-necks Klein bottle:

>u=linspace(0,2*pi,100); ...
 v=linspace(0,2*pi,50)'; ...
 s=2; t=4; ...
 w=(s+1)/4*cos((s+1)*u+pi/t)+sqrt(2); ...
 X=s*cos(u)+cos(s*u)-w*sin((s-1)/2*u)*cos(v); ...
 Y=s*sin(u)-sin(s*u)-w*cos((s-1)/2*u)*cos(v); ...
 Z=w*sin(v); ...
 plot3d(X,Y,Z,anaglyph=1,n=20,frame=0,scale=1.8):

Non-Orientable Surfaces

Prosit, prosit , prosit!

If one sews two Möbius bands on the extremities of a cylinder, one gets more simple surfaces with 2 crosscaps. The following example is a special case of Jeener-Bonan model:

>u=linspace(0,2*pi,50); ...
 v=linspace(0,2*pi,100)'; ...
 s=0; t=2; ...
 w=(s+1)/4*cos((s+1)*u+pi/t)+sqrt(2); ...
 X=s*cos(u)+cos(s*u)-w*sin((s-1)/2*u)*cos(v); ...
 Y=s*sin(u)-sin(s*u)-w*cos((s-1)/2*u)*cos(v); ...
 Z=w*sin(v); ...
 plot3d(X,Y,Z,>anaglyph,<frame,scale=1.5,grid=20,>transparent):

Non-Orientable Surfaces

Its shape reminds an x-rated fruit from the Seychelles islands...

The following model has been found by Alain Busser (that's me!)

>u=linspace(0,2*pi,100); ...
 v=linspace(-pi/2,pi/2,50)'; ...
 X=1/2*cos(u)*cos(v); Y=1/2*sin(u)*cos(v); Z=1/2*sin(v)-cos(u)^2*sin(v/2)^3; ...
 plot3d(X,Y,Z,>anaglyph,<frame,scale=1.5,>hue,grid=40):

Non-Orientable Surfaces

This surface has an implicit equation but its degree is 24 (d'uh!)

Would you be enable to find a model of whatever one obtains sewing 3 or 5 half-turn Möbius bands against the borders of a cylinder?

Anyway J.P. Petit (whose name happens to translate as "Klein" in german...) found a way to group the pinchs at the center of his surface:

>u=linspace(0,2*pi,100); ...
 v=linspace(0,pi,50)'; ...
 X=(1+sin(v))*cos(u); Y=2*sin(u)*sin(v); Z=sin(2*v); ...
 plot3d(X,Y,Z,anaglyph=1,n=20,frame=0,scale=1.5,>transparent,grid=20):

Non-Orientable Surfaces

Here is cut version of this.

>u=linspace(pi,2*pi,100); ...
 v=linspace(0,pi,50)'; ...
 X=(1+sin(v))*cos(u); Y=2*sin(u)*sin(v); Z=sin(2*v); ...
 plot3d(X,Y,Z,anaglyph=1,n=20,frame=0,scale=1.5,>transparent,grid=20):

Non-Orientable Surfaces

This surface is algebraic, its degree being 12. I propose to call this surface, the "Petit russian hat" because of its shape (it is described on Jean-Pierre Petit's web site).

T. Banchoff and his team were studying continuous time dynamical systems when they found the following model, which became rather famous nowadays:

>u=linspace(0,2*pi,50); ...
 v=linspace(0,2*pi,40)'; ...
 m=1; a=2; b=1; ...
 X=(a+b*cos(u)*cos(m*v/2)-b/2*sin(2*u)*sin(m*v/2))*cos(v); ...
 Y=(a+b*cos(u)*cos(m*v/2)-b/2*sin(2*u)*sin(m*v/2))*sin(v); ...
 Z=b*cos(u)*sin(m*v/2)+b/2*sin(2*u)*cos(m*v/2); ...
 plot3d(X,Y,Z,>anaglyph,<frame,scale=1.8,>transparent,grid=20):

Non-Orientable Surfaces

This surface is a sextic. It can be described as a Bernoulli lemniscate turning around an axis and at the same time doing a half-turn around its center. But what if it did THREE half-turns during its revolution?

>u=linspace(0,2*pi,200); ...
 v=linspace(0,2*pi,200)'; ...
 m=3; a=2; b=1; ...
 X=(a+b*cos(u)*cos(m*v/2)-b/2*sin(2*u)*sin(m*v/2))*cos(v); ...
 Y=(a+b*cos(u)*cos(m*v/2)-b/2*sin(2*u)*sin(m*v/2))*sin(v); ...
 Z=b*cos(u)*sin(m*v/2)+b/2*sin(2*u)*cos(m*v/2); ...
 plot3d(X,Y,Z,anaglyph=1,n=20,frame=0,scale=1.8,>hue):

Non-Orientable Surfaces

Because of its trefoil-like look surely Escher would have love this one.

Could you find out how the result of sewing a 3-half-turn Möbius band with a 5-half-turn one would like? And maybe find a parametric representation?

And what about the other non-orientable surfaces, for example the one with characteristic -1? (it could look like a sphere with 3 cross-caps, but parameterizing such a surface seems not that easy...)

The Klein-Steiner airways was happy to have you onboard and we are landing now. The external temperature is 30° (the temperature of my brain seems much higher); you can release your seat belts...

Examples