{"id":243,"date":"2011-09-25T12:55:30","date_gmt":"2011-09-25T10:55:30","guid":{"rendered":"http:\/\/jaran.de\/goodbits\/?p=243"},"modified":"2011-09-26T19:26:58","modified_gmt":"2011-09-26T17:26:58","slug":"so-what-is-a-buddhabrot-anyway","status":"publish","type":"post","link":"http:\/\/jaran.de\/goodbits\/2011\/09\/25\/so-what-is-a-buddhabrot-anyway\/","title":{"rendered":"So what is a Buddhabrot anyway?"},"content":{"rendered":"<p><a title=\"a Buddhabrot\" href=\"http:\/\/jaran.de\/files\/other\/20110924_buddhabrot\/buddhabrot.jpg\"><img src=\"http:\/\/jaran.de\/files\/other\/20110924_buddhabrot\/buddhabrot_small.jpg\" alt=\"a Buddhabrot\" \/><\/a><br \/>\n(click picture to enlarge)<br \/>\nTrying to put interesting pictures on my walls, I recently started experimenting with rendering Buddhabrots. While those witnessing my experiments uttered some &#8220;wows&#8221; and &#8220;beautifuls&#8221; (and some &#8220;uhm aha?&#8221;) nobody seemed to know exactly what those pictures actually show and so I decided to write this article to point people to instead of explaining it all over again \ud83d\ude42<br \/>\n<!--more--><\/p>\n<h2>Complex numbers<\/h2>\n<p>Fractals like the Mandelbrot and Buddhabrot are rendered using <strong>Complex numbers<\/strong>. So what are those? Everyone knows <strong>Natural numbers<\/strong>: 0, 1, 2, 3, 4, &#8230; With those numbers comes a set of operations like addition and multiplication. However, subtraction poses a problem: 2-4 has no result in the set of natural numbers since there are no negative numbers in that set!<br \/>\nThe set of <strong>Integers<\/strong> (&#8230;, -3, -2, -1, 0, 1, 2, 3, &#8230;) of which the natural numbers are a subset doesn&#8217;t have this problem with subtraction but it does have one with division. There are combinations of integers, which if divided by each other have no result in the set of integers like 5\/2, for example. If we extend the set of integers to allow for any division of integers (all but the division by zero), we arrive at the set of <strong>Rational numbers<\/strong>, which is the set of all fractions. Notice that fractions are numbers that consist of two parts: a numerator and a denominator. Operations like addition, subtraction, multiplication and division have to be properly defined to work consistently on those two-element numbers and hopefully you remember the following rules for addition and multiplication from school:<br \/>\n<img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cfrac%7Ba%7D%7Bb%7D+%2B+%5Cfrac%7Bc%7D%7Bd%7D+%3D+%5Cfrac%7Ba+%5Ccdot+d+%2B+c+%5Ccdot+b%7D%7Bb+%5Ccdot+d%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\frac{a}{b} + \\frac{c}{d} = \\frac{a \\cdot d + c \\cdot b}{b \\cdot d}' title='\\frac{a}{b} + \\frac{c}{d} = \\frac{a \\cdot d + c \\cdot b}{b \\cdot d}' class='latex' \/> for addition and <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cfrac%7Ba%7D%7Bb%7D+%5Ccdot+%5Cfrac%7Bc%7D%7Bd%7D+%3D+%5Cfrac%7Ba+%5Ccdot+c%7D%7Bb+%5Ccdot+d%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\frac{a}{b} \\cdot \\frac{c}{d} = \\frac{a \\cdot c}{b \\cdot d}' title='\\frac{a}{b} \\cdot \\frac{c}{d} = \\frac{a \\cdot c}{b \\cdot d}' class='latex' \/> for multiplication<br \/>\nToo abstract? Just compare with these examples:<br \/>\n<img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cfrac%7B1%7D%7B2%7D+%2B+%5Cfrac%7B3%7D%7B4%7D+%3D+%5Cfrac%7B1+%5Ccdot+4+%2B+3+%5Ccdot+2%7D%7B2+%5Ccdot+4%7D+%3D+%5Cfrac%7B4+%2B+6%7D%7B8%7D+%3D+%5Cfrac%7B10%7D%7B8%7D+%3D+%5Cfrac%7B5%7D%7B4%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\frac{1}{2} + \\frac{3}{4} = \\frac{1 \\cdot 4 + 3 \\cdot 2}{2 \\cdot 4} = \\frac{4 + 6}{8} = \\frac{10}{8} = \\frac{5}{4}' title='\\frac{1}{2} + \\frac{3}{4} = \\frac{1 \\cdot 4 + 3 \\cdot 2}{2 \\cdot 4} = \\frac{4 + 6}{8} = \\frac{10}{8} = \\frac{5}{4}' class='latex' \/> and <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cfrac%7B1%7D%7B2%7D+%5Ccdot+%5Cfrac%7B3%7D%7B4%7D+%3D+%5Cfrac%7B1+%5Ccdot+3%7D%7B2+%5Ccdot+4%7D+%3D+%5Cfrac%7B3%7D%7B8%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\frac{1}{2} \\cdot \\frac{3}{4} = \\frac{1 \\cdot 3}{2 \\cdot 4} = \\frac{3}{8}' title='\\frac{1}{2} \\cdot \\frac{3}{4} = \\frac{1 \\cdot 3}{2 \\cdot 4} = \\frac{3}{8}' class='latex' \/><\/p>\n<p>But again, there are operations on this set of numbers that have no solution in the rational numbers. <a href=\"http:\/\/en.wikipedia.org\/wiki\/Square_root_of_2\" title=\"Wikipedia - Square root of 2\" target=\"_blank\">There is for example no fraction that can represent the square root of 2.<\/a> While that is not a problem in the real and practical world around us &#8211; everything you can count and divide can be represented with fractions aka rational numbers &#8211; mathematicians came up with the set of <strong>Real numbers<\/strong> that also allows for numbers like the square root of 2.<\/p>\n<p>Enough? No! Being able to take square roots of 2 is nice but what about the square root of -2? Or just -1? Unless you attended a higher maths course in school something like <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Csqrt%7B-1%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\sqrt{-1}' title='\\sqrt{-1}' class='latex' \/> was either something that made you recheck your calculations or write down &#8220;no solution&#8221;. Also, the solution of most pocket calculators when fed with the square root of a negative numbers is &#8220;error&#8221;.<br \/>\nTime for <strong>Imaginary units<\/strong> and <strong>Complex numbers<\/strong>! Just like governments coming up with new forms of taxes when money runs out, mathematicians come up with new numbers when the existing ones don&#8217;t suffice. In this case, there is just one addition though: the imaginary unit <img src='http:\/\/s0.wp.com\/latex.php?latex=i&#038;bg=T&#038;fg=000000&#038;s=0' alt='i' title='i' class='latex' \/>. Just define <img src='http:\/\/s0.wp.com\/latex.php?latex=i%5E2+%3A%3D+-1&#038;bg=T&#038;fg=000000&#038;s=0' alt='i^2 := -1' title='i^2 := -1' class='latex' \/> and you can take square roots of negative numbers: <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Csqrt%7B-1%7D+%3D+i%2C+%5Csqrt%7B-2%7D+%3D+i+%5Ccdot+%5Csqrt%7B2%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\sqrt{-1} = i, \\sqrt{-2} = i \\cdot \\sqrt{2}' title='\\sqrt{-1} = i, \\sqrt{-2} = i \\cdot \\sqrt{2}' class='latex' \/> and so on.<br \/>\nComplex numbers are Real numbers amended by the imaginary unit and just like fractions they consist of two elements. A real part and an imaginary part and so every complex number <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/> can be written as a sum of a real and an imaginary part: <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D+%3D+a+%2B+b+%5Ccdot+i&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c} = a + b \\cdot i' title='\\mathbf{c} = a + b \\cdot i' class='latex' \/>. Notice that <img src='http:\/\/s0.wp.com\/latex.php?latex=a&#038;bg=T&#038;fg=000000&#038;s=0' alt='a' title='a' class='latex' \/> and <img src='http:\/\/s0.wp.com\/latex.php?latex=b&#038;bg=T&#038;fg=000000&#038;s=0' alt='b' title='b' class='latex' \/> are real numbers whereas the <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/> is a complex one which I have written in bold face to distinguish between real and complex numbers. <img src='http:\/\/s0.wp.com\/latex.php?latex=i&#038;bg=T&#038;fg=000000&#038;s=0' alt='i' title='i' class='latex' \/> is of course the imaginary unit as explained above.<br \/>\nSo how does one add and multiply two complex numbers? That&#8217;s actually normal algebra! Let&#8217;s consider two complex numbers <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bx%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{x}' title='\\mathbf{x}' class='latex' \/> and <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7By%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{y}' title='\\mathbf{y}' class='latex' \/> with their respective real and imaginary parts <img src='http:\/\/s0.wp.com\/latex.php?latex=a%2C+b&#038;bg=T&#038;fg=000000&#038;s=0' alt='a, b' title='a, b' class='latex' \/> and <img src='http:\/\/s0.wp.com\/latex.php?latex=r%2C+s&#038;bg=T&#038;fg=000000&#038;s=0' alt='r, s' title='r, s' class='latex' \/> such that <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bx%7D+%3D+a+%2B+b+%5Ccdot+i&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{x} = a + b \\cdot i' title='\\mathbf{x} = a + b \\cdot i' class='latex' \/> and <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7By%7D+%3D+r+%2B+s+%5Ccdot+i&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{y} = r + s \\cdot i' title='\\mathbf{y} = r + s \\cdot i' class='latex' \/>.<br \/>\nThen we have that <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bx%7D+%2B+%5Cmathbf%7By%7D+%3D+%28a+%2B+b+%5Ccdot+i%29+%2B+%28r+%2B+s+%5Ccdot+i%29+%3D+%28a+%2B+r%29+%2B+%28b+%2B+s%29+%5Ccdot+i&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{x} + \\mathbf{y} = (a + b \\cdot i) + (r + s \\cdot i) = (a + r) + (b + s) \\cdot i' title='\\mathbf{x} + \\mathbf{y} = (a + b \\cdot i) + (r + s \\cdot i) = (a + r) + (b + s) \\cdot i' class='latex' \/> or in other words: The sum of two complex numbers is the sum of their real parts and their imaginary parts respectively. Example: <img src='http:\/\/s0.wp.com\/latex.php?latex=%281+%2B+2+%5Ccdot+i%29+%2B+%283+%2B+4+%5Ccdot+i%29+%3D+%281+%2B+3%29+%2B+%282+%2B+4%29+%5Ccdot+i+%3D+%284+%2B+6+%5Ccdot+i%29&#038;bg=T&#038;fg=000000&#038;s=0' alt='(1 + 2 \\cdot i) + (3 + 4 \\cdot i) = (1 + 3) + (2 + 4) \\cdot i = (4 + 6 \\cdot i)' title='(1 + 2 \\cdot i) + (3 + 4 \\cdot i) = (1 + 3) + (2 + 4) \\cdot i = (4 + 6 \\cdot i)' class='latex' \/><\/p>\n<p>Multiplication is just as easy but you have to remember that <img src='http:\/\/s0.wp.com\/latex.php?latex=i%5E2+%3D+-1&#038;bg=T&#038;fg=000000&#038;s=0' alt='i^2 = -1' title='i^2 = -1' class='latex' \/> in order to understand the following chain of equations:<br \/>\n<img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bx%7D+%5Ccdot+%5Cmathbf%7By%7D+%3D+%28a+%2B+b+%5Ccdot+i%29+%5Ccdot+%28r+%2B+s+%5Ccdot+i%29+%3D+a+%5Ccdot+r+%2B+a+%5Ccdot+s+%5Ccdot+i+%2B+b+%5Ccdot+i+%5Ccdot+r+%2B+b+%5Ccdot+i+%5Ccdot+s+%5Ccdot+i+%3D+a+%5Ccdot+r+%2B+a+%5Ccdot+s+%5Ccdot+i+%2B+b+%5Ccdot+i+%5Ccdot+r+-+b+%5Ccdot+s+%3D+%28a+%5Ccdot+r+-+b+%5Ccdot+s%29+%2B+%28a+%5Ccdot+s+%2B+b+%5Ccdot+r+%29+%5Ccdot+i+&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{x} \\cdot \\mathbf{y} = (a + b \\cdot i) \\cdot (r + s \\cdot i) = a \\cdot r + a \\cdot s \\cdot i + b \\cdot i \\cdot r + b \\cdot i \\cdot s \\cdot i = a \\cdot r + a \\cdot s \\cdot i + b \\cdot i \\cdot r - b \\cdot s = (a \\cdot r - b \\cdot s) + (a \\cdot s + b \\cdot r ) \\cdot i ' title='\\mathbf{x} \\cdot \\mathbf{y} = (a + b \\cdot i) \\cdot (r + s \\cdot i) = a \\cdot r + a \\cdot s \\cdot i + b \\cdot i \\cdot r + b \\cdot i \\cdot s \\cdot i = a \\cdot r + a \\cdot s \\cdot i + b \\cdot i \\cdot r - b \\cdot s = (a \\cdot r - b \\cdot s) + (a \\cdot s + b \\cdot r ) \\cdot i ' class='latex' \/>. Again an example, ommiting the intermediate steps: <img src='http:\/\/s0.wp.com\/latex.php?latex=%281+%2B+2+%5Ccdot+i%29+%5Ccdot+%283+%2B+4+%5Ccdot+i%29+%3D+%281+%5Ccdot+3+-+2+%5Ccdot+4%29+%2B+%281+%5Ccdot+4+%2B+2+%5Ccdot+3+%29+%5Ccdot+i+%3D+%28-5+%2B+10+%5Ccdot+i%29&#038;bg=T&#038;fg=000000&#038;s=0' alt='(1 + 2 \\cdot i) \\cdot (3 + 4 \\cdot i) = (1 \\cdot 3 - 2 \\cdot 4) + (1 \\cdot 4 + 2 \\cdot 3 ) \\cdot i = (-5 + 10 \\cdot i)' title='(1 + 2 \\cdot i) \\cdot (3 + 4 \\cdot i) = (1 \\cdot 3 - 2 \\cdot 4) + (1 \\cdot 4 + 2 \\cdot 3 ) \\cdot i = (-5 + 10 \\cdot i)' class='latex' \/><br \/>\nIf algebra wasn&#8217;t your favourite in school all you need to know about complex numbers (as needed for the explanation of a Buddhabrot fractal) is that even while they consist of two parts (real and imaginary) they can be added, multiplied (subtracted and divided) by using the known (and easy) operations of addition, multiplication, subtraction and division on real numbers.<\/p>\n<p>Now that complex numbers and the basic operations on them are no mystery anymore, we can look at how they are used in rendering fractals.<\/p>\n<h2>The Mandelbrot set<\/h2>\n<p>Since complex numbers have two components a single complex number can be represented as a point on a two-dimensional plane (take a look at this illustration on Wikipedia: <a href=\"http:\/\/en.wikipedia.org\/wiki\/File:Complex_number_illustration.svg\" title=\"Complex number illustration\" target=\"_blank\"><\/a>).<\/p>\n<p>Now let&#8217;s take a look at the following (complex) function: <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_%7Bn%2B1%7D+%3A%3D+%7B%5Cmathbf%7Bz%7D_n%7D%5E2+%2B+%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' title='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' class='latex' \/> where <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}' title='\\mathbf{z}' class='latex' \/> and <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/> are complex numbers. Additionally we define that <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_0&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_0' title='\\mathbf{z}_0' class='latex' \/> is <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7B0%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{0}' title='\\mathbf{0}' class='latex' \/> that is both, the real and the imaginary part are 0.<br \/>\nWhat does that mean? For any complex number <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/> we get a sequence of complex numbers <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_0%2C+%5Cmathbf%7Bz%7D_1%2C+%5Cmathbf%7Bz%7D_2%2C+%5Cmathbf%7Bz%7D_3&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_0, \\mathbf{z}_1, \\mathbf{z}_2, \\mathbf{z}_3' title='\\mathbf{z}_0, \\mathbf{z}_1, \\mathbf{z}_2, \\mathbf{z}_3' class='latex' \/>, &#8230; as defined by the &#8220;recursion&#8221; above. In each step you take the result of the previous step, square it and add some complex number <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/>. You take the result, square it and again add <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/>&#8230;<br \/>\nInstead of complex numbers we can also talk about points on the two-dimensional (complex) plane. So what can happen for any given point <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/> when one does iterate repeatedly and calculates all the <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_n&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_n' title='\\mathbf{z}_n' class='latex' \/>? Basically two things: the sequence of <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_n&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_n' title='\\mathbf{z}_n' class='latex' \/> can be bounded which means that you however often you iterate (however big the n becomes) the resulting points will always lie in some area on the two-dimensional plane. Or the sequence is unbounded which means that the <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}' title='\\mathbf{z}' class='latex' \/>-points tend to go further and further away from the origin and that you can define no area in such a way that it will contain all the points with none of the points finally being outside of that area.<\/p>\n<p>Now comes the <strong>Mandelbrot set<\/strong>: The Mandelbrot set is the set of all complex numbers (points) <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/> for which the sequence <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_%7Bn%2B1%7D+%3A%3D+%7B%5Cmathbf%7Bz%7D_n%7D%5E2+%2B+%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' title='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' class='latex' \/> with <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_0+%3D+%5Cmathbf%7B0%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_0 = \\mathbf{0}' title='\\mathbf{z}_0 = \\mathbf{0}' class='latex' \/> is bounded.<br \/>\nIt&#8217;s that simple \ud83d\ude42 Just take a look at all the pictures of the <a href=\"http:\/\/en.wikipedia.org\/wiki\/Mandelbrot_set\" title=\"Wikipedia - Mandelrbrot set\" target=\"_blank\">Wikipedia Mandelbrot set article<\/a>: The Mandelbrot set is the black area and the beauty of the Mandelbrot renderings comes from the colourization of those points which are just outside the boundary of the Mandelbrot set.<br \/>\nIn this case the colour depends on the number of iterations that were necessary until the recursion function <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_%7Bn%2B1%7D+%3A%3D+%7B%5Cmathbf%7Bz%7D_n%7D%5E2+%2B+%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' title='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' class='latex' \/> created values for <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}' title='\\mathbf{z}' class='latex' \/> which lie outside some previously specified region.<\/p>\n<h2>The Buddhabrot set<\/h2>\n<p>Knowing what the Mandelbrot set is one can easily explain the Buddhabrot picture from the top of this article. For that, we look at those points, which are <strong>not<\/strong> in the Mandelbrot set. Remember that those are the points <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{c}' title='\\mathbf{c}' class='latex' \/> for which the continued iteration of <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_%7Bn%2B1%7D+%3A%3D+%7B%5Cmathbf%7Bz%7D_n%7D%5E2+%2B+%5Cmathbf%7Bc%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' title='\\mathbf{z}_{n+1} := {\\mathbf{z}_n}^2 + \\mathbf{c}' class='latex' \/> leads to <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}' title='\\mathbf{z}' class='latex' \/>-points that are further and further away from the origin. However, how do those values for <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}' title='\\mathbf{z}' class='latex' \/> look like, before they &#8220;fly away&#8221; out of any bounds? The answer: they look like a Buddhabrot \ud83d\ude09<\/p>\n<p>To create a Buddhabrot you take values for which the Mandelbrot recursion is unbounded. Then you iterate them over and over through the Mandelbrot recursion and for each step (for each of the <img src='http:\/\/s0.wp.com\/latex.php?latex=%5Cmathbf%7Bz%7D_n&#038;bg=T&#038;fg=000000&#038;s=0' alt='\\mathbf{z}_n' title='\\mathbf{z}_n' class='latex' \/>) you draw a point on your picture. If there is already a point, you draw a slightly brighter point. You repeat this over and over again for different starting values and in the end you get a Buddhabrot.<\/p>\n<p>How this works in detail and how one does know if the recursion is bounded or unbounded is stuff for another article. Be patient and come back to check \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(click picture to enlarge) Trying to put interesting pictures on my walls, I recently started experimenting with rendering Buddhabrots. While those witnessing my experiments uttered some &#8220;wows&#8221; and &#8220;beautifuls&#8221; (and some &#8220;uhm aha?&#8221;) nobody seemed to know exactly what those &hellip;<\/p>\n<p class=\"read-more\"><a href=\"http:\/\/jaran.de\/goodbits\/2011\/09\/25\/so-what-is-a-buddhabrot-anyway\/\">Read more &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0},"categories":[5,8],"tags":[],"_links":{"self":[{"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/posts\/243"}],"collection":[{"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/comments?post=243"}],"version-history":[{"count":20,"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/posts\/243\/revisions"}],"predecessor-version":[{"id":272,"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/posts\/243\/revisions\/272"}],"wp:attachment":[{"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/media?parent=243"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/categories?post=243"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/jaran.de\/goodbits\/wp-json\/wp\/v2\/tags?post=243"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}