The Mandelbrot set is defined as follows: given the function f(z, c) = z2 + c, a number z
in the complex plane is in the Mandelbrot set if and only if the sequence defined by z0 = z, zn+1 = f(zn, z0) is bounded.
There are numerous programs that draw images computed from such definitions, including my own "HTML 5 Fractal Playground", written by me. My software runs in a web browser, and I will provide deep-links in my question to see the software draw various fractals that I refer to. However, I do not guarantee that these links will work forever.
The Mandelbrot set can be graphed by clicking this link: http://danielsadventure.info/html5fractal/index.html#0,-2,2,-2,2,2,341,true,z%5E2%20%2B%20c,-2,2,-2,2.
My software, as well as every other fractal-graphing program that I know of, takes advantage of a particular fact about the generating equation: once the absolute value of any value in the sequence is known to have absolute value greater than 2, we immediately know that the sequence is unbounded (We say that the sequence "escapes"). If we compute many values in the sequence and don't see this happen, we assume that the number is in the Mandelbrot set. We call 2 the "bailout number".
We know that the above rule works because once the absolute value of the sequence exceeds 2, the exponential part of the equation dominates.
The Mandelbrot set is generalized into any set that can be generated by an equation such as the function f
given above. One of the best-known generalizations are the "Multibrot" sets. We simply replace the exponent 2 in f
with some other number. When the exponent is increased above 2, the same rule above about the absolute value of the sequence can still be used to generate graphs. I refer to these Multibrot sets as M(n), where n is the exponent used in place of two, so for instance, M(2) is the original Mandelbrot set.
Here are a few more clickable graph links: M(3), M(8)
I wanted to compute negative Multibrot sets such as M(-2). Here, my above method does not work. Now, using the equation f(z, c) = z-2 + c, we cannot use the above method because if the value of the sequence becomes very large and c is small, the next value in the sequence will be small, then the next value large, and the sequence "bounces" back and forth between small and large.
A little bit of analysis reveals that any number z
with absolute value greater than 2 is actually inside M(-2). That's because the addition part of the equation overtakes the negative exponentiation, preventing the value from escaping.
That means that even the number 1,000,000 is in M(-2); the sequence simply "bounces" back and forth between very small and very large numbers.
The problem I have is that I frequently see images using the "bailout" method used to represent these sets and I know they are wrong. Heck, my own software will draw such a figure, and I know it's wrong, yet my graph, known to be incorrect, looks similar to others that Google will find.
That was a long wall, but I wanted to show my own research before posing the question: given that I can't compute them the same way that I compute ordinary positive Multibrot sets, how can I compute negative Multibrot sets?
Edit in response to the answers and comments below.
The answers below indicate that I can draw a negative Multibrot fractal by using a completely different algorithm. Rather than checking that the iterating function generates a sequence that "escapes", I can check that the sequence is periodic. Interestingly, this provides variable values for coloring points inside the set, rather than outside the set, as the escape time algorithm does.
I have modified my program to use this algorithm and generated the following image for f(z,c) = z-2 + c:
The above image colors the set based on how many iterations were computed to detect periodicity. However, it was also pointed out that a different plot may be drawn by using the detected period.