1 Die Mandelbrotmenge In diesem Abschnitt wollen wir mathematische Aspekte der sogenannten Mandelbrotmenge beleuchten, die wir im Folgenden mit M bezeichnen wollen. 1 Ihr Name ist ihrem Entdecker Benoît Mandelbrot gewidmet, der im Jahre 1980 zum ersten Mal eine optische Darstellung der Mandelbrotmenge mit Hilfe eines Rechners erzeugen konnte. Die Grundlage zur Denition der Mandelbrotmenge ist die Rekursion Zk+1 = Zk2 + c , für Z0 = 0 (1.1) c ∈ C. Die Frage nach Konvergenz oder Divergenz dieser Folge, deren erste Folgenglieder gegeben sind Abbildung 1: Benoît Mandelbrot durch Z0 = 0, Z1 = c, Z3 = (c + c) + c, 2 Z2 = c2 + c, (1.2) Z4 = . . . , 2 führt auf die Denition der Mandelbrotmenge: M := {c ∈ C : Die durch (1.1) denierte Folge (Zk ) ist beschränkt} (1.3) Heutige Bildgebungsverfahren ermöglichen schöne Visualisierungen dieser Menge: (a) Mandelbrotmenge (b) Ausschnitt 1 (c) Ausschnitt 2 Die Mandelbrotmenge ist jeweils durch die schwarz eingefärbten Bereiche gegeben, d.h. alle komplexen Zahlen c, für die die Folge (1.1) beschränkt ist, sind in den oben abgebil- deten Ausschnitten der komplexen Zahlenebene 1 a + ib ∈ C : −2.2 < a < 0.8, −1.3 < b < 1.3 Benoît Mandelbrot, geb. 1924, Mathematiker französisch-polnischer Herkunft, Träger zahlreicher Auszeichnungen mit Beiträgen in der fraktalen Geometrie 1 schwarz gefärbt. Die übrigen Farbtöne haben mit der Menge selbst nichts zu tun; sie geben lediglich an, wie stark die Folge in den entsprechenden Punkten gegen Unendlich strebt. Beispiel: Der Spezialfall reeller Zahlen c Zt+1 = 1 . Alle der logistischen Gleichung für 0 ≤ λ ≤ 4 entstammende 4 1 Folgen sind beschränkt, sodass der Abschnitt [−2, ] der reellen Zahlengerade zu M 4 Gemäÿ Übungsblatt 5 liefert die logistische Gleichung Rekursionen der Form Zt2 + c für −2 ≤ c ≤ gehören muss. 1.1 Beschränktheit: M ⊂ {c ∈ C : |c| ≤ 2} Der Betrag einer komplexen Zahl Mit |c| bezeichnet man den sogenannten Betrag einer komplexen Zahl er ist deniert durch |a + ib| := p a2 + b2 und (a, b ∈ R) |c| misst daher nach dem Satz des Pythagoras die Länge (0, 0) zum Punkt a + ib in der komplexen Zahlenebene: Die reelle Zahl Ursprung c = a + ib der Strecke vom a + ib √ a2 + b2 b a Abbildung 2: Für komplexe Zahlen z1 , z2 |a + ib| = √ a2 + b2 kann man die folgenden drei Eigenschaften beweisen, wobei die Aussagen 1./2. sowie 3./4. zueinander äquivalent sind: 1. z1 z2 = 2. |z1 · z2 | = |z1 | · |z2 | 3. |z1 + z2 | ≤ |z1 | + |z2 | |z1 | |z2 | für z2 6= 0 2 4. |z1 | ≥ |z1 + z2 | − |z2 | Die dritte Ungleichung nennt man Dreiecksungleichung. Im Grunde beinhaltet sie die Aussage, dass die Gerade die kürzeste Verbindung zwischen zwei Punkten ist. Der Bezug zu einem Dreieck ergibt sich aus folgender Zeichnung: |z1 + z2 | |z2 | |z1 | Abbildung 3: Dreiecksungleichung Beweis der Behauptung: Wir haben zu zeigen: M ⊂ {c ∈ C : |c| ≤ 2}. M ⊂ {c ∈ C : |c| ≤ 2} ⇐⇒ Wenn c Element der Mandelbrotmenge ist, dann gilt ⇐⇒ Wenn |c| > 2, ⇐⇒ Wenn |c| > 2, brauchen wir für |c| > 2 Wegen dann ist c |c| ≤ 2 kein Element der Mandelbrotmenge dann ist die Folge aus (1.1) unbeschränkt lediglich die Unbeschränktheit der Folge zeigen. Ein erster Schritt ist die folgende Proposition: Proposition 1.1. Sei |c| > 2. Dann besitzt die durch Gleichung (Zk ) die Eigenschaft (1.1) denierte Folge |c| = |Z1 | < |Z2 | < |Z3 | < |Z4 | < . . . Beweis: |Zk+1 | > |Zk | ≥ |c| und beweisen Z1 = c und somit |Z1 | = |c| sowie Wir behaupten also k=1 erhalten wir mit vollständiger Induktion. Für |Z2 | |c2 + c| = = |c + 1| ≥ |c| − 1 > 1 |Z1 | |c| und die Behauptung für k=1 ist bewiesen. 3 k ∈ N. Es gelte nun die Behauptung für Dann gilt |Zk+1 | > |Zk | ≥ |c| und 2 2 |Zk+2 | = |Zk+1 + c| ≥ |Zk+1 | − |c| = |Zk+1 |2 − |c| |Zk+1 |≥|c|>2 ≥ |Zk+1 |≥|c| ≥ 2|Zk+1 | − |c| |Zk+1 | + |c| − |c| = |Zk+1 | und es folgt die Behauptung für k + 1. Wie wissen also, dass die Abstände zur 0 mit jedem Folgeglied wachsen, doch das reicht nicht aus, um auf Unbeschränktheit zu schlieÿen, wie das folgende Beispiel zeigt: Die Gültigkeit der Ungleichung |Zk | ≥ |Z2 | + (2k−2 − 1) · (|Z2 | − |c|) | {z } für alle k≥2 >0 hingegen würde zeigen, dass |Zk | für groÿe k über alle Maÿen wächst. Sei |c| > 2. Dann erfüllt die durch Gleichung (Zk ) die Ungleichung Proposition 1.2. |Zk | ≥ |Z2 | + (2k−2 − 1) · (|Z2 | − |c|) (1.1) denierte Folge für alle k ≥ 2. Beweis: Der Induktionsanfang zur obigen Behauptung, d.h. der Fall 4 k = 2, ist klar wegen |Z2 | ≥ |Z2 |. Nehmen wir also an, die Behauptung sei für ein k≥2 gezeigt. Dann folgt |Zk+1 | = |Zk+1 − c + c| ≥ |Zk+1 − c| − |c| = |Zk |2 − |c| |Zk |>2 2|Zk | − |c| ≥ 2 · |Z2 | + (2k−2 − 1) · (|Z2 | − |c|) − |c| > = 2k−1 |Z2 | − (2k−1 − 2)|c| − |c| = |Z2 | + (2k−1 − 1)(|Z2 | − |c|) , was zu zeigen war. Somit ist die Folge (Zk ) unbeschränkt und die Behauptung ist bewiesen. 1.2 Algorithmus Wir wollen uns nun mit der Implementierung der Mandelbrotmenge beschäftigen, die den mathematischen Begri Beschränktheit einer Folge in ein Bild umsetzen muss. Wir haben bereits gesehen, dass wir uns beim Visualisieren der Mandelbrotmenge auf den Bereich {c ∈ C : |z| ≤ 2} beschränken dürfen. Wir werden im Folgenden ein Kriterium beweisen, mit welchem wir zumindest die Unbeschränktheit der Folge für ein gegebenes c∈C mit |c| < 2 sicher nachweisen können. 1.2.1 Mathematische Aspekte Ein solches Kriterium ist gegeben durch die folgende Proposition Sei |c| ≤ 2 und die durch Zm mit |Zm | > 2. Dann gilt: Proposition 1.3. |Zm+n | ≥ (2 − (1.1) |c| n ) |Zm | |Zm | denierte Folge besitze eine Folgenglied für alle n ∈ N0 Beweis: n = 0 ist die Behauptung oensichtlich; wir nehmen darum an, die Behauptung sei n ∈ N beliebig gezeigt. Insbesondere gilt dann |Zm+n | ≥ |Zm | > 2, denn 2 − |Z|c|m | > 1. Für für 5 Es folgt: Z c m+n+1 |Zm+n+1 | = | · |Zm+n | · |Zm+n | = |Zm+n + Zm+n Zm+n |c| ≥ (|Zm+n | − ) · |Zm+n | |Zm+n | |c| ) · |Zm+n | ≥ (2 − |Zm | |c| |c| n ≥ (2 − ) · (2 − ) |Zm | |Zm | |Zm | |c| n+1 ) |Zm | = (2 − |Zm | 2− |c| |Zm | >1 n → ∞ und wir erhalten die Unbeschränktheit der Folge. Das Ziel lautet also, für ein c mit |c| ≤ 2 ein entsprechendes Folgenglied Zm mit |Zm | > 2 zu entdecken. In diesem Fall wissen wir, dass die Folge unbeschränkt ist und somit c kein Element der Mandelbrotmenge sein kann. Wegen wird die rechte Seite beliebig groÿe für 1.2.2 Programmiertechnische Aspekte Wir haben festgestellt, dass das erste Auftreten eines Folgeglieds |Zm | > 2 einen Wachs- tumsprozess in Gang setzt, der schlieÿlich zur Unbeschränktheit der Folge führt. Wir müssen bei der Umsetzung jedoch beachten, dass in einem Programm können nicht beliebig viele Folgenglieder auf diese Eigenschaft hin überprüft werden können, da die Schleife unendlich oft durchlaufen werden könnte. Wir müssen uns auf eine bestimmte Anzahl maxiter beschränken. Ein erster Java-Versuch 2 2 in Schwarz/Weiÿ könnte folgendermaÿen aussehen: Eine geeignete Klasse Complex zur Modellierung der komplexen Zahlen und eine Methode abs zur Berechnung des Betrags einer komplexen Zahl stehe hier zur Verfügung! 6 public Color color(final Complex c) { int maxiter = 256; Complex z = new Complex(0,0); int j=0; } //z=0 while ((j < maxiter) && abs(z) < 2.0){ j++; z = add(mult(z,z),c); } // Eintrittszeitpunkt ist j if (j==maxiter){ return Color.BLACK; // beschränkt else{ return Color.WHITE; // unbeschränkt } Möchten wir hingegen eine farbige Ausgabe, so lässt sich die Farbe in Abhängigkeit vom Eintrittszeitpunkt denieren, d.h. es muss der Eintrittszeitpunkt nicht nur die Information, ob j<maxiter j verwendet werden und j codierten gilt. Eine Methode, die den durch Grad der Divergenz berücksichtigt, lautet: 7 public Color color(final Complex c) { int maxiter = 256; Complex z = new Complex(0,0); int j=0; //z=0 while ((j < maxiter) && abs(z) < 2.0){ j++; z = add(mult(z,z),c); } final // final // final // } float colorvalue = (float)j / (float)maxiter; Farbwert, Wert zwischen 0 und 1 float saturation = (float) 0.8; Sättigung, Wert zwischen 0 und 1 float brightness = 1 - colorvalue*colorvalue; Helligkeit, Wert zwischen 0 und 1 return Color.getHSBColor(colorvalue, saturation, brightness); } Durch diese Methode wird eine farbige Visualierung der Mandelbrotmenge gewährleistet. Die sehr technische und Java-spezische Implementierung der übrigen Funktionen etwa das Anmalen mit den obigen Farben oder das Zoomen ndet sich im zugehörigen Quelltext, der auf der Seite http://www.mathematik.uni-karlsruhe.de/mi1plum/~mandel/seite/schnupperkurs zur Verfügung gestellt wird. Die Fakultät für Mathematik bedankt sich für Ihr reges Interesse in der Honung auf ein baldiges Wiedersehen. 8