Click anywhere to zoom in, click near the edges to zoom out.
Try changing the fractal using the picker in the top-right corner!
Put real and imaginary coordinates and the interval between pixels in the location box to go to an exact location.
Have fun!
Fractals are shapes that include smaller features which resemble the fractal as a whole. These smaller shapes, in turn, include yet smaller "copies" of the larger figure.
The Mandelbrot set is a fractal because it includes smaller shapes that look like the larger shape. Interestingly, though, the smaller features in the Mandelbrot set are always slightly different than the larger fractal.
The Mandelbrot set (and the other fractals displayed here) are made by repeating a function over and over again.
For example, in order to find the color for a location in the Mandelbrot Set, first we take the location and make it a number in the complex plane. We call this number “c”.
Then, we use the equation for the Mandelbrot Set that tells us, given a number in an interation sequence, and c, we can calculate the next value in the sequence.
So, basically, we calculate “sequences” of numbers for each location, using this equation:
zn+1 = zn2 + c
Where
So simply written, the equation is:
Next number = previous number squared + location
We set the starting number to 0, and then we can calculate sequences. These sequences allow us to figure out how to color things.
Here's how that works. Suppose we wanted to find the color at 1,0 (x =1, y=0). We would turn that into a complex number. (1+0i, or just 1.) and make that c.
Then we would place that into the equation, setting z0 = 0 and get:
z1 = 02 + 1 = 1.
So z1 = 1
Then we would place that in the equation again and get:
z2 = 12 + 1 = 2
And find that for c = 1, z2 = 2.
Continuing this process would produce the sequence:
0, 1, 2, 5, 26…
Which would get larger and larger indefinitely.
Now here's how we find the colors. The Mandelbrot “set” is defined to be all the locations (values of c) that produce a sequence that does not get larger and larger. Usally, all number in the set are colored black. But how do we find the color of something that is not in the set?
Let's go back to our example of c = 1. We set that if the number gets larger than a limit value (usually 2) then we will stop “iterating”, (that is, calculating more values in the sequence) the number. Then, we find the count how many iterations it took for the number to “escape”, or get larger than the limit.
So since setting c = 1 took 2 iterations to go beyond the limit, we would color that location what ever color corresponds to “2” in the color palette we're using.
Now what about numbers that don't go beyond the limit, and are in the set? How do we even know they won't go beyond the limit, if we only keep iterating them? This is actually a hard problem. Some numbers would be very easy to tell. For example, setting c = -1 gives the sequence:0, -1, 0, -1, 0...
Since this obviously repeats, and does not ever go beyond 2, then it is in the set, and just needs to be colored black. But some numbers may not repeat. In fact, what most programs (including this one) do in order to find if something is “in the set”, simply keep on running the iteration function for a fixed number of iterations. (The default here is 30,000. It can be changed using the input above.) If the number does not “escape”, that is, go over the limit, by the end, then it decides it is in the set, and colors that location black.
Not having enough iterations can be a problem, though. For instance, try reducing the number of iterations to 10, or 100 using the box above. See how the look changes. In some places, 30,000, or ever 100,000 iterations isn't even enough to display the set perfectly! It can be a problem that there is no definite way to say if something is “in” the set (unless it repeates).
To learn more about the Mandelbrot Set, take a look at the Wikipedia Article!
The burning ship fractal is closely related to the Mandelbrot set. The only difference is that the real and imaginary parts of the number are changed to thier absolute values (that is, if they are negative, they are changed to positive) before each iteration.
To learn more about the Burning Ship Fractal, take a look at the Wikipedia Article!This fractal (also called the Tricorn) is made by iterating the function:
zn+1 = zn-2 + c
as opposed to:
zn+1 = zn2 + c
for the Mandelbrot Set.
One can find both copies of the large Mandelbar and "squashed" features that look like the regular Mandelbrot Set.
While "Julia" is listed as one choice in the menu, there are really an infinite number of Julia Sets! To look at different ones, check the "show advanced options" box, and enter two values, seperated by a semicolon, in the Julia Set Values box.
Julia sets are closely related to the Mandelbrot Set. Since the two Julia Set values represent a complex number, a position in the Mandelbrot Set can be matched to a particular Julia Set. Often, the Mandelbrot Set resembles the Julia Set for that location.
Fractal Renderer actually only displays a subset of Julia Sets. While Julia Sets can be computed for ANY complex function, this renderer only shows Julia Sets of the form: fc(z) = z2 + c
To learn more about Julia Sets, check out the Wikipedia Article!
Orbit Traps are a way of seeing more about a fractal. While they can be computed for all of the fractals here, there is currently only a renderer for the Mandelbrot Set.
There are actually several kinds of orbit traps, but they all rely on the same idea. In order to understand orbit traps, one first has to understand orbits.
An orbit is the chain of complex numbers generated by iterating on of the fractal functions. Since each number corresponds to a location, one can find the distance from on location to another. When using orbit trap coloring, pixels are colored based on their orbit's closest approach to a shape.
Different shapes show different qualities of a fractal. Some commonly used shapes are crosses, points, or lines.
To learn more about orbit traps check out the Wikipedia Article!
As noted before, the Mandelbrot Set is calculated by iterating the function:
zn+1 = zn2 + c
This can be generalized to:
zn+1 = znx + c
changing x generates different fractals, often called "multibrot sets". The "variable exponent" allows users to explore the results of changing the exponent. To change the exponent, go the the "advanced options" section by checking the box.
The Multibrot Set fractal has an exponent of 3. It uses a different algorithm than the variable picker, and thus is a little faster. (The algorithm used is not variable, so it couldn't be used for displaying variable exponents.)
To learn more about Multibrot Sets, check out the Wikipedia Article!
Fractal Renderer was written by Kerwizzy.
The color pallets were made using tools in Blender 3D. (With some ideas for names from other renderers.)
The page was created using Bootstrap, and uses the Cyborg theme from Bootswatch (Created by Thomas Park)
Check out the Fractal Renderer source code on Github!
Not enough fractals? Make your own!
Enter any equation into the box below and see what fractal it makes.
Z0=