iDynamics is a program designed to draw the Mandelbrot set and Julia sets of quadratic polynomials z -> z2 + c. See the explanation below for the definition of the Mandelbrot set and Julia sets.

With iDynamics, you can draw the Mandelbrot set and Julia sets for various parameters and regions. Those pictures can be blown up to a larger size with a simple mouse action (just drag to select a rectangle and click inside it). You can also watch how the Julia set varies in realtime when you move around in the parameter space (or in the Mandelbrot set picture). It can also draw external rays and equipotential curves, which play crucial roles in modern studies of complex dynamics.

For how to use iDynamics, choose "iDynamics Help" from "Help" menu of the program, or see the ReadMe file included with the program.

The "i" of "iDynamics" stands for the imaginary unit i, which is necessary in the definition of complex numbers and complex dynamics, as well as the initial i of iteration, which makes the dynamics interesting.

See Gallery for examples of drawing.

System requirements:

This program requires a Macintosh Computer running MacOS 7.0 or later. It also uses the functionalities such as NavigationService, proportional scrollbars, etc. when they are available. The standard version "iDynamics" runs only on Macintoshes with PowerPC processors. If you have a Macintosh with with 68K processor, use the version "iDynamics68K", and if you have FPU (floating point unit) in addition, use "iDynamics68KFPU". Realtime drawing and zooming are not recommended on 68K Macintoshes.


The latest version is 0.84.

iDynamics (for Macintosh with PowerPC, 115KB)

iDynamics68K (for Macintosh with 68K processor, 104KB)

iDynamics68KFPU (for Macintosh with 68K processor and FPU, 99KB)

You can freely distribute copies of iDynamics. You can also use freely the images or movies created by iDynamics. However its copyright belongs to the author, Mitsuhiro Shishikura.

Please use the program with caution and at your own risk. I do not take any responsibilities for the damages that are caused by this program.

If you find a bug or have a comment, send an email to mitsu (AT) kusm (DOT) kyoto-u (DOT) ac (DOT) jp . However I do not guarantee a reply for your email.

What are the Mandelbrot set and Julia sets?

To define the Mandelbrot set and Julia sets for quadratic polynomials, consider the following recursive equation on complex numbers

zn+1 = zn2 + c .

For a fixed parameter c, the sequence {zn} either remains bounded or tends to infinity (the absolute value tends to infinity), depending on the choice of the initial value z0. The set of all initial values z0 such that the sequence remains bounded is the filled Julia set for the parameter c, and it is denoted by Kc. The boundary of Kc is called the Julia set Jc. It is known that Kc and Jc are connected if and only if the critical point 0 (of the quadratic polynomial z2 + c) belongs to the Kc, in other words, the sequence with z0 = 0 remains bounded. The Mandelbrot set M is defined as the set of all parameters c such that Kc and Jc are connected. These sets are often called "fractals", because they usually have very complicated structure in any small scales. In fact, if you explore (the boundary of ) the Mandelbrot set into fine scales, by blowing up successively (which is extremely easy to do with "iDynamics"), you will see how complicated the Mandelbrot set is. See also Gallery.

In "iDynamics", most algorithms (except "Black & White") color the complement of the filled Julia set Kc according to the first n such that the absolute value of zn exceeds a certain value (i.e. the number of iteration needed to escape from certain radius). Kc is colored black or gray (gray is used for the interior of Kc in the case of algorithm "Color(Boundary)"). Note that with algorithms "Color(Fast)" or "Color(Accurate)", a pixel containing a point of Julia set or the Mandelbrot set may not be colored black because of the limitation of the algorithms. One should think that a place where many colors accumulate may actually contains points of Julia set or the Mandelbrot set.


mitsu (AT) kusm (DOT) kyoto-u (DOT) ac (DOT) jp