Počítačová grafika Fraktál Fraktální geometrie Jana Dannhoferová (jana.dannhoferova@mendelu.cz) Ústav informatiky, PEF MZLU Fraktální geometrie se zabývá nepravidelností! s názvem přišel matematik B. Mandelbrot kolem roku 1980 (fractus frangere rozlámat, vytvořit nepravidelné úlomky) 1977: How long is the coast of Great Britain vlastnosti: vizuální modelování přírodních objektů tvarová komplikovanost a nepravidelnost objektů teorie chaosu tvarová soběpodobnost nezávislá na měřítku uplatnění: matematika, fyzika, výtvarná informatika, počítačové hry apod. 2 Fraktál Fraktál Fraktál = jakýkoliv geometricky nepravidelný útvar, ze kterého vznikne po rozdělení v ideálním případě několik soběpodobných kopií původního celku matematická definice fraktálu dosud nebyla podána nejvýstižnější Mandelbrot (1977): Fraktál je množina, jejíž hodnota Hausdorffovy-Besicovichovy dimenze přesahuje hodnotu dimenze topologické. DT topologická dimenze určuje klasický geometrický rozměr tělesa (např. bod: DT=0, přímka: DT=1, plocha: DT=2, prostorový objekt: DT=3) Haus.-Bes. dimenze D (tzv. fraktální dimenze) určuje míru nepravidelnosti tělesa 3 z = z 2 + c 4 Historie Lorenzův atraktor teorie chaosu + fraktální geometrie + počítače práce s chaosem prozkoumávání mnoha grafů spočítaných jednoduchými rovnicemi, zato s velkou přesností Edward Lorenz (50. a 60. léta): předpověď počasí chování vodního kola (první slavný chaotický systém) 5 6 1
Lorenzův atraktor Historie teorie chaosu a dynamické systémy: James Yorke Steve Smale Benoit Mandelbrot šum na telefonních linkách IBM (podobnost mezi Cantorovým mračnem a šumem) v přírodě existuje skrytý fraktální řád otázky: Kolik dimenzí má klubko provázku? Mandelbrotovy množiny (staly se symbolem všech fraktálů) Michael Barnsley 7 8 Cantorova množina IFS fraktály nebo také Cantorovo mračno rozdělení úsečky na stejné části a opakování tohoto procesu iterační funkční systémy (nejjednodušší) po nekonečně mnoho opakováních vznikne nekonečně mnoho bodů zlomková dimenze míra nepravidelnosti objektu 9 10 Barnsleyho kapradina Barnsleyho kapradina zabýval se problémem, jak nalézt u neznámého fraktálu jeho matematické vyjádření (tzv. kolážová věta, fraktálový řád) každý lístek kapradiny je téměř kopií sebe sama původní útvar byl postupně doplňován dalšími útvary, které byly zmenšenou kopií původního (menší útvary byly pokládány tak, že mohly i překrývat původní objekt) 11 12 2
Algoritmy větvení Kochova vločka Helge von Kocha trojúhelník, k jehož každé straně přilepíme k prostřední třetině další trojúhleník o třetinu menší (tento postup pak budeme aplikovat i na tento trojúhelník) po mnoha opakováních vznikne křivka s několika zajímavými vlastnostmi, která nikdy neprotne sama sebe, neboť nové trojúhelníky jsou příliš malé plocha zůstává na rozdíl od křivky konečná 13 14 Kochova vločka Sierpinského trojúhelník z trojúhelníka vyřízneme trojúhelník tvořený středními příčkami trojúhleníka původního a tento postup dále opakuje pro zbylé trojúhelníky 15 16 Sierpinského koberec Mengerova houba vyřezávání ze čtverce obdobné operace na trojrozměrných objektech trojrozměrná mřížka s nekonečně velkým povrchem, ale nekonečně malým objemem 17 18 3
Fraktální dimenze Fraktální dimenze N.r 1 =1 N.r 2 =1 N.r 3 =1 N x 1D kopie v měřítku r =1/N D míra nepravidelnosti útvaru fraktály: fraktální dimenze je větší než topologická dimenze ne-fraktály: zmenšováním délky měřidla se přibližuje délka objektu (obvod) k nějaké limitní hodnotě (u fraktálů to neplatí, délka se neustále zvětšuje tzv. Richardsonův efekt) příklad: rozdělit úsečku o délce jedné jednotky na pět stejných dílů délka jednoho dílku: r=1/5 N je počet dílků, obecně: r=1/n rozdělit čtverec na dvacet pět stejných dílů délka jednoho dílku: r=1/5 po zobecnění: r=1/n 1/2 19 20 Fraktální dimenze Juliova množina obecný zápis: r = 1 / N 1/D (D je dimenze objektu) D můžeme vyjádřit jako: log r = - log N 1/D celkově tedy dostáváme: D = log N / log (1/r) (kde N označujeme faktor změny délky a 1/r faktor změny měřítka) příklad: použití vzorce na Kochovu křivku při každé transformaci je r=1/3 své původní hodnoty počet samopodobných úseků je N=4 dosadíme: D = log 4 / log 3 = 1.2618 Gaston Julia (práce okolo r. 1915) + Pierre Fatou skupina polynomických fraktálů chování komplexního polynomu při iteraci (z 4 +z 3 /(z-1)+z 2 /(z 3 +4z 2 +5)+c) v současné době je Juliova množina definována jako množina bodů z=x+iy v komplexní rovině 21 22 Juliova množina Juliova množina metoda: zvolíme jedno náhodné komplexní čislo c, které bude charakterizovat množinu pro každý bod komplexní roviny z zjistíme, zda neustálým mocněním z a přičítáním c konverguje výsledek k nule či ne. pokud k nule konverguje, bod patří do Juliovy množiny v praxi: zkoumané číslo umocníme a přičteme k němu konstantu c pokud je výsledek větší než 2, bod nepatří do množiny, pokud je menší, zopakujeme výpočet jestliže ani po několika iteracích nepřesáhne výsledek hodnotu 2, bod patří do Juliovy množiny aby byly Juliovy množiny zajímavější, zobrazují se barevně barvu zvolíme podle počtu iterací potřebných ke zjištění, zda číslo je či není prvkem Juliovy množiny 23 24 4
Mandelborotova množina Mandelborotova množina Benoit Mandelbrot pokoušel se zobecnit, sjednotit a popsat Juliovy množiny 1979: objevil jakýsi katalog Juliových množin (tím katalogem byla další množina v komplexní rovině, která popisovala v každém svém bodě určitou Juliovu množinu) tato množina se nazývá dle svého objevitele Mandelbrotova tyto dvě množiny jsou spolu propojeny tak, že každý bod vmandelbrotově množině určuje vzhled množiny Juliovy, která ke zvolenému bodu patří 25 idea: zkoumáme pro každý bod komplexní roviny, zda jeho neustálým umocňováním se vzdaluje od nuly a blíží k nekonečnu na každý bod několikrát aplikujeme rovnici z n = z n-12 + c výpočet: vezmeme komplexní číslo a přičteme k němu jeho druhou mocninu výsledek zase umocníme a přičteme k němu původní číslo tento proces opakujeme, dokud výsledek výpočtu nepřesáhne hodnotu 2 pokud ji přesáhne, výpočet končí, pokud ne, bod do množiny patří 26 Newton Nástroje John Hubbard Newtonova metoda řešení polynomů (postupné zpřesňování výsledku) zkoumal jednoduchou rovnici x 3-1 = 0 (v oboru reálných čísel má jen jedno řešení, v komplexním oboru jsou řešení ovšem celkem tři) tato rovnice se stala základem pro fraktál s označením Newton FractInt Fractal Explorer ChaosPro Ultra Fractal 27 28 Hénonův atraktor King s dream vznikne natahováním a ohýbáním fázového prostoru při postupném zjemňování fraktálu se objevují nové a nové detaily (nekonečně mnoho párů křivek vedle sebe) x n =y n-1 +1 (1.4(x n-1 ) 1/2 ), y n =0.3x n-1 vymyslel jej Clifford Pickover (kniha: Chaos in Wonderland) x n =sin(y n-1 b)+c sin(x n-1 b) y n =sin(x n-1 a)+d sin(y n-1 a) 29 30 5
Přírodní fraktály Literatura a zdroje útvary vzniklé přírodní oscilací, turbulencí, chemickou reakcí Beneš, B., Felkel, P., Sochor, J., Žára, J. Moderní počítačová grafika. Computer Press: Brno, 2004. Serba, J., Staudek, T., Žára, J. Výtvarná informatika. FI MU: Brno, 2003. Sochor, J.: Počítačová grafika. FI MU: Brno, 2003. 31 32 6