Animate Julia Sets

Generate two Julia sets

Change the palette

Your browser does not support the canvas tag.

Pattern repetitions:

Pick colouring
Choose click option Zoom in
Pick Julia point

Animate along a circle through the two chosen Julia-set-points

number of frames
60

Your browser does not support the canvas tag.

1/60

Definition of a Julia set

There is one Julia set for each complex number $$c$$.

Given a complex number $$c$$, pick a complex number $$z_0$$ and use the recursive formula $z_{n+1}=z_n^2+c.$

If $$|z_n|\nrightarrow \infty \text{ as }n\rightarrow \infty$$ then $$z_0$$ belongs to the filled-in Julia set. The true Julia set is the boundary of this set.

If the chosen number $$c$$ gives rise to a connected Julia set, then $$c$$ belongs to the Mandelbrot set (see The Mandelbrot Set for more information). The Mandelbrot set can be defined as the set of all complex numbers such that the corresponding Julia sets are connected. To illustrate this, the Mandelbrot set is shown as a background image in the example at the top.

In this case the function is given by $$f(z)=z^2+c$$; you can also use other rational functions. Another example is shown and explained at Newton Fractals.

Generating filled-in and true Julia sets

When using the iterative function $$f(z)=z^2+c$$ repeatedly, points will be generated along a so called forward orbit. When generating a filled-in Julia set, the distance to the origin after a maximum number of such iterations can be used to decide if a point belongs to the filled-in Julia set. When generating a true Julia set, i.e. the boundary of the filled-in set, it's better to use a so called backwards orbit. The backwards orbit is generated by using the inverse of $$f$$ which is multi-valued. When iterating backwards, you get two points in each step. If one of the points is chosen at random, it will take many iterations to get a satisfactory image since the points are not evenly distributed. In the interactive example at the top, another approach is used: by counting how many times each pixel is visited, in each step a point from a pixel with the minimum number of visits is chosen.

When using backwards orbits, there are at most two points that will not end up at the Julia set. Those are the roots of the equation $$z=z^2+c$$.

The interactive examples

The first example is a true Julia set.

The second example is a filled-in Julia set coloured using a variant of the algorithm described at Renormalizing the Mandelbrot Escape.

The third example is a filled-in Julia set where the colour depends on sine of the escape time.

The fourth example is a filled-in Julia set where the colour depends on the argument of the iterated point at escape time.

References

jQuery Plugin used on this site for picking colours: Spectrum - The No Hassle jQuery Colorpicker