Welcome to Fractal Forums

Fractal Art => Movies Showcase (Rate My Movie) => Topic started by: claude on February 05, 2015, 11:40:07 PM




Title: Mandelbrot Moebius Experiments
Post by: claude on February 05, 2015, 11:40:07 PM
Morphing of the Mandelbrot set with Moebius transformations:

https://archive.org/details/MandelbrotMoebiusExperiments

http://mathr.co.uk/blog/2013-12-16_stretching_cusps.html shows the maths for static images
http://mathoverflow.net/a/5347 using this answer for interpolating between Moebius transformations in matrix form
and the following links to diagonalize and invert 2x2 matrices for exp and log:
https://en.wikipedia.org/wiki/Matrix_exponential#Diagonalizable_case
https://en.wikipedia.org/wiki/Logarithm_of_a_matrix#Calculating_the_logarithm_of_a_diagonalizable_matrix
https://en.wikipedia.org/wiki/Diagonalizable_matrix#How_to_diagonalize_a_matrix
http://math.harvard.edu/archive/21b_fall_04/exhibits/2dmatrices/index.html
http://www.mathwords.com/i/inverse_of_a_matrix.htm

Has a few glitches, mostly interpolation going the long way round instead of a more direct route.  Blog post with more details to follow...


Title: Re: Mandelbrot Moebius Experiments
Post by: cKleinhuis on February 05, 2015, 11:45:35 PM
looks cool


Title: Re: Mandelbrot Moebius Experiments
Post by: DarkBeam on February 06, 2015, 12:51:55 AM
Nicey


Title: Re: Mandelbrot Moebius Experiments
Post by: claude on February 06, 2015, 01:26:25 PM
Thanks!

Blog post as promised: http://mathr.co.uk/blog/2015-02-06_interpolating_moebius_transformations.html


Title: Re: Mandelbrot Moebius Experiments
Post by: Adam Majewski on February 06, 2015, 04:16:25 PM
cool,

Is it related with polynomial mating ?

https://www.youtube.com/watch?v=HPk7FzQ0E3o

Adam


Title: Re: Mandelbrot Moebius Experiments
Post by: claude on February 06, 2015, 04:48:34 PM
No.  At least I don't think so.  There's only a connection via Moebius transformations, but Moebius transformations crop up all over the place.

I started reading this paper on matings (hadn't heard of them before), seems interesting:
http://www.emis.de/journals/EM/expmath/volumes/13/13.1/Milnor.pdf
Quote
Pasting Together Julia Sets: A Worked Out Example of Mating
John Milnor

The operation of “mating” two suitable complex polynomial maps f1 and f2 constructs a new dynamical system by carefully pasting together the boundaries of their filled Julia sets so as to obtain a copy of the Riemann sphere, together with a rational map f1 ⊥⊥ f2 from this sphere to itself. This construction is particularly hard to visualize when the filled Julia sets K(fi)are dendrites, with no interior. This note will work out an explicit example of this type, with effectively computable maps from K(f1) and K(f2) onto the Riemann sphere.


Title: Re: Mandelbrot Moebius Experiments
Post by: quaz0r on February 06, 2015, 06:58:52 PM
cool, Is it related with polynomial mating ?

u so naughty


Title: Re: Mandelbrot Moebius Experiments
Post by: Adam Majewski on February 07, 2015, 08:38:39 AM
See also

http://www.math.cornell.edu/~dynamics/Matings/

Could describe parameters ( idea) you use to make your video ?


Title: Re: Mandelbrot Moebius Experiments
Post by: claude on February 07, 2015, 11:21:36 AM
Could describe parameters ( idea) you use to make your video ?

There's source code linked from the blog post.  Overview:

Lines 20-45 compute various key points in the Mandelbrot set (nucleus of a few components, and points on their boundary at rational internal angles).
Lines 46-72 compute a sequence Moebius transformations that map three of those points to 0,1,\infty - usually for warping a circle into a straight line with one of the cusps pushed to infinity.
Lines 73-98 render a longer sequence of images, interpolating between neighbouring Moebius transformations in that sequence.

There's also a new video (_2) at the archive.org page, which fixes a "jump" glitch and has ease in/out for the interpolation speed, as well as a different soundtrack.  No public source code yet, the key difference in the interpolation is this:

h_+(f, g; t)=f\exp(t\log(f^{-1} g) )
h_-(f, g; t)=\exp((1 - t) \log(f g^{-1}))g
h=h_+ for 0 <= t <= 1/2
h=h_- for 1/2 <= t <= 1

The new h reduced the jump glitch, then I added a hack to elimate the glitch by using h_- explicitly for the whole of one particular segment.  Theoretically they should be equal, but I guess some rounding errors crept in somewhere.