gekipptequadrate.de
Die Mandelbrotmenge ist eines der bekanntesten Fraktale.
Sie wird durch ein iteratives Verfahren im Bereich der komplexen Zahlen berechnet.
Im Folgenden gebe ich eine ausführliche Anleitung, die auch ohne komplexe Zahlen
auskommt. Die Methode lässt sich schon mit wenigen mathematischen
Kenntnissen nachvollziehen.
1. Der Anfang
Wir beginnen mit zwei beliebigen Zahlen, x0 und y0.
Die bilden das Zahlenpaar (x0,y0), das sich
als Punkt in einem Koordinatensystem abbilden lässt.
Beispiel: Wir wählen als Punkt (-2;1), d.h. x0=-2 und y0=1.
2. Die drei Berechnungen
Wir setzen jetzt x=x0 und y=y0, führen damit nacheinander
immer wieder die folgenden drei Berechnungen durch und betrachten jeweils das Ergebnis:
x1=x2-y2+x0
y1=2*x*y+y0
c=(x12+y12)0,5
Beispiel: Die Werte für x und y sind zunächst gleich unseren Ausgangswerten
x0=-2 und y0=1, also x=-2 und y=1.
Jetzt setzen wir diese vier Werte für x0, y0, x und y
in die ersten beiden Formeln ein:
x1=x2-y2+x0
x1=(-2)2-12-2
x1=4-1-2
x1=1
y1=2*x*y+y0
y1=2*(-2)*1+1
y1=-4+1
y1=-3
Die beiden Ergebnisse für x1 und y1 gehen in die dritte Formel ein:
c=(x12+y12)0,5
c=(12+(-3)2)0,5
c=100,5
c=3,16...
Wir haben nun drei Werte, nämlich je einen für x1, y1 und c.
3. Die Wiederholungen
Diese drei Berechnungen für x1, y1 und c können beliebig
oft wiederholt werden. Dazu nehmen wir die Ergebnisse für
x1 und y1 und setzen sie wiederum in dieselben
Formeln ein, und zwar anstelle von x und y.
Beispiel:
Unsere Zwischenergebnisse waren x1=1 und y1=-3. Diese
machen wir nun zu unseren neuen Werten für x und y, also x=1 und y=-3. Darüberhinaus brauchen
wir auch wieder unsere Ausgangswerte x0=-2 und y0=1. Alle vier Werte
setzen wir jetzt erneut in die beiden bekannten Formeln ein:
x1=x2-y2+x0
x1=12-(-3)2-2
x1=1-9-2
x1=-10
y1=2*x*y+y0
y1=2*1*(-3)+1
y1=-6+1
y1=-5
Wir haben jetzt zwei neue Werte für x1 und y1. Sie gehen
wieder in die dritte Formel ein:
c=(x12+y12)0,5
c=((-10)2+(-5)2)0,5
c=1250,5
c=11,18...
Insgesamt erhalten wir drei neue Werte für x1, y1 und c.
Das können wir beliebig oft wiederholen und beobachten,
wie sich dabei die Werte für c entwickeln.
Im Folgenden führen wir die Berechnung für vier verschiedene Ausgangspunkte durch,
und zwar jeweils mit drei Wiederholungen:
| Ausgangspunkte | ||||
| (x0;y0) | (-2; 1) | (-1; 1) | (-2; 0) | (-1; 0) |
| x=x0 | x=-2 | x=-1 | x=-2 | x=-1 |
| y=x0 | y=1 | y=1 | y=0 | y=0 |
| 1. Berechnung | ||||
| x1=x2-y2+x0 | x1=(-2)2-12-2 | x1=(-1)2-12-1 | x1=(-2)2-02-2 | x1=(-1)2-02-1 |
| x1=1 | x1=-1 | x1=2 | x1=0 | |
| y1=2*x*y+y0 | y1=2*(-2)*1+1 | y1=2*(-1)*1+1 | y1=2*(-2)*0+0 | y1=2*(-1)*0+0 |
| y1=-3 | y1=-1 | y1=0 | y1=0 | |
| c=(x12+y12)0,5 | c=(12+(-3)2)0,5 | c=(-12+(-1)2)0,5 | c=(22+(0)2)0,5 | c=(02+(0)2)0,5 |
| c=3,16... | c=1,41... | c=2 | c=0 | |
| 2. Berechnung | ||||
| x=x1 | x=1 | x=-1 | x=2 | x=0 |
| y=y1 | y=-3 | y=-1 | y=0 | y=0 |
| x1=x2-y2+x0 | x1=12-(-3)2-2 | x1=(-1)2-(-1)2-1 | x1=22-02-2 | x1=02-02-1 |
| x1=-10 | x1=-1 | x1=2 | x1=-1 | |
| y1=2*x*y+y0 | y1=2*1*(-3)+1 | y1=2*(-1)*(-1)+1 | y1=2*(2)*0+0 | y1=2*(0)*0+0 |
| y1=-5 | y1=3 | y1=0 | y1=0 | |
| c=(x12+y12)0,5 | c=((-10)2+(-5)2)0,5 | c=((-1)2+32)0,5 | c=(22+02)0,5 | c=((-1)2+02)0,5 |
| c=11,18... | c=3,16... | c=2 | c=1 | |
| 3. Berechnung | ||||
| x=x1 | x=-10 | x=-1 | x=2 | x=-1 |
| y=y1 | y=-5 | y=3 | y=0 | y=0 |
| x1=x2-y2+x0 | x1=(-10)2-(-5)2-2 | x1=(-1)2-(3)2-1 | x1=22-02-2 | x1=(-1)2-02-1 |
| x1=73 | x1=-9 | x1=2 | x1=0 | |
| y1=2*x*y+y0 | y1=2*(-10)*(-5)+1 | y1=2*(-1)*(3)+1 | y1=2*2*0+0 | y1=2*(-1)*0+0 |
| y1=101 | y1=-5 | y1=0 | y1=0 | |
| c=(x12+y12)0,5 | c=((73)2+(101)2)0,5 | c=((-9)2+(-5)2)0,5 | c=(22+02)0,5 | c=(02+02)0,5 |
| c=124,61... | c=10,29... | c=2 | c=0 |
Wie kommen nun die schönen Bilder der Mandelbrotmenge zustande?
Wir gehen zunächst wieder von unserem Koordinatensystem aus.
Eine Computergraphik besteht aus einzelnen Bildpunkten. Damit man die Bildentstehung
gut erkennen kann, sind in den folgenden Graphiken diese Bildpunkte zu Quadratflächen
vergrößert. Jeder Punkt in unserem Koordinatensystem,
für den c den Wert 2 nicht übersteigt,
wird schwarz gefärbt. Alle anderen erhalten eine bunte Farbe. Dabei kann man noch
unterscheiden, wieviele Rechenschritte es gedauert hat, bis c größer als 2 wurde, und
entsprechend verschiedene bunte Farben verwenden. In unserem Beispiel sehen wir, dass
der erste Punkt (-2;1) schon nach einem Rechendurchgang c=3,16... ergab, also größer als
2 wurde. Für den nächsten Punkt (-1;1) jedoch war zunächst c=1,41... . Erst beim zweiten
Rechendurchgang wurde c größer als 2, und zwar mit c=3,16... . In unserer Darstellung
können wir nun für diese beiden Fälle zwei verschiedene Farben vergeben, für den einen
z.B. blau, für den anderen rot. So entsteht die folgende Graphik:
Als nächstes erweitern wir unsere Darstellung, indem wir das betrachtete Gebiet etwas ausweiten und zwar entlang der x-Achse auf den Bereich von -3 bis 1 und auf der y-Achse von -1 bis 1. Wir färben einen Punkt wieder blau, sobald c größer als 2 wird. Nach dem ersten Rechendurchgang erhalten wir:
Nach dem zweiten Rechendurchgang, färben wir alle Punkte rot, bei denen c jetzt zum ersten Mal den Wert 2 überschritten hat. Wir erhalten:
Es folgen nun dieselben beiden Abbildungen, aber mit den Werten für c. Die erste Graphik zeigt alle Ergebnisse für c nach dem ersten Rechendurchgang, die zweite, die Ergebnisse nach dem zweiten Rechendurchgang:
Man erkennt jetzt deutlich, dass alle Punkte, für die c schon im ersten Durchgang größer als 2 waren, blau gefärbt wurden. Die Punkte für die c erst im zweiten Durchgang größer als 2 wurde, wurden rot gefärbt. Die verbleibenden Punkte bleiben schwarz.
Wir können die Darstellung weiter verfeinern, indem wir ein
engeres Raster für unsere Ausgangspunkte wählen. In den nächsten Abbildungen
haben die untersuchten Punkte entlang beider Achsen nur noch einen
Abstand von 0,5. Die Anzahl der Rechnungsdurchgänge ist von 2 auf 4 erhöht. Wir haben also
jetzt vier Graphiken, die die Größe von c nach dem 1., 2., 3. und 4. Rechnungsdurchgang
illustrieren. Die Farbwahl ist wieder abhängig davon, nach der wievielten
Wiederholung c größer als 2 wurde. Die Punkte, für die c bis zum Schluss kleiner oder gleich 2 sind,
sind schwarz.
Die Entwicklung der einzelnen Iterationsschritte in der komplexen Ebene kann man unter Fraktalexplosion verfolgen.
Inhalt
© 2006 Thomas P. Birkhoff