Tilbage

Mandelbrots fraktal

En sædvanlig kurve har kun Ún dimension længde. Man siger, at sædvanlige kurver har dimensionen 1, hvorimod flader (arealer) har dimension 2.

En fraktal er en uendelig lang kurve i et endeligt stort areal. Fraktalen "fylder" altså en brøkdel af arealet og tillægges derfor en dimension mellem 1 og 2 (deraf navnet).

Emner

Fraktaler og iteration

En iteration er en gentagen proces. I Mandelbrot's tilfælde er processen

a og c er komplekse tal.

Er |a| < 2 og |c| > 2, er |c2 + a| > |c|2 – |a| > 4 – 2 = 2, så hvis c's afstand til (0, 0) bliver større end 2, fortsætter den med at være > 2.

Sættes processen i gang med en bestemt a-værdi, hvor |a| < 2, sker der Út af to:

  1. Før eller siden vokser |c| ud over alle grænser. a kaldes et frastødende punkt
  2. |c| holder sig i nærheden af 0. a kaldes tiltrækkende.

Mandelbrots mængde er mængden af tiltrækkende punkter, og fraktalen er grænsekurven mellem tiltrækkende og frastødende punkter.

TI83 billeder af Mandelbrots mængde i forskellige vinduer
   
Vindue [–2.1 ; 0.9] x [–0.99 ; 0.99] [–0.8 ; –0.5] x [0.32 ; 0.52] [–0.685 ; –0.655] x [0.41 ; 0.43]
Iterationsdybden

Afbilding af iterationsdybden

    Ønsker man et indtryk af iterationsdybden, kan man benytte TI83's heldels - funktion og ændre plotbetingelsen fra If (N=20) til If (N=2*Int(N/2)), så der plottes, hvis dybden er 2, 4, 6, ... , 18 eller 20.

[ Toppen af siden ]

Komplekse tal   z = a + i b

Ligesom planens punkter har to koordinater, har det komplekse tal z = a + i b to dele: realdelen a og imaginærdelen b, hvor i2 = –1.
Det er sædvanligt at afbilde komplekse tal som punkter i den komplekse plan, så realdelen er punktets 1 - koordinat og imaginærdelen 2 - koordinaten.

Regneregler

  1. (a1 + i b1) ± (a2 + i b2) = (a1 ± a2) + i (b1 ± b2)
  2. (a1 + i b1) · (a2 + i b2) = (a1 · a2 – b1 · b2) + i (a1 · b2 + b1 · a2)
  3. (a + i b)2 = (a2 – b2) + i 2ab
  4. ||z1| – |z2|| £ |z1 + z2| £ |z1| + |z2|   (Trekantuligheden)

[ Toppen af siden ]

Programmet

Algoritmen

  1. I to løkker gennemløber (x, y) skærmens pixler.
  2. Initialisering: (a, b) = (x, y) og tæller n = 1.
  3. Sålænge (a, b) ikke har fjernet sig og iterationsdybden er mindre end maxværdien (her 20), udføres pkt. 4.
  4. Sæt (a, b) = (a, b) · (a, b) + (x, y). Opdater tælleren.
  5. Hvis (a, b) ikke har fjernet sig under iterationen, regnes (x, y) for tiltrækkende og markeres.
  1. Programmet indtastes under PRGM - New. Kald det f.eks. MANDEL.
    Vinduets konstanter findes i VARS - Window
  2. Et passende vindue sættes i WINDOW
  3. Programmet køres med PRGM - Exec - MANDEL
  4. Programmet er frygtelig regnetungt, så en kørsel tager timer.
    Den maksimale iterationsdybde (her 20) er et kompromis: lille dybde giver hurtigere kørsel men ringere nøjagtighed, mens stor dybde giver lange køretider og bedre nøjagtighed.

[ Toppen af siden ]

Juliamængden

Itererer vi i stedet processen

for alle vinduets punkter, er Juliamængden mængden af tiltrækkende punkter. Også dens randkurve er en fraktal.

Programmet

    Mandelbrot - programmet rettes, idet A*A–B*B+X ® C ændres til A*A–B*B–1 ® C og 2*A*B+Y ® B til 2*A*B ® B.
Vindue [–1.5 ; 1.5] x [–1 ; 1]

[ Toppen af siden ]

Links

Forskellige sider om Mandelbrot

Clarc University, USA
Athens tekniske universitet
University of Utah, USA
Boston University, USA

[ Toppen af siden ] [ Tilbage til hovedsiden ]