Instructions for the software WaitingForMandelbro to accompany Chaos Under Control: The Art and Science of Complexity, W. H. Freeman, 1994, by David Peak and Michael Frame

Hardware requirements: Macintosh, 1MB of free memory

System requirements: System 7.0 or higher

© David Peak and Michael Frame

With WaitingForMandelbro we explore dynamics of iterating at complex function z2 + c in three aspects: Orbit, Julia, and Micro.

From the Option menu we select one of Orbit, Julia, and Micro. For all three options, we are presented with
* MandelMap, a window on the upper left of the screen and containing a precomputed picture of the Mandelbrot set,
* a Selected Point box (active for Orbit and Julia),
* a Run/Stop button,
* an Active Window Corners box,
* a MaxIter box, and
* Active Window - the large window on the right half of the screen.

Note:

* When the cursor is in MandelMap, the coordinates of the cursor appear in a popup window above the MandelMap window.

* When the cursor is in Active Window, the coordinates of the cursor appear in a popup window above the Active Window.

From the Painting menu we select one of three painting modes to be used in the Julia and Micro windows. These modes are
* Bounded only,
* Alternate bands, and
* Color.

"Bounded only" colors black those pixels for which the iteration does not escape from the circle of radius 2 in the maximum number ("MaxIter") of steps.

"Alternate bands" colors black those pixels for which the iteration stays within the circle, as well as those for which the iteration first escapes from the circle in a number of steps having the same parity (evenness or oddness) as MaxIter.

"Color" assigns black to those pixels for which the iteration does not escape the circle of radius 2, and for those that do escape, assigns a color based on the number of steps at which escape first occurs.

Orbit

With the Orbit option we select a point (a c-value) in or near the Mandelbrot set and plot the orbit of z = 0 in Active Window. By "orbit of z = 0" we mean the collection of points z0, z1, z2, z3, ..., where z0 = 0 (always), z1 = z02 + c, z2 = z12 + c, z3 = z22 + c, and so on. Note: in this option, Active Window shows z-values.

* Select the value of c by clicking the mouse button when the cursor is on the desired point in the MandelMap. The x- and y-coordinates of the selected point appear in the "Selected Point" box. Some orbits take a while to converge, so holding the mouse button down (instead of simply clicking it) keeps generating points of the orbit.

* Holding down one of the Command, Shift, or Option keys before pressing the mouse button plays "Orbit music." That is, plotting each orbit point is accompanied by playing a tone corresponding to the distance from that point to the origin. This gives an audio character to fixed points, cycles, and convergence rate.

Julia

With the Julia option we select a point (a c-value) in or near the Mandelbrot set and plot the (filled-in) Julia set in the Active Window. Note: in this option, Active Window shows z-values.

* Select the value of c by either

** Clicking the mouse button when the cursor is on the desired point in the MandelMap (The x- and y-coordinates of the selected point appear in the Selected Point box.)

Or

** Entering the x- and y-coordinates in the Selected Point box. For this, darken the x- or y-value by dragging the cursor across the appropriate box, type the value, and press Return.

* Clicking the Run button begins plotting the Julia set in Active Window. Clicking the Stop button stops the process.

* As the x value increases, a black line along the bottom of the Active Window indicates the location of the current x value in the window.

* To change MaxIter, darken the current value by dragging the cursor across the MaxIter box, type the new value, and press Return.

* To change the Active Window corners, either

** Darken the current value by dragging the cursor across the appropriate box, type the new value, and press Return. When the new values have been entered, click the Apply button to make them the corners of the Active Window. Click the Run button to draw the Julia set.

Or

** Use the mouse to select the lower left and upper right corners of the region to be magnified. Move the cursor into the Active Window, observing the cursor is shaped like an L, to indicate the lower left corner is being chosen. Clicking the mouse button selects that corner. Holding down the shift key inverts the L, to indicate the upper right corner is being chosen. Clicking the mouse button selects that corner. Click the Apply Button to make these the corners of the Active Window. Click the Run Button to draw the magnification of the Julia set.

* Here URx, URy, LLX, and LLy stand for "Upper Right x," "Upper Right y," "Lower Left x," and "Lower Right y" the x- and y-coordinates of the Upper Right and Lower Left corners of the Active Window.

* Because the Active Window is square, the program will modify a selected rectangular region to make it square. Keeping the lower left corner fixed, a square window with side the longer of the rectangle's sides will be used for the Active Window.

Micro

With the Micro option we can magnify regions of the Mandelbrot set, exploring in detail some of the intricate fractal structure of the boundary of the Mandelbrot set. These magnified views are displayed in the Active Window. Note: in this option, Active Window shows c-values.

* Select the region to be magnified by either

** Darken the current value of the lower left and upper right corners of the Active Window by dragging the cursor across the appropriate box, type the new value, and press Return. When the new values have been entered, click the Apply button to make them the corners of the Active Window. Click the Run button to draw the Julia set.

Or

** Use the mouse to select the lower left and upper right corners of the region to be magnified. Move the cursor into the MandelMap, observing the cursor is shaped like an L, to indicate the lower left corner is being chosen. Clicking the mouse button selects that corner. Holding down the shift key inverts the L, to indicate the upper right corner is being chosen. Clicking the mouse button selects that corner. Click the Apply Button to make these the corners of the Active Window. Click the Run Button to draw the magnification of the Mandelbrot set.

* Here URx, URy, LLX, and LLy stand for "Upper Right x," "Upper Right y," "Lower Left x," and "Lower Right y" the x- and y-coordinates of the Upper Right and Lower Left corners of the Active Window.

* Because the Active Window is square, the program will modify a selected rectangular region to make it square. Keeping the lower left corner fixed, a square window with side the longer of the rectangle's sides will be used for the Active Window.

* The magnified view can be magnified itself by entering new coordinates in the Active Window Corners box, or by using the mouse to select corners within the Active Window. Note the plotting must be stopped (by clicking the Stop button) to obtain the L-shaped cursor in the Active Window.

* As the x value increases, a black line along the bottom of the Active Window indicates the location of the current x value in the window.

* Clicking the Run button begins plotting the Mandelbrot set in Active Window. Clicking the Stop button stops the process.

* To change MaxIter, darken the current value by dragging the cursor across the MaxIter box, type the new value, and press Return.

Erratum:

In color painting, if another window appears on top of the Active Window, the color does not refresh. Rather, the covered area becomes black. This will be corrected in later versions.

Return to Chaos Under Control