Before discussing the projection method for obtaining Generalized Penrose Tilings I will discuss a simpler one-dimensional analogue: Fibonacci tilings of the line. We start with something apparently unrelated to tilings of the line. Figure 1 is meant to imply the integer lattice on the plane (that is, the collection of points with integer coordinates). A box around the origin and a line of irrational slope is included. In fact the slope of the line is a famous irrational number. It is the golden mean (roughly 1.618...).
Figure 1. A collection of points, a box, and a line
We will be projecting integer lattice points orthogonally onto our irrationally sloped line. Note that if we want to see anything interesting we must choose a subset of the lattice points to project. (If we projected them all we would densely fill the line.) So, we proceed as follows.
Applet 1. Grab the intersection of the tilted lines to move them up and down
The tilings of the line that result from the above procedure are known as Fibonacci Tilings. They have many beautiful properties. For instance the ratio of the lengths of the tiles is the inverse of the golden mean. In addition, they are aperiodic: meaning they have no translational symmetry. For if they did then the line they are on would pass through some integer lattice point. This cannot happen since the slope is irrational. For more information see . We will only make use of these tilings as a way of moving toward Generalized Penrose tilings of the plane. A Generalized Penrose tiling is an aperiodic tiling of the plane. Of course these tilings are quite a bit more than that (again, see .)
We intend to emulate the above procedure in 5-dimensional space. We want to project from 5-space onto a plane. Just as with the Fibonacci tiling above we want a subspace that does not intersect the integer lattice anywhere but the origin.
Consider the map
This map permutes the coordinates in 5-space. It also fixes the line generated by w = [1,1,1,1,1]. Now, if this were 3-space we would know that the plane orthogonal to w would be stable under the action of A (i.e. points in it would stay in it). But, in 5-space there are two planes orthogonal to a given line. So there are two planes that are stable under the action of A. Changing coordinates to make the action of A on these spaces more clear we find
The plane where A acts as a 5-fold rotation is the one we are interested in. So, in our new eigen-coordinate frame we want to choose some segment of the tilted lattice (tilted because we have changed coordinates) to project onto the (x,y) plane. Figure 3 below is meant to hint at the situation.
Figure 3. Schematic of situation in 5-space.
Now, to repeat the above procedure we need to project the unit cube around the origin in 5-space onto the space orthogonal to the space we are interested in. That is, the orthogonal 3-space to our chose plane. Here we see the first nontrivial difference between what we did earlier and what we need to do now. The projection of a 5-cube into 3-space is not an interval. (Recall that above we projected the unit square onto a line to get an interval.) In this case we must spend some time figuring out exactly what the projection map should be. It turns out that the image of the unit cube vertices under the correct projection is a collection of 32 points (2^5 vertices in the 5-cube) in 3-space that have a Rhombic Icosahedron as their convex hull (see ).
Figure 4. The Rhombic Icosahedron. A 20-sided polyhedron in 3-space. (image from here).
With this knowledge we can proceed:
As with the simpler case above we have some more control we can express. We can alter the height of the plane we project to. In the original coordinates it is orthogonal to the line generated by [1,1,1,1,1] and we can project onto it or we can shift it along that line and then project. So, we get a one-parameter family of projected points. We will call this height "h" from now on. h=0.5 corresponds to the classical Penrose Tiling. The other h values lead to generalized tilings. This suggests an idea we have been avoiding until now. When we project from 5-space we are projecting points. We could also project the edges joining the lattice point. If this problem had been addressed more carefully that is precisely what I would have done in my programming. However, I simply projected the points and then joined them after that.
This brings out, however, one of the beautiful features of these tilings. There is only one distance you need to consider. You connect only those points that are a certain distance apart and you get the beautiful tiling.
Figure 5. A General Penrose tiling generated by projection method (h=0).
Figure 6. A Penrose tiling generated by projection method (h=0.5).
Figure 7. A Penrose tiling produced by up/down generation (see ) by David Austin.
You will notice a marked difference between the Penrose tiling I produced and the beautiful one produced by David Austin. His is correct and mine has many mistakes. I am not certain of the reasons for this. But, I have some very strong suspicions. I am obviously including points that don't need to be there. Some of the tests I am applying to lattice points are producing false positive. It is also possible that there are some false negatives. I have some evidence to support my suspicion. Consider Figure 8 below.
Figure 8. Points near boundary included for h=0.5 case.
In Figure 8 I have included points that, when projected into the orthogonal 3-space, lie within a small region around any of the faces. Note that they cluster around the band where most of the errors in Figure 6 occur. This proves nothing, but it is stimulating.
Figure 9. Points near boundary included for h=0 case.
Figure 9 displays the similar diagram for the h=0 case.