The Mandelbrot Set

If you were persistent enough on the Iteration of z2+c display, you detected

certain regions where the iterations settled down, or at least did not diverge

out of bounds. On the next display the program will outline for you the area

where the function z2+c does not diverge. The set of all points in the complex

plane where the function z2+c does not diverge under iteration, is called the

"Mandelbrot set", after Benoit Mandelbrot. The outline of the set resembles the

insect known as a ladybug, after being run over and possibly struck by

lightning.

The outline of the Mandelbrot set is produced by a trick called the escape time

algorithm. We visit each pixel on the screen, taking its corresponding location

in the complex plane to be the constant c in z2+c. Then we iterate the function

using that value for c. If the function diverges quickly we leave the pixel

black and go on to the next one. If the function converges quickly we also leave

the pixel black and move on. In those cases where the function is indecisive

about which way it is going to go we treat that pixel differently.

In some cases one might iterate for a very long time before it would be

conclusive that the function would ultimately diverge. We establish a limit,

called the depth, on the number of iterations we will allow. If that limit is

reach without divergence, we leave the pixel black as though it were in the set.

For locations where divergence is indicated prior to hitting the limit, we color

the pixel depending on how many iterations it took to indicate divergence. Under

this scheme points in or very near to the set are black. The near boundary is

multicolored.

Points well outside the Mandelbrot set are left black so the boundary is clearly

demarked. It is the boundary region of this set which will be of most interest.

We will explore the Mandelbrot set boundary in more detail later. In the next

display the first click on the Action button will plot the outline of the

Mandelbrot set. For now just let the program run until the general outline is

clear. Then click on Cut to stop the plot. Then you can mark a point with the

mouse button and repeat the step by step iterations as on the Iteration of z2+c

display. Use the outline of the set to guide you in picking points. Iterating

points outside will give divergence. Iterating points inside, convergence.

Points near the boundary - Who knows? It took 230 iterations to determine that

the point picked in the illustration above produced divergence. Run the

Iteration and the Mandelbrot Set display.

In the next display we will again paint the boundary of the Mandelbrot set. This

time allow the program to complete the portrait so you may see the intricate

detail. Those points in the boundary closest to the set, based on escape time,

we color white. Farther out we use a rotating multi-color scheme in which the

colors repeat as we get farther and farther from the set. Finally if the point

is far enough from the set so that divergence occurs quickly we leave the point

black. This coloring provides contrast between regions. Run the Mandelbrot Set -

View 1, Full Scale display, or just look at the image below.

You may have noticed that the central feature of the Mandelbrot set is basically

a series of disks. The disks have irregular borders and decrease in size as we

proceed along the negative real axis. And the ratio of the diameter of one disk

to the next approaches a constant as we look deeper and deeper into the series

of disks.

And the constant which the ratio approaches is the Feigenbaum number,

approximately 4.669.

So what is going on here. The same number keeps popping up in seemingly

unrelated places. The logistic function is a quadratic, the sine function is

trigonometric, the Gaussian is exponential and the Mandelbrot set is none of

these. The common thread in the universality of the Feigenbaum number is

iteration. Is it the iterative process itself that brings this order to chaos?

When we produce an object through iteration like an attractor or a Mandelbrot

set, the whole is made of parts repeated. The details on a small scale resemble

pieces in larger scale.

The notion of things looking the same on different scales has profound

implications. Turbulent flow in a fluid exhibits this characteristic. There are

eddies within eddies within eddies mixed with smooth regions. Water at the point

of boiling, clouds, metals making the transition to magnetism, many badly

behaved physical systems exhibit scaling. To the mathematically sophisticated,

the geometric regularity shown by Feigenbaum's number implies scaling phenomena.

The universality of it means that difficult problems might be understood by

solving simple ones.

If you are intrigued by the line of thought we have been exploring in the last

few paragraphs you will have to follow up this course with additional study. We

are about at the limit of our exploration in this direction. It was about

twenty-five years ago that the foundations of this science was being put down.

There has been considerable building on those foundations in the last two

decades and now there are structures upon which even ordinary folks like us can

stand and perhaps see farther than before. I urge you to go as high as your

curiosity can take you.

In the next few displays we offer pictures of different parts of the Mandelbrot

set. The intention is to illustrate the wealth of variety contained in the set

which is defined so simply. This may be the extreme example of complexity

arising from simple origins. We got our first look at this phenomena back in the

section on phase control maps when we iterated the logistic function. In the

Mandelbrot set there is literally infinite variety. No one has yet seen all the

detail available to you through this program. In the research mode of this

section you will be able to explore for a lifetime. Run the Mandelbrot Set -

View 2 through - View 6. The only difference in these views is the portion of

the complex plane at which we are looking.

Mandelbrot Set - View 2, Near the Axis

Mandelbrot Set - View 3, A River Delta

Mandelbrot Set - View 4, The Root of a Grape Vine

Mandelbrot Set - View 5, Fireworks Pinwheel

Mandelbrot Set - View 6, Turbulence

Next we will zoom in on a region of the Mandelbrot set boundary. Multiple passes

allow you to get an early look at the picture with details added as time goes

on. Points associated with a particular number of iterations to divergence

(escape time) indicated by color, are laid out in intricate patterns. The

patterns are infinitely detailed fractals. The area to be expanded to full

screen is outlined by a white box. Run the Mandelbrot Set - View 7 display to

see the location of the first zoom box. Then run the Mandelbrot Set - View 8 for

the first zoom.

Mandelbrot Set - View 7, Full Scale with Zoom Box

Mandelbrot Set - View 8, Once Zoomed

If we think of the set boundary as a coastline, we have zoomed in here on a

peninsula, not quite all the way to the point. If this were a coastline it would

have to be Maine. It is ragged in the extreme. Next we will zoom in on the sort

of spiral structure enclosed in the box. Run the Mandelbrot Set - View 9.

Mandelbrot Set - View 9, Twice Zoomed

We introduced fractals earlier in this course but let us review the concept. The

whole Mandelbrot set is contained in the complex plane such that a circle of

radius 2.5 centered at zero would completely enclose it. The boundary though is

of infinite length. This is tough to visualize without a program like this one

to actually plot the points in the set. Lines of finite extent but infinite

length we know to be fractals. Fractals involve an interesting concept in

addition to fractional dimension. That is "self similarity". The boundary of

this set illustrates that.

Self similarity means that as you look at a structure under magnification you

see tiny pieces of it which look like the whole thing. With this program you

begin with the outline of the entire set. In a later display you may set up a

window on the plot to examine any portion of it in greater detail. By repeatedly

zooming in on the details you will see that the boundary is indeed infinite and

that there are regions which look like the outline of the entire set. The

Mandelbrot set also exhibits "symmetry". Not the rigid symmetry of geometric

figures but an approximation of nature's own.

Symmetry in this context refers to sameness on both sides of some axis.

Generally mathematical functions which exhibit symmetry are identically

symmetrical. The whole Mandelbrot set in fact has this kind of symmetry about

the real axis. The set boundary however on closer inspection has regions of

"almost symmetry" which are reminiscent of the symmetry of trees and frogs. A

most unexpected and unmathematical thing to find in a structure defined in only

a few lines of computer code. In fact with a little imagination one may see

rivers, valleys, islands and mountains in the set. Now run The Mandelbrot Set -

View 10 display.

Mandelbrot Set - View 10, Thrice Zoomed

In the last display you saw a copy of the whole Mandelbrot set on a scale about

1:20000. Just to clarify a point, the scale refers to linear dimensions. The

area of this display in the complex plane is about 1/400,000,000 of the full

scale display. If you are willing to wait for the picture to develop, you have a

very powerful microscope here. Soon you will be able to control the

magnification by repeated zooming to smaller and smaller scales. There is a

limit inherent in the way personal computers deal with floating point decimal

numbers, in how far we can take this magnification.

The number of significant digits in numbers handled by PCs is limited to about

15. The computer has trouble telling the difference between 100000.0000000001

and 100000.0. When the finest details of the plot we are making approaches this

scale, there is uncertainty about exactly which pixels represent the actual

value. Since several pixels may all represent the same value, they all are lit.

This gives the picture a blocky appearance. Ultimately every pixel on the screen

might be lit for a single point, reducing the resolution of the picture to zero.