Multibrot sæt - Multibrot set
I matematik er et multibrot-sæt sæt af værdier i det komplekse plan, hvis absolutte værdi forbliver under en eller anden endelig værdi gennem hele iterationen af et medlem af den generelle moniske univariate polynomiske familie af rekursioner . Navnet er et portmanteau af flere og Mandelbrot sæt . Det samme kan anvendes på Julia-sættet , dette kaldes multi-Julia-sæt .
hvor d ≥ 2. Eksponenten d kan generaliseres yderligere til negative og brøkværdier.
Eksempler
Sagen om
er det klassiske Mandelbrot-sæt, hvorfra navnet stammer.
Sættene for andre værdier af d viser også fraktale billeder, når de er plottet på det komplekse plan.
Hvert af eksemplerne på forskellige kræfter d vist nedenfor er tegnet i samme skala. Værdierne for c, der hører til sættet, er sorte. Værdier på c, der har ubegrænset værdi under rekursion og derfor ikke hører hjemme i sættet, er tegnet i forskellige farver, der vises som konturer, afhængigt af antallet af rekursioner, der fik en værdi til at overstige en fast størrelse i Escape Time-algoritmen .
Positive kræfter
Eksemplet d = 2 er det originale Mandelbrot-sæt. Eksemplerne for d > 2 kaldes ofte multibrot-sæt . Disse sæt inkluderer oprindelsen og har fraktale omkredse med ( d - 1) foldes rotationssymmetri.
Negative beføjelser
Når d er negativt, omslutter sættet, men inkluderer ikke oprindelsen. Der er interessant kompleks adfærd i konturerne mellem sættet og oprindelsen i et stjerneformet område med (1 - d ) foldes rotationssymmetri. Sættene ser ud til at have en cirkulær omkreds, men dette er kun en artefakt af den faste maksimale radius, der er tilladt af Escape Time-algoritmen, og er ikke en grænse for de sæt, der faktisk strækker sig i alle retninger til uendelig.
Fraktionerede kræfter
Gengivelse langs eksponenten
En alternativ metode er at gengive eksponenten langs den lodrette akse. Dette kræver enten fastsættelse af den reelle eller den imaginære værdi og gengivelse af den resterende værdi langs den vandrette akse. Det resulterende sæt stiger lodret fra oprindelsen i en smal søjle til uendelig. Forstørrelse afslører stigende kompleksitet. Den første fremtrædende bump eller spike ses ved en eksponent på 2, placeringen af det traditionelle Mandelbrot-sæt ved dets tværsnit. Det tredje billede her gengives på et plan, der er fastgjort i en 45 graders vinkel mellem den virkelige og imaginære akse.
Gengivelse af billeder
Alle ovenstående billeder gengives ved hjælp af en Escape Time-algoritme, der identificerer punkter uden for sættet på en enkel måde. Meget større fraktaldetaljer afsløres ved at plotte Lyapunov-eksponenten , som vist i eksemplet nedenfor. Lyapunov-eksponenten er fejlhastigheden for en given sekvens. Beregn først iterationssekvensen med N iterationer, og bereg derefter eksponenten som
og hvis eksponenten er negativ, er sekvensen stabil. De hvide pixels i billedet er de parametre c, som eksponenten er positiv for ustabil. Farverne viser de perioder, hvor kredsløbene tiltrækkes. Alle punkter farvet mørkeblå (udenfor) tiltrækkes af et fast punkt, alle punkter i midten (lysere blå) tiltrækkes af en periode 2-cyklus og så videre.
Pseudokode
ESCAPE TIME ALGORITHM ===================== for each pixel on the screen do x = x0 = x co-ordinate of pixel y = y0 = y co-ordinate of pixel iteration := 0 max_iteration := 1000 while (x*x + y*y ≤ (2*2) and iteration < max_iteration do /* INSERT CODE(S)FOR Z^d FROM TABLE BELOW */ iteration := iteration + 1 if iteration = max_iteration then colour := black else colour := iteration plot(x0, y0, colour)
Den komplekse værdi z har koordinater ( x , y ) på det komplekse plan og hæves til forskellige kræfter inde i iterationssløjfen ved hjælp af koder vist i denne tabel. Beføjelser, der ikke er vist i tabellen, kan opnås ved sammenkædning af de viste koder.
z −2 | z −1 | z 2 (til Mandelbrot-sæt) | z 3 | z 5 | z n |
---|---|---|---|---|---|
d=x^4+2*x^2*y^2+y^4 if d=0 then ESCAPE xtmp = (x^2-y^2)/d+a y = -2*x*y/d+b x = xtmp |
d=x^2+y^2 if d=0 then ESCAPE x = x/d + a y= -y/d + b |
xtmp=x^2-y^2 + a y=2*x*y + b x=xtmp |
xtmp=x^3-3*x*y^2 + a y=3*x^2*y-y^3 + b x=xtmp |
xtmp=x^5-10*x^3*y^2+5*x*y^4 + a y=5*x^4*y-10*x^2*y^3+y^5 + b x=xtmp |
xtmp=(x*x+y*y)^(n/2)*cos(n*atan2(y,x)) + a y=(x*x+y*y)^(n/2)*sin(n*atan2(y,x)) + b x=xtmp |