Remove ads
From Wikipedia, the free encyclopedia
Mandelbrotmængden er en berømt fraktal opkaldt efter den franske matematiker Benoît B. Mandelbrot.
Denne artikel behøver tilretning af sproget. Sproget i denne artikel er af lav kvalitet på grund af stavefejl, grammatikfejl, uklare formuleringer eller sin uencyklopædiske stil. (december 2015) |
Matematisk set er Mandelbrotmængden ikke vigtig, men den er vigtig for at forstå, hvordan simple formler kan frembringe komplekse strukturer.
Funktionen, som ligger bag Mandelbrotmængden, blev oprindeligt opdaget i 1905 af den franske matematiker Pierre Fatou og studeredes senere videre af hans kollega Gaston Julia, som i slutningen af 1920'erne arbejdede med metoder som itererer enkle komplekse funktioner. Julia opdagede også de med Mandelbrotmængden beslægtede Juliamængder. Fatou og Julia undersøgte først og fremmest konvergenser af bestemte parametre; Julia lavede nogle afbildninger med lav opløsning, mens vore dages bedre visualiseringer kræver mere datakraft til de omfattende beregninger.
Benoît B. Mandelbrot var ansat ved IBM og arbejdede blandt andet med at forsøge at få bugt med visse typer af støj, et kaosfænomen kaldet cantorstøv, som opstår ved datakommunikation, hvilket foranledigede ham til at eksperimentere med kaotiske forløb. Da han genopdagede Julias arbejder, havde han fordelen af at være blandt de første med adgang til den nødvendige datakraft. Der skabte han det første billede af mandelbrotmængden, en sort/hvid udskrift på papir. Han beskrev sine resultater i 1982.
Mandelbrotmængden er en mængde af punkter i den komplekse talplan, nemlig de komplekse tal c = c1+ic2 for hvilke den rekursive talfølge zn, definieret af
ikke går mod uendelig, når startværdien er z0 = 0.
For at beregne et billede af Mandelbrotmængden, antager man, at hvert billedpunkt modsvarer et specifikt c, hvilket genererer en specifik talfølge, og efter som et digitalt billede indeholder et endeligt antal billedpunkter, indebærer det, at et endeligt antal talfølger behøver at blive undersøgt med hensyn til divergens.
Man kan vise, at talfølgen altid divergerer, hvis den absolutte værdi (modulus) af noget zn bliver større end 2. Eftersom det ikke er muligt at udføre et uendeligt antal iterationer på endelig tid vælges i praksis et forudbestemt, maksimalt antal iterationer, og hvis |zn| for en specifik talfølge ikke overstiger 2 inden, at man når denne iteration, så antager man, at modsvarende c tilhører mandelbrotmængden, ellers ikke.
Formlen ovenfor er skrevet med komplekse tal, men det går tillige at udtrykke det samme med reelle tal. I stedet for det komplekse tal c undersøges da punktet (a,b), og i stedet for den komplekse talfølge zn fås da to reelle talfølger xn og yn:
Først bestemmes hvor mange gange, funktionen skal itereres eller det maksimale beløb index[flertydigt link ønskes præciseret]regneren n kan antage. Dette for at det ikke går at eksakt beregne fraktalen, men hvad der nås, er en approximation af den. Det i sin tur bero på, at visse punkter kan tage nærmere uendeligt mange iterationer på sig inden de forlader systemet, og det går jo ikke at beregne. Næste trin er at vælge et punkt (eller koordinatpar om man vil). Den modsvarer punkter i det komplekse talplanet, som skal analyseres for, hvorvidt det er et punkt i mandelbrotmængden eller ej. Siden sættes parameteren z til att pege på origo, altså nulpunktet. Også indexregneren nulstilles:
max n = præcisionsgrad Antal iterationer c = [a, b] Punkterne som analyseres z(n = 0) = [0, 0]. Nulstillet z og n
Dette er udgangssituationen, for at siden prøve om punktet c tilhører mandelbrotmængden, itereres formlen oven for og ved hver iteration testes, om absolutbeløbet af z har nået over grænseværdien som anger størrelsen på fangstmængden som bruges, i dette tilfælde er det |z| < 2,0 som er fangstmængde. Om udtrykket er sandt, så gøres næste gentagelse; i andet fald er z den for radien 2,0 og kommer garanteret at gå mod uendelighed. Om z derimod ikke går mod uendelighed, så afbrydes beregningerne når indexregneren n har nået sin maxværdi "max n" og punktet antages at være en delmængde af mandelbrotmængden. (Det betyder, at punktet ligger inden for det sorte område i billede 1a. Det store cirkelsegment, som synes lidt utydeligt længst til venstre i billedet, modsvarer |z| == 2.0, og er grænsen for, hvor z er faldet uden for fangstmængden efter den første iteration. Næste kurve i ordningen modsvarer den anden gentagelse osv.)
For at beregne absolutbeløbet af z så kvadreres x og y siden drages roden af summen:
Absolutbeløb; (to dimensioner)
|z| = sqrt(x² + y²)
Jævnfør; Pythagoras sætning, længden på hypotenusen.
Men da |z| < max er analog med |z|² < max², så gælder tillige (x² + y²) < max², hvilket indebærer, at det går at undgå beregningsbesværet i roduddragningen og teste direkte på max², (i dette tilfælde 4,0), i stedet [1].
Nu regner det altså ikke med kun en formel, men der behøves tillige en algoritme. Algoritmens opgaver er at inddele talplanet i et rudenet, som har samme opløsning som billedfladen, som fraktalen skal vises på, udføre beregningerne og teste vilkår for fangstmængde og indexregnere og der efter gentage eller afbryde. Rudenettet modsvarer koordinaterna (c) som skal approximeres og arbejdes af punkt for punkt til hele billedet er klart. Afbrydes beregningen på grund af, at z falder uden for fangstmængden, så betyder det, at c peger på en punkt i auraen og gives da sædvanligvis en farve fra en præ-definieret palet (egentlig en tabel), så anvendes normalt den opnåede værdi for n som index, når farven hentes fra tabellen. Siden skrives punktet der i den aktuelle farve ved koordinaten c. Opnår indexregneren der imod maxværdien, så skrives vanligvis et sort punkt der for at markere, at den tilhører mandelbrotmængden.
Pseudokode (hvor operanderne er i normal tekst og operatorerne i fed stil) .
Regn b fra -2,0 til 2,0 Regn a fra -2,0 til 2,0 Sæt c til [a, b] Sæt z til [0, 0] Sæt n til 0 Hvis |z| < 2 Og n < max n Sæt z til z² + c Forøg n med 1 Gentag Sæt aktuel farve til n Skriv_pixel [a, b] Næste a Næste b
Wikimedia Commons har medier relateret til: |
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.