5
$\begingroup$

As you know, the picture below is one of M.C. Escher's works.

enter image description here

I have thought a lot about what would be the rule of the function drawn on the surface of sphere? Is it a $\mathbb R\rightarrow\mathbb R^3$ or $\mathbb R^3\rightarrow\mathbb R^3$ function? Honestly, the idea that he drew it is new now and I don’t think his works be outdated ever. Thanks for sharing your knowledge about this great picture with me. :)

  • 0
    There are several ways of modelling the drawing. You could say it was $f:S^2 \to \{\top, \bot\}$ with $f(x)=\top$ if $x$ is filled in and $\bot$ if it is not, for example. Do you want to also know what the function *is*, or just what its type could be?2012-07-05
  • 0
    I don't remember this correctly, but.. isn't the cardinality of $\mathbb{R}=$ cardinality of $\mathbb{R^3}$2012-07-05
  • 0
    Yes, @picakhu, it is the same.2012-07-05
  • 3
    It looks like the boundary curves might be [loxodromes](http://en.wikipedia.org/wiki/Rhumb_line).2012-07-05
  • 0
    @Babak: I just remembered this. Now that I have upgraded my Mathematica (and my laptop) and learned to do animations with it, I can oblige. Please let me know, if you wanted a different kind of rotation (in case you are still interested that is - it's been close to two years :-)2014-03-23

2 Answers 2

5

It seems to me that the bands are supposed to twist indefinitely when they approach the poles (as observed by Erick Wong). That effect is achieved by using loxodromes as boundary lines. The loxodromes are roughly the spherical equivalents of the logarithmic spirals in that a loxodrome makes a constant angle with all the latitudes that it crosses - very much like the logarithmic spirals that have constant angles between their tangents and the radii.

The attaced image is generated by Mathematica. I used $m=1/2$ (see the link for the meaning of this parameter), so e.g. one of the bands was generated by

ParametricPlot3D[{Cos[t+u]/Cosh[t/2],Sin[t+u]/Cosh[t/2],Tanh[t/2]},{t,-8,8},{ u,0,Pi/4},PlotPoints->{81,5}]

and the other parts came out with the same formula, but the range of the variable $u$ shifted by an integer multiple of $\pi/2$. The range of $t$ is should be symmetric, but the endpoints (here $\pm8$) are, again, a largely arbitrary choice of mine. I did a linear change of parameters to that on the Wikipage in order to make sure that all the loxodromes cover the same interval of latitudes, and also to make one half of the boundaries of the tiles to have constant latitude.

Here's the image. To get a better match with Escher's painting it might be necessary to fine-tune the value of $m$ further.

enter image description here

To see the "endless twisting" here is a close-up of the polar region. The image is necessarily quite flat now. The formula is the same, but the range of the parameter $t$ is now $4\le t\le 16$.

enter image description here

Edit: Here's an animated version

enter image description here

  • 0
    I have a bit difficulty to convert the program to Maple. It seems that there is no calling sequence which in, a 3d two variables parametric function can be drawn in Maple.2012-07-05
  • 0
    @Babak, sorry I cannot help you there. I have never done graphics with Maple (and I haven't used Maple at all since 1990). Some local experts can surely help.2012-07-05
  • 0
    Sorry for backing again :) May I ask you if your picture at Mathematica can dynamical as we can do in Maple, like rotating the picture?2012-07-05
  • 0
    @Babak: All I know that in Mathematica I can select the viewpoint. IIRC it is possible to do a GIF-animation, but I don't know how (and my version of Mathematica may be too old?). It might be a good idea to ask this as a separate question, so that experienced users of those computer algebra systems can answer! You can ask about Maple at Math.SE (there is a *maple*-tag). Same for Mathematica, but there is also a separate Mathematica.SE.2012-07-05
  • 0
    I removed the meshlines. Remembering an [answer by J.M.](http://mathematica.stackexchange.com/a/5011/1155) explaining how to do that.2012-07-05
  • 0
    Thanks for the time you spent on it.2012-07-06
  • 0
    Added an animation.2014-03-23
5

Its formula is $$ f:D\to\mathbb{R}^3:(\phi,\theta)\mapsto(\sin\theta\cos\phi,\sin\theta\sin\phi,\cos\theta) $$ where $D=\{(\phi,\theta)\in[-\pi,\pi]\times[0,\pi]:\sin(4\phi+12\theta)>0\}$.

Here is a code in Mathematica

ParametricPlot3D[{Cos[\[Phi]] Sin[\[Theta]],    Sin[\[Theta]] Sin[\[Phi]],    Cos[\[Theta]]}, {\[Phi], -\[Pi], \[Pi]}, {\[Theta], 0, \[Pi]},   RegionFunction -> (Sin[4 #4 + 12 #5] > 0 &), Mesh -> None,   BoundaryStyle -> Black] 

and the graph

enter image description here

  • 2
    Very nice! However, the drawing has 4 bands, not 5 :). It also seems to "twist" considerably more near the poles, suggesting some adjustment to the $5\phi$ term.2012-07-05
  • 0
    @Norbert: Great program in Mathematica! Thanks.2012-07-05
  • 0
    @Norbert: I wonder why he chose this function as above and that he drew it without Machines is very wonderful.2012-07-05
  • 1
    Erick is correct that this is clearly not *exactly* the same function. I wonder if it's even a constant multiple of $\phi$ involved, and not something like $k\phi^2$.2012-07-05
  • 0
    @ErickWong I don't now how to make this twist more.2012-07-05
  • 0
    @Norbert Think of the $5\theta$ term as the phase of the function $\sin(5\phi + f(\theta))$. The twisting is caused by the phase changing as $\theta$ changes. If you want it to twist more at a certain altitude, choose $f$ so that $f'(\theta)$ is larger there. EDIT: I just noticed $\theta$ and $\phi$ are switched around from their usual meanings!2012-07-05
  • 0
    I've already came to this idea but due to the lack of Mathematica I can't produce a good picture.2012-07-05