Frage von R3M1NDMYN4M3, 48

Mandelbrot set, berechnen?

Hab bis jetz verstanden wie das ist mit der funktion f(z)=z^2+c Für z wird 0 eingesetzt und für c zum beispiel 1. Dann expandiert es 1 2 5 26 usw. Bei -1 wird es 0 -1 0 -1 und so weiter, also bleibt es kleiner als 2 und ist somit innerhalb der menge.. Aber jetz meine frage.. Woher komm ich auf c.. Also wenn ich das jetz selber per hand zeichnen würde, wäre 1 dann die 1 auf der reelen achse und um etwas in der ebene zu berechnen müsste ich dann was in der form a+bi, also zum beispiel 3+2i einsetzen? .. Oder geht es da die ganze Zeit um den Abstand zum Ursprung?.. Und dann wäre da noch die frage ob das maximum auf der reelen achse wirklich 1/4 ist oder ob ich mich da verhört hab :/

Danke schon mal im voraus :)

Antwort
von AMDB5, 38

in deinem fall das c zeigt dir den urssprung deiner funktion auf der y achse an.

du berechnest den x-Achsen abschinitt und setzt dein ergebnis in f(z=0)

Kommentar von R3M1NDMYN4M3 ,

achsoo und wenn ich schauen will ob 3+2i zum Mandelbrot set gehört dann muss die funktion wie aussehen? f(2i)=2i^2+3 ?

Expertenantwort
von hypergerd, Community-Experte für Mathematik, 19

Deine Frage beweist, dass Du die Original-Frage doch nicht verstanden hast:

https://www.gutefrage.net/frage/wie-entstehen-diese-bilder-bei-fraktalen?foundIn...

Was dort beschrieben ist, sind 3 verschachtelte Schleifen:

For y...  (für alle y..

  For x ... (für alle x

     For n Iteration (für jeden einzelnen Punkt !!!!

Dann schau Dir https://jumk.de/facharbeit/iterationen.html

an. Die innere Iterationsfolge bezieht sich auf einen einzelnen Punkt!!!

Dort wurde bei z[x1,y1,22] aufgehört. Für das Bild darüber muss bis etwa z[x1,y1,9000] pro Punkt berechnet werden!

Für die Farbe dieses einzelnen Punktes gibt es 2 verschiedene Algorithmen, die aber fast das gleiche Bild ergeben:

a) wie bei wikipedia beschrieben: für die Iteration gibt es eine Obergrenze an Schritten (primitive Bilder um 100; hohe Auflösung um 10000) und eine Obergrenze an Betrag also abs( z[n] ).

Die Anzahl an Iterationen n, wo eine der beiden Grenzen zuerst erreicht wird, ist ein Array-Wert  z[x,y,n] = n bei Obergrenze

Dieses n wird per (n Modulo F) in F Farben zugeordnet.

b) seltener wird der Betrag gleich in Farbe umgesetzt.

Ein Bild aus 640 mal 480 Pukten benötigt also ein 3D Ergebnisfeld

z[x1...640 , y1...480 , n max Iteration]

natürlich schreibt man keine Programme, wo sich alle n Zwischenschritte im RAM gemerkt werden, da dieses 3D-Feld extrem groß werden würde!!

Man verwendet für die innere Iteration z.B. Funktionen wie bei Wiki:

FUNCTION Julia(x,y) return intFarbe

und legt die Farbe im 2D-Feld ab: z[x , y] 

{die meisten Programme speichern auch nicht dieses 2D-Feld, sondern übergeben sofort während der Berechnungsschleife das Ergebnis an die Grafikkarte:

plot(x,y, farbe) }

Kommentar von R3M1NDMYN4M3 ,

du hast noch einfach mal noch mehr verwirrt

Kommentar von hypergerd ,
PROCEDURE Apfel (re_min, im_min, re_max, im_max, max_betrag_2: double, xpixels, ypixels, max_iter: integer)

FOR y = 0 TO ypixels-1
c_im = im_min + (im_max-im_min)*y/ypixels FOR x = 0 TO xpixels-1 c_re = re_min + (re_max-re_min)*x/xpixels iterationen = Julia (c_re, c_im, c_re, c_im, max_betrags_2, max_iter)
farb_wert = waehle_farbe (iterationen, max_iter)
plot (x, y, farb_wert) NEXT NEXT END PROCEDURE

FUNCTION Julia (x, y, xadd, yadd, max_betrag_2: double, max_iter: integer): integer remain_iter = max_iter xx = x*x yy = y*y xy = x*y betrag_2 = xx + yy WHILE (betrag_2 <= max_betrag_2) AND (remain_iter > 0)
remain_iter = remain_iter - 1 x = xx - yy + xadd y = xy + xy + yadd xx = x*x yy = y*y xy = x*y betrag_2 = xx + yy END
Julia = max_iter - remain_iter END FUNCTION

Keine passende Antwort gefunden?

Fragen Sie die Community