Message Boards Message Boards

[GIF] Limits (Möbius transformations of the triangular tiling)

Möbius transformations of the triangular tiling

Limits

To make this, I'm applying a family of Möbius transformations $z \mapsto \frac{Z_\infty z - \gamma_1 \gamma_2}{z - z_\infty}$ to the tiling of the plane by equilateral triangles. Specifically, the fixed points of all transformations are $\gamma_1 = 2$ and $\gamma_2 = -2$, and the pole is at $z_\infty = \tan(\pi (t - 1/2))i$ as $t$ varies from 0 to 1. Consequently, the inverse pole (the point to which infinity is sent), is $Z_\infty = \gamma_1 + \gamma_2 - z_\infty = - \tan(\pi (t - 1/2))i$.

In other words, the point infinity gets mapped to just varies along the imaginary axis.

(Actually, there's a slight lie above: I reparametrize $t$ using the smootheststep function in order to get it to pause nicely at the beginning/end).

Of course, I can't really tell Mathematica to transform infinitely many triangles, so the animation actually only shows $1001^2$ triangles, which is why there's a hole in the middle. In some ways the hole annoys me, but I also kind of like it: it's a good reminder of the limits of computation (as opposed to imagination).

Of course, transforming a million triangles doesn't really work in a Manipulate[] (in fact, the animation took many hours to render), so the code below only shows $21^2$ triangles, which is why it has a much larger hole:

smootheststep[t_] := -20 t^7 + 70 t^6 - 84 t^5 + 35 t^4;

DynamicModule[{?1 = 2, ?2 = -2, z?, 
  Z?, cols = RGBColor /@ {"#eaeaea", "#0D2C54"}},
 Manipulate[
  z? = Tan[? (smootheststep[t] - 1/2) ] I;
  Z? = ?1 + ?2 - z?;
  Graphics[
   {cols[[1]],
    Table[
     If[Abs[3/4 y - Tan[? (smootheststep[t] - 1/2)]] < 1/2 && x == 0, Nothing,
      Polygon[
       Flatten[
        Table[
         ReIm[(Z? # - ?1 ?2)/(# - z?) 
           &[Sqrt[3]/2 (x + 1/4 (-1)^Mod[y, 2]) + 3/4 y I + 1/2 ((1 - s) Exp[I (?)] + s Exp[I (? + 2 ?/3)])]],
         {?, ?/2., 2 ?, 2 ?/3}, {s, 0., 1, 1/10}],
        1]
       ]
      ],
     {x, -10, 10}, {y, -10, 10}]},
   PlotRange -> {{-((15 Sqrt[3])/8), (15 Sqrt[3])/8}, {-3.25, 3.5}}, ImageSize -> 540, Background -> cols[[-1]]],
  {t, .001, 1 - .001}]
 ]

enter image description here -- you have earned Featured Contributor Badge enter image description here Your exceptional post has been selected for our editorial column Staff Picks http://wolfr.am/StaffPicks and Your Profile is now distinguished by a Featured Contributor Badge and is displayed on the Featured Contributor Board. Thank you!

POSTED BY: EDITORIAL BOARD
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract