Diamonds are Forever (Algorithmic Geometry I)

When you dip a closed wire frame into soapy water and pull it out, the soap film you see is a minimal surface. Finding a formula for this surface is generally a very difficult problem, and one of the earliest successes was achieved by Hermann Amandus Schwarz, using four edges of a regular tetrahedron as the contour.

Single

One feature of minimal surfaces is that they can be extended across a straight line by means of a 180 degree rotation about that line. Doing so for the tetrahedral patch above generates the diamond surface, named so because it has the symmetries of the diamond cubic crystal structure.

Pair

One can explore this crystal structure together with the diamond surface at a much more elementary level. Start with two sides of a regular tetrahedron. They constitute a blue rhombus that has been folded along the shorter diagonal. Rotate this blue rhombus by 180 degrees about any of its four edges to obtain a second (red) rhombus that is attached to it, like in the image above.

Hex

Keep extending this surface, always by rotating a bent rhombus about a boundary edge by 180 degrees. Above you see how you can obtain a hexagonal shape, and below an annulus.

Annulus

Again the surface will extend indefinitely. The following piece is a fundamental piece in the sense that mere translations of it will produce the whole infinite surface.

Cube

There is another way to render the bent rhombi by replacing each rhombus by a circular ribbon which ends at the far corners of the rhombus. I learned about this from Alison Martin at the Shape-Up conference in Berlin, 2015.

Cubestrips

So what we are trying here is to visualize an abstract algorithm (extend by rotating about an edge) that can reapplied to varying geometric contexts.

Copies

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s