Die Mira-Abbildung, noch ein seltsamer Attraktor
Laut Herm19941 war die Gumowski-Mira-Abbildung das Tagesgespräch der IFIP-Konferenz von 1974 in Stockholm. Sie ist auch im Konferenzband2 publiziert und besitzt folgende Gleichung:
\[ \begin{aligned} x_{n+1} &= by_{n} + F(x_{n})\\ y_{n+1} &= x_{n} + F(x_{n+1}) \end{aligned} \]
Dabei ist \(F\) die Funktion
\[ \begin{aligned} F(x) &= ax - (1-a)\frac{2x^{2}}{1+x^{2}} \end{aligned} \]
oder in anderer Schreibweise:
\[ \begin{aligned} F(x) &= ax + 2(1-a)x^{2}(1+x^{2})^{-2} \end{aligned} \]
In einigen Quellen kommt auch noch ein Paramter \(c\) hinzu, den ich vorerst unberücksichtig lasse. Vielleicht wage ich mich in zukünfigen Beiträgen auch daran3.
Die Gumowski-Mira-Abbildung ist ein »seltsamer Attraktor« (Strange Attractor), ein Attraktor eines dynamischen Systems, das sich zwar chaotisch verhält, aber dennoch eine kompakte Menge ist, die das System nie verläßt.
Normalerweise werden die gefundenen Punkte der Abbildung als Pixel auf dem Monitor dargestellt. Auf heutigen Monitoren mit ihrer hohen Auflösung fallen diese Pixel aber so klein aus, daß sie mit dem bloßen Auge kaum wahrnehmbar sind. Daher habe ich in meinen mit TigerJython realisierten beiden Beispielen die gefundenen Punkte als Kreise mit dem Radius \(2\) zeichnen lassen und diesen sogar noch einen kleinen, schwarzen Rand spendiert. Dadurch heben sie sich nun deutlich vom (hellen) Hintergrund ab. Das gibt zwar keinen neuen Erkenntnisgewinn, aber mir gefällt es so.
Das erste Beispiel ist eine Abbildung mit den Parametern \(a=0.4\) und \(b=1.0\). Die Schleife wird 120.000 mal durchlaufen und als Skalierungsfaktoren zur Anpassung an die Fenstergröße habe ich diese Parameter gewählt:
Die zweite Abbildung ist auch unter dem Namen Fantastic Feather Fractal bekannt4 und besitzt die Parameter \(a=-0.48\) und \(b=0.93\). Da sie nach einer gewissen Anzahl von Iterationen auf einen Fixpunkt in der Mitte zuläuft, reichen hier 10.000 Schleifendurchläufe. Zur Anpassung an die Fenstergröße waren auch nur geringe Änderungen im Code notwendig:
Wie immer habe ich diese Parameter durch wildes Experimentieren herausbekommen. Nun aber den vollständigen Quellcode (für das Fantastische Feder-Fraktal):
# Mira-Abbildung (2): Fantastic Feather Fractal
import gpanel as gp
import colorsys
WIDTH = 640
HEIGHT = 480
radius = 2
# Parameter
a = -0.48
b = 0.93
hue = 0.0
gp.makeGPanel(gp.Size(WIDTH, HEIGHT))
gp.window(0, WIDTH, HEIGHT, 0)
gp.title("Mira-Abbildung (2): Fantastic Feather Fractal")
gp.bgColor(gp.makeColor(234, 218, 184))
def f(x):
return a*x - (1.0 - a)*((2*(x**2))/(1.0 + x**2))
x = 4.0
y = 0.0
for i in range(10000):
x1 = b*y + f(x)
y = -x + f(x1)
x = x1
# Skalierungsparameter für die Fenstergröße:
xx = 350 + x*26
yy = 280 - y*26
gp.move(xx, yy)
gp.setColor(gp.makeColor(0, 0, 0))
gp.circle(radius)
hue = (i%100)/100.0
col = colorsys.hsv_to_rgb(hue, 1.0, 1.0)
gp.setColor(col)
gp.fillCircle(radius)
print("I did it, Babe!")
Literatur
- Florian Freistetter: Best of Chaos: Der seltsame Attraktor, Science Blogs (Astrodicticum Simplex) vom 4. Februar 2015
- Dietmar Herrmann: Algorithmen für Chaos und Fraktale, Bonn (Addison-Wesley) 1994
- Clifford A. Pickover: Mazes for the Mind. Computers and the Unexpected, New York (St. Martin’s Press) 1992
- ders.: Chaos in Wonderland – Visual Adventures in a Fractal World, New York (St. Martin’s Press) 1994
Den Quellcode gibt es auch wieder in meinem GitLab-Repositorium zu TigerJython. Hier das erste Beispiel und hier das Fantastische Feder-Fraktal. Habt Spaß damit!
Fußnoten
Dietmar Herrmann: Algorithmen für Chaos und Fraktale, Bonn (Addison-Wesley) 1994, S. 126ff.↩︎
Gumowski, I./Mira, C.: Point sequences generated by two-dimensional recurrences, IFIP 1975, North Holland↩︎
Die Seite 2D Chaotic Attractors der Sequelaen Collection zeigt noch viele weitere, wunderbare chaotische Attraktoren, die meiner Entdeckung harren. (Das steht hier nur, damit ich den Link zu der Seite nicht vergesse 🥸)↩︎
Clifford A. Pickover hat in »Mazes for the Mind – Computers and the Unexpected« dem Fantastic Feather Fractal sogar ein ganzes, wenn auch kleines Kapitel gewidmet (Seiten 33f). Und da dieses Fraktal eines seiner Lieblingsfraktale ist, kommt es in seinem Buch »Chaos in Wonderland – Visual Adventures in a Fractal World« noch einmal vor (Seite 261).↩︎