# What is a Mandelbrot zoom

## name: //Thorsten.Förstemann/Labor

**Warning**: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in

**/homepages/13/d110133045/htdocs/foerstemann/dokuwiki/inc/parser/handler.php**on line

**1458**

**Warning**: Declaration of syntax_plugin_nbsp :: handle ($ aMatch, $ aState, $ aPos, & $ aHandler) should be compatible with DokuWiki_Syntax_Plugin :: handle ($ match, $ state, $ pos, Doku_Handler $ handler) in

**/homepages/13/d110133045/htdocs/foerstemann/dokuwiki/lib/plugins/nbsp/syntax.php**on line

**144**

**Warning**: Declaration of syntax_plugin_nbsp :: render ($ aFormat, & $ aRenderer, $ aData) should be compatible with DokuWiki_Syntax_Plugin :: render ($ format, Doku_Renderer $ renderer, $ data) in

**/homepages/13/d110133045/htdocs/foerstemann/dokuwiki/lib/plugins/nbsp/syntax.php**on line

**170**

**Warning**: Declaration of syntax_plugin_mathjax_protecttex :: render ($ mode, & $ renderer, $ data) should be compatible with DokuWiki_Syntax_Plugin :: render ($ format, Doku_Renderer $ renderer, $ data) in

**/homepages/13/d110133045/htdocs/foerstemann/dokuwiki/lib/plugins/mathjax/syntax/protecttex.php**on line

**141**

Zooms into the amount of Mandelbrot are legion^{1)}, the logarithm log (x) is well known and the complex logarithm log (z) is notorious^{2)}.

The Mandelbrot set is part of the complex number plane. The complex logarithm maps the complex number level to itself. The following is about the image of the amount of Mandelbrot under the log (z) mapping and its application to Mandelbrot zooms.

To put it somewhat imprecisely, the complex logarithm corresponds in principle to a change in coordinates from Cartesian coordinates to polar coordinates in the complex plane of numbers.

### aims

- Utilization of an optimal interpolation grid with Mandelbrotzooms (up to 100 times fewer grid points with similar image quality)
- Utilization of symmetries of the Mandelbrot set to reduce the computational effort (the symmetry breaks are more beneficial for aesthetics)
- Almost any level of antialiasing in the critical central area of the zoom
- Interactive Mandelbrot zoomer based on flex shaders
^{3)}

### The log (z) transformation

Here are briefly some properties of the complex logarithm. The properties are studied using the example of the amount of Mandelbrot.

Consider a fixed center zoom b. The complex number plane z = x + iy is then mapped with f (z) = log (z - b). Figure 1 shows a section of the edge area of the Mandelbrot set in the z-plane (circle) and in the log (z) -plane (background). The green circle corresponds to the green left edge of the picture. The green wedge corresponds to the green rectangle.

A clearer picture of the effect of the log (z) transformation can be obtained by viewing the zoom animation:

- A zoom in the z-plane corresponds to a shift in the x-direction in the log (z) -plane.
- A rotation in the z-plane corresponds to a shift in the y-direction in the log (z) -plane. The upper edge of Figure 1 fits seamlessly with the lower edge of the image. The distance between the edges is $ 2 {\ pi} i $.
- There is hardly any local difference between the image and the original. This is a typical property of conformal mapping
^{4)}, which include the complex logarithm.

These properties of the complex logarithm are known from mathematics. Here they can be guessed without term reformulations.

### Symmetry and symmetry breaking

Here are briefly some properties of the amount of Mandelbrot. The properties are studied using the example of the complex log (z) transformation.

As the zoom depth increases, there are areas in the z-plane with ever greater radial symmetry. In the log (z) plane this corresponds to a translation symmetry in the y direction. This can be seen nicely in the above film from 1:30 to 2:20. Figure 2 shows an example of a typical 8-symmetry.

If the symmetry is completely broken (1-symmetry), a Mandelbrot set appears again. If the symmetry is only partially broken (on 2-, 4- or 2^{n}-Symmetry), this is how Julia fractals appear.

The symmetry calculations follow a fixed pattern. For example, the zoom depth is halved from partial calculation to partial calculation. By using this behavior one can force the occurrence of a 1-symmetry calculation or a Mandelbrot set for a certain zoom depth. This made it possible, for example, to score a 10^{1000}-Zoom with an amount of Mandelbrot to create exactly at the end^{5)}.

### The interpolation grid

The properties of the Mandelbrot set and the log (z) transformation just presented complement each other. Using the log (z) transformation results in an efficient grid for calculating the Mandelbrot set, which is briefly presented below.

The right side of Figure 3 shows a log (z) raster that has been transformed back into the z-plane. After the above explanations it should come as no surprise that columns of the log (z) grid form concentric circles in the z-plane. With a zoom, the pixels on the concentric circles are optimally "recycled". The distance between the concentric circles should be roughly the same as the distance between the pixels on a circle.

The left part in Figure 3 shows how existing symmetries can be used. Using pixel recycling and symmetry, only the orange marked points have to be recalculated for each image.

In Figure 3, the concentric circles consist of 128 points. Values from 400 are useful for Mandelbrot zooms. So only 400 / n pixels have to be calculated per image with n symmetry. Compare that with the corresponding 800 x 640, i.e. a good 400,000 pixels! Other interpolations may look a little better than the brute force approach.

In the outer areas of the image, the spacing of the grid becomes larger and larger. However, the speed of the pixels also increases due to the zoom. The resulting blurring can therefore be passed as motion blur.

In the middle of the image - where the gaze usually rests - the grid points are practically as close as you want: Anitaliasing is possible until the end - and that without significant additional effort.

Using this technique, I created some deep zooms with Mathematica:

link | Zoom depth | Pixels per circle | description |
---|---|---|---|

youtube | 10^{1000} | 400 | 2D zoom |

youtube | 10^{333} | 1024 | log (z) zoom |

youtube | 10^{333} | 400 | 2D zoom |

youtube | 10^{333} | 1024 | 3D / relief zoom |

### Interactive Mandelbrot zoomer

A rectangular part from the log (z) plane is therefore a very efficient way of statically recording information from a zoom in an image. If one lets the inverse transformation e^{z} done by the GPU, so you can control zoom and rotation in real time.

With Pixelbender you can create appropriate shaders / kernels for Flex ^{6)} that can be executed quickly enough on the appropriate hardware. I implemented two zooms with this technology and uploaded them for people who would like to run the downloaded code directly (X) and without a false bottom on their GPU:

A typical shader looks like this:

- Is Hoda Muthana's son an American citizen
- How does the Junocam work on JUNO
- What makes silicon a semiconductor material
- Are skydiving training credits transferable
- What is the population of Maui
- Where can I get egg liqueurs in Dubai
- How do I enjoy life 2
- What natural disasters occurred in Vancouver earthquakes
- Hypersexuality is a potential symptom of ADHD
- Is DrMentors Online Medical PG Coaching good
- Is there a fragrance database
- When were the CVs created for the first time?
- Can we make money online without advertising
- What is an ester test in organic chemistry
- What are some cheap hotels in Murree
- Why do day traders use multiple displays
- How can I vote early in Illinois?
- How many medical universities offer a scholarship
- Franchise fees are reported on 1099
- How did you learn to solve problems
- What is AngularJS used for?
- Do protein preparations damage our health
- What do you do with obsessive thoughts
- Is trade a competitive field