[GIF] Inner Light (Möbius transformations of the sphere)

rings11Lrc.gif

Inner Light

This shows the action of a hyperbolic Möbius transformation on the Riemann sphere. Specifically, the north and south poles are fixed points, and every other point is moving away from the north pole and towards the south pole.

Under stereographic projection, this simply corresponds to scaling the complex plane. So in fact what I’m doing in the animation is scaling a bunch of concentric circles in the plane, then mapping them to the sphere by inverse stereographic projection. Specifically, I have circles of radii 1, 5/4, 3/2, \dots , 30 that I’m linearly interpolating between, as well as circles of all reciprocal radii. Under inverse stereographic projection these gives circles of latitude that are steadily moving south.

Here’s the code:

InverseStereo3D[{x_, y_}] := {2 x/(1 + x^2 + y^2), 2 y/(1 + x^2 + y^2), (1 - x^2 - y^2)/(1 + x^2 + y^2)};

With[{n = 100, th = .02, d = 1/4, viewpoint = 5 {1, 0, 1/4}, 
  cols = RGBColor /@ {"#41506B", "#35BCBF", "#263849"}},
 Manipulate[
  Graphics3D[
   {Table[
     Tube[
      Table[
       InverseStereo3D@((r + s) {Cos[?],  Sin[?]}), {?, 0, 2 ?, 2 ?/n}],
      th],
     {r, 1, 30, d}],
    Table[
     Tube[
      Table[
       InverseStereo3D@(1/(r - s) {Cos[?], Sin[?]}), {?, 0, 2 ?, 2 ?/n}],
      th],
     {r, 1 + d, 30, d}]},
   PlotRange -> 1.1, ViewAngle -> ?/13, SphericalRegion -> True, 
   ImageSize -> 540, Boxed -> False, ViewPoint -> viewpoint, Background -> cols[[-1]],
   Lighting -> {{"Point", cols[[1]], {0, 0, .9}}, {"Point", cols[[2]], {0, 0, -1}}, {"Ambient", cols[[-1]], viewpoint}}],
  {s, 0, d}]
 ]
5 Likes

Subtly and beautifully crafted. Darkness and light contrast is set up perfectly.

Thanks!

2015-11-02_10-07-11.png

  • Congratulations! This post is now a Staff Pick! Thank you for your wonderful contributions. Please, keep them coming!