WISKUNST
wiskunde in beeld gebracht
Mandelbrotfractal
iteratie
versie  2.3
Your browser doesn't support the HTML5 canvas tag.
primaire bollen rond de cardioïde
met hun periodenummers

klik op één van de nummers
voor rotatie en bijbehorende
Julia-set
rotatienummer p/q = 1/2

zie bijbehorende Julia-set
rotatienummer p/q = 6/13

zie bijbehorende Julia-set
rotatienummer p/q = 5/11

bijbehorende Julia-set
rotatienummer p/q = 4/9

zie bijbehorende Julia-set
rotatienummer p/q = 3/7

zie bijbehorende Julia-set
rotatienummer p/q = 2/5

zie bijbehorende Julia-set
rotatienummer p/q = 3/8

zie bijbehorende Julia-set
rotatienummer p/q = 1/3

zie bijbehorende Julia-set
rotatienummer p/q = 2/7

zie bijbehorende Julia-set
rotatienummer p/q = 1/4

zie bijbehorende Julia-set
rotatienummer p/q = 1/5

zie bijbehorende Julia-set
rotatienummer p/q = 1/6

zie bijbehorende Julia-set
rotatienummer p/q = 1/7

zie bijbehorende Julia-set








primaire spaken = 5
secondaire periode = 5x3
rotatienummer p/q = 2 / 5x3
zie bijbehorende Julia-set


primaire spaken = 5
tertiaire periode = 5x6
rotatienummer p/q = 2 / 5x6



zie bijbehorende Julia-set
2
13
11
9
7
5
3
7
4
5
6
7
"optellen" tellers en noemers:
bijvoorbeeld:
tussen 2/5 en 1/3 wordt 2+1 / 5+3 = 3/8
tussen 1/3 en 1/4 wordt 1+1 / 3+4 = 2/7
2/5
3/8
1/3
2/7
1/4
Fibonacci-rij in de periodenummers:
benoem de bollen alleen met hun periodenummer,
te beginnen met de cardioïde als bol 1, daarna bol 2, etc.
grootste bol tussen 1 en 2 = bol 3
grootste bol tussen 2 en 3 = bol 5
grootste bol tussen 3 en 5 = bol 8
grootste bol tussen 5 en 8 = bol 13
grootste bol tussen 8 en 13 = bol 21









rotatienummer p/q = 1/3
zie bijbehorende Julia-set









rotatienummer p/q = 2/5
zie bijbehorende Julia-set









rotatienummer p/q = 3/8
zie bijbehorende Julia-set









rotatienummer p/q = 5/13
zie bijbehorende Julia-set









rotatienummer p/q = 8/21
zie bijbehorende Julia-set
3
5
8
13
21
zie bijbehorende Julia-set
  niveau:
  vergroting: x
  max.iteraties:

De Mandelbrotfractal (kortweg M)
ontstaat door de volgende iteratie:
zn+1 = zn² + c,  waarbij z0 = 0 en c = a + bi.
Voor meer info daarover zie algoritme.
M heeft een aantal interessante eigenschappen.
Voor een mooie weergave zie voorbeelden.

Iteraties met 1 verhogen / verlagen: page-up / page-down.
De oranje eindwaarde roteert tegen de klok in naar één of meer aantrekkers (rode punten).

De periode (aantal aantrekkers) is af te lezen aan:
-  het aantal spaken van een antenne-knooppunt
-  én het aantal uitlopers van een knooppunt van de
    corresponderende Julia-set, zie voorbeelden.
Re c
Im c
iteraties
c-waarde:
Re c =
Im c =
iteraties = 0
eindwaarden:
Re z =
Im z =
periode = 1
knooppunt 3 spaken
knooppunt 5 spaken
primaire bollen
"optellen"
Fibonacci
secondaire bol
tertiaire bol
c-waarde invoeren
Mandelbrot algoritme
De Mandelbrotfractal (kortweg M) is de verzameling punten van de donkergekleurde figuur in de afbeelding.
Deze punten hebben bijzondere eigenschappen.
M vinden we door iteratie, dus herhaald uitvoeren, van:  zn+1 = zn² + c.
Kenmerkend voor M daarbij is: startwaarde z0 = 0 en c is een complex getal  a + bi.

De berekende waarde van een iteratie is invoer voor de volgende iteratie. Dan ontstaat volgende rij:
z0 = 0
z1 = z0² + c = a + bi
z2 = z1² + c = (a + bi)² + a + bi  =  a² - b² + a + (2ab + b)i
z3 = z2² + c = ...

Dichotomie
G. Julia en P. Fatou hebben voor Julia-sets aangetoond dat er bij iteratie van elke c-waarde slechts 2 mogelijkheden zijn:
convergeren binnen bepaalde grenzen of divergeren naar ∞.
Bepalend daarbij is het iteratiegedrag van de c-waarden bij startwaarde z0 = 0:
-  bij convergentie vormen ze een aaneengesloten Julia-set (dus een figuur uit één stuk)
-  bij divergentie een Cantor-set, een 'wolk' van punten, te klein om op het scherm zichtbaar te maken.
M is de verzameling van punten met convergentie (weergegeven in donkere kleur).
Punten met divergentie behoren niet tot M (weergegeven in diverse lichtere kleuren).

Maximum aantal iteraties
De afbeelding bestaat uit 500 x 500 = 250.000 punten in het complexe vlak.
Om voor alle 250.000 afgebeelde punten convergentie vast te stellen worden per punt standaard 500 iteraties uitgevoerd,
met de aanname dat dit aantal voldoende is om te bepalen of de eindwaarde wel/niet ∞ wordt.
Wordt de eindwaarde niet ∞, dan krijgt het betreffende punt een donkere kleur. Wel ∞, dan een lichte kleur.

Het algoritme is dus een benadering, maar blijkt in de praktijk goed te voldoen.
Desgewenst kan het maximum aantal iteraties worden ingesteld op automatisch òf handmatig van 250 tot 10.000.
Hoe hoger het aantal des te nauwkeuriger de weergave maar des te langer de benodigde rekentijd.
Voor wat expirimenteren is 500 iteraties veelal voldoende. Maar bij uitvergroten is een hoger maximum nodig voor een beter
beeld. Houd in dat geval rekening met een langere rekentijd.

Versnelling algoritme
Het volgende wordt gebruikt om het aantal berekeningen te reduceren en zo het algoritme te versnellen:
-  voor de gehele M-verzameling geldt dat de modulus |c| ≤ 2, ofwel alle c-waarden liggen binnen een cirkel met straal 2
-  de M-verzamling is symmetrisch boven en onder de Re-as
-  de grootste vorm, de cardioïde, heeft een periode 1,  zie overzicht met eigenschappen.
Eigenschappen
De gehele M-verzameling ligt binnen een cirkel met een straal 2 en middelpunt in de oorsprong van het
assenkruis.  M is symmetrisch t.o.v. de Re-as.

Dichotomie
Bij de iteratie van  zn+1 = zn² + c  met  z0 = 0   zijn er slechts 2 mogelijkheden: divergeren naar ∞ of convergeren (zie algoritme).
Alleen c-waarden die convergeren behoren tot de M-verzameling. Deze zijn periodiek of 'chaotisch', zie hieronder.

Periodiciteit
Tijdens het itereren lijkt de oranje eindwaarde te worden 'aangetrokken' door een rood punt in het complexe vlak,
de aantrekker (attractor). Er kunnen ook meerdere aantrekkers zijn. Het aantal aantrekkers wordt periode genoemd.
Soms is er aantrekking zonder aanwijsbare aantrekkers, dit wordt chaotisch gedrag genoemd (strange attractor).

Kenmerken van de hoofdfiguur
-  de cardioïde, de grootste vorm, snijdt de Re-as van -0.75 tot 0.25, en heeft 1 aantrekkingspunt: de periode = 1
-  de linker hoofdcirkel, r = 0.25 en  centrum (-1,0), heeft 2 aantrekkingspunten: de periode = 2
-  de linker hoofdantenne, eindigt bij (-2,0)
-  een halo van 'eilandjes', miniaturen van de grote vorm, veelal gekanteld, en verbonden met het 'vasteland' via spaken
    het grootste eiland bevindt op de hoofdantenne in c = 7/4 met een omvang van ± 1/50 van de grote vorm, de periode = 3

Primaire bollen
-  aan de cardioïde en hoofdcirkel zitten talloze primaire bollen vast, bijna-cirkels met eigen antennes,
   alle punten binnen zo'n bol hebben dezelfde periode (aantal aantrekkers)
-  de periode is af te lezen aan het aantal spaken van een antenne-knooppunt én aan het aantal uitlopers van een knooppunt
   van de corresponderende Julia-set, zie voorbeelden.

Rotatiequotient p/q
-  elke primaire bol wordt gekenmerkt door een rotatiequotient p/q, het quotient van combinatie-nummer en periodenummer
-  tijdens het iteren roteert de eindwaarde tegen de klok in langs de aantrekkers (weergegeven als rode punten)
-  de eindwaarde verspringt daarbij 1 of n stappen naar links (combinatienummer = het aantal stappen)
-  het rotatiequotient is altijd een rationaal getal (breuk van 2 gehele getallen)
-  het rotatiequotient van de grootste bol tussen 2 bollen is te bepalen door 'verkeerd' optellen van die 2 bollen, zie voorbeelden
-  de periodenummers van de bollen vormen een Fibonacci-reeks, zie voorbeeld

Secondaire bollen
-  de primaire bollen hebben op hun beurt weer talloze secondaire bollen, deze vertakking zet zich oneindig voort en vormt
    op deze wijze een fractal
-  de periode van een secondaire of tertiare bol is een veelvoud van zijn primaire bol
-  de aantrekkers staan veelal in clusters bij elkaar, zie voorbeelden

Bifurcatie
Lat. tweevork, Poincaré. Het opsplitsen in 2 of meer aantrekkingspunten wordt bifurcatie genoemd.
Op de Re-as, gaande vanuit het centrum naar -2, is dat goed te zien bij de raakpunten tussen de steeds kleiner wordende bollen.
Bij de volgende c-waarden verdubbelt de periode:
-0.75,  -1.25,  -1.3681,  -1.3940,  -1.3996,  -1.4008,  -1.4011,  -1.40114,  -1.401153,  -1.4011552...
de periode wordt resp. 2,  4,  8,  16,  32,  64,  128,  256,  512,  1024...
Kies daarbij het aantal iteraties voldoende hoog, d.w.z hoger dan de periode.

Help

Invoer
-  vul de waarden in voor Rec  Imc  en aantal iteraties
-  toets enter

Iteratie
-  aantal iteraties plus 1:  page-up toets
-  aantal iteraties minus 1:  page-down toets
-  aantal terugzetten naar 1:  resetknop

Maximum aantal iteraties
Desgewenst kan het maximum aantal iteraties voor het berekenen van de fractal worden ingesteld van 250 naar 1500,  zie menuknop onderaan de afbeelding.
Hoe hoger het aantal hoe nauwkeuriger de berekening maar des te langer de benodigde rekentijd.

Vergroting
-  dubbelklik op het in te zoomen punt
-  of: klik op het zoompunt en klik binnen de focusbox
-  focus verschuiven: pijltjestoetsen
-  focus weghalen: klik buiten de focusbox
-  opnieuw beginnen: resetknop.

Maximaal kan ingezoomd worden t/m niveau 10,  een
vergroting van 210 = 1.024 keer.
Niveau en vergroting staan onderaan de afbeelding.