Rendering Fractals: Mobius Transform and Newtonian Basin

I understand how to render the (2D) "Escape Time Group" (Julia and Mandelbrot) fractals, but I cannot get the Mobius transform or Newton render.

I am trying to render them using the same method (recursively using the polynomial equation at each "n" pixel), but I have a feeling that these fractals are rendered using completely different methods. The "Mobius transform" implies that the image must already exist and then be transformed to create geometry, and in Newton's basin, every point appears to be laid, not just the points that fall into the set.

How are these fractals drawn? Are they charting using the same iterative methods as Julia and Mandelbrot?

The equations I'm using are:

Julia: Zn+1 = Zn^2 + C

      

Where Z is a complex number representing a pixel and C is a complex constant (Correct).

Mandelbrot: Cn+1 = Cn^2 + Z

      

Where Z is a complex number representing a pixel and C is a complex number (0, 0) and each step is compounded (Reverse Julia, correct).

Newton Basin: Zn+1 = Zn - (Zn^x - a) / (Zn^y - a)

      

Where Z is a complex number representing a pixel, x and y are exponents of varying degrees, and a is a complex constant (False - creating a centered, eight-legged 'line star').

Mobius Transformation: Zn+1 = (aZn + b) / (cZn + d)

      

Where Z is a complex number representing a pixel, and a, b, c and d are complex constants (Wrong, everything falls into the set).

So, how are Newton and Mobius plans built on the complex plane?

Update: Mobius Transformations is just that; transformation.

"Every Mรถbius transformation is
a composition of translations,
rotations, zooms (dilations) and
inversions."

      

To perform a Mobius transformation, shape, image, brushstroke, etc. must already be present for its conversion.

Now what about those Newtonian basins?

Update 2: My math was wrong for Newton's basin. The denominator at the end of the equation is (presumably) the derivative of the original function. This function can be understood by examining "NewtonRoot.m" from the MIT MatLab source code. A search engine can find this quite easily. I'm still at a loss how to do this on a difficult plane, though ...

Newton's Basin:

f(x) = x - f(x) / f'(x)

      

+3


source to share


1 answer


Mandelbrot and Julia state that you end an inner loop if it exceeds a certain threshold as a measurement of how quickly it "reaches" infinity

if(|z| > 4) { stop }

      



For Newton's fractals, this is the other way around: since Newton's method usually converges to a certain value, we are interested in how quickly it reaches its limit, which can be done by checking when the difference of two consecutive values โ€‹โ€‹falls below a certain value (usually 10 ^ -9 is a good value)

if(|z[n] - z[n-1]| < epsilon) { stop }

      

+2


source







All Articles