Root-Finding Fractals

Newton Fractals

You may have seen Newton fractals like the following image.

Newton Fractal

The image comes from the formula z^3-1=0. When this fomula is plotted to the complex plane it has 3 distinct roots or possible values for z that satisfy the equation. Each “pixel” (or location in the 2D complex plane) of the image is set to the initial z complex number value at that coordinate and then iterated through the root finding method equation. The resulting pixel colors form a basin of attraction. Each pixel is colored red, green or blue depending on which root it finds. Points close to the target roots (or “zeroes”) are surrounded by a single color, but when there is an edge between two roots the surprisingly complex structures emerge. The process to find the roots is called Newton’s Method hence the name Newton Fractals.

A much more pleasing coloring method is to map how long it takes the iteration to reach a target root. The iteration count is mapped to a color palette and then plotted. This results in images like the following which uses the formula z^8+15z^4-16=0.

Newton Fractal

To see more sample images visit my Flickr Newton Fractals gallery.

Since Newton many other mathematicians have devised other formulas to solve the problem of finding multiple roots to polynomial equations. These can also be used in a similar way to generating the Newton Fractals to create new and unique images.

Halley Fractals

Halley’s Method from Edmund Halley (yes, he did more than work out the orbit of that comet) gives Halley Fractals like the following samples.

Halley Fractal

Halley Fractal

Halley Fractal

To see more sample images visit my Flickr Halley Fractals gallery.

Here is a sample movie of a Halley Fractal.

Schroder Fractals

Schroder’s Method gives some very nice results and they tend to be more complex looking and detailed than the Newton and Halley results.

Schroder Fractal

Schroder Fractal

Schroder Fractal

To see more sample images visit my Flickr Schroder Fractals gallery.

Here are two sample movies of Schroder Fractals.

Householder Fractals

Next up is Householder’s Method for root finding. This again gives unique results for the fractal images.

Householder Fractal

Householder Fractal

Householder Fractal

To see more sample images visit my Flickr Householder Fractals gallery.

Here is a sample movie of a Householder Fractal.

Secant Fractals

Using the Secant Method is another way of creating root-finding fractal images.

Secant Fractal

Secant Fractal

Secant Fractal

To see more sample images visit my Flickr Secant Fractals gallery.

Here are two sample movies of Secant Fractals.

Summary

There are a whole family of fractal images to be discovered by using these various methods to find the roots of polynomial equations. None of these methods were ever originally intended to be used for fractals, but thanks to the discoverers fractal enthusiasts have another wide range of images to explore.

Thanks go out to Florian Brucker and Simon Tatham whose websites helped me to get the hang of these formulas.

Special thanks must also go to the amazing WolframAlpha website that is a front end to the power of Mathematica which helped invaluably in finding roots, derivatives and second derivatives of the equations necessary to be able to create the above images. I have always been impressed with Mathematica when I have had a chance to use it but it is a rip off so I am glad that they decided to put the power into their online version.

All of the above images and videos were created with Visions Of Chaos.

Jason.

Automatically generating color palettes from photos

I have been playing around with ways of pulling colors from images or photos and using them to create color palettes in Visions Of Chaos.

Here is a screenshot of the interface.

The basic steps used in selecting the color shades are;
1. Count all colors in the image and keep track of how many times each color appears.
2. Sort the colors into a histogram. Sorting can be based on the frequency the colors appear (from least occuring to most occuring), brightness, RGB components, YUV components or HSL components.
3. Select 16 colors across the histogram. At this stage I select 16 colors as an even spread across the entire histogram.
4. Combine the 16 shades into a 256 color palette.

Which when applied to a Mandelbrot image gives the following result.

Here is the same fractal with palettes created from a photo of trees, a glass of beer and clouds on an overcast day.

Creating color palettes by hand is not easy, so this method allows anyone with a camera (or access to google images search) to take a snapshot and extract a color palette. It doesn’t always result in a pleasing color palette, but there are surprising results that pull out colors you would not expect existed in the original images.

Jason.