Cesta do hlubin fraktálovy duše VII

9. 08. 2017 9:09:09
Fraktály patří k nejozdobnějším objektům celé matematiky. Jejich jemně vytepané obrysy se vyznačují nejen estetickou krásou, ale také nesmírnou komplexitou. Nepřekvapí nás tedy, že je nalezneme dobře ukryté v komplexní rovině.

Fraktály jsou živoucím dokladem, že komplexní čísla nejsou jen mechanickým rozšířením čísel reálných, ale že díky své dvojrozměrnosti přináší aspekty, které se na reálné přímce nasimulovat nedají. Striktně vzato k pochopení fraktálů nemusíte znát komplexní funkce - on se ten jejich výrobní postup dá obejít pomocí reálného zobrazení z roviny do roviny (což jsem v podstatě udělal v prvním díle tohoto cyklu). Nicméně když už jsem se v Matykání ponořil do základů komplexní analýzy, můžeme konečně pohlédnout pravdě do tváře: divé tvary fraktálů mají svůj základ v komplikované algebraické struktuře komplexních čísel. Stejně jako v reálném systému jsou jejich kostrou zlomky (když se podíváte třeba na Fordovy kružnice, tak v nich určitou příbuznost s fraktály naleznete). Jejich vzájemné vztahy jsou však podstatně bohatší a vytváří nekonečně komplikované útvary do jejichž hlubin se můžete - v rámci rozlišovacích schopností vašeho softvéru - nořit téměř bez omezení.

Dnes se nejprve podíváme na komplexní definici Mandelbrotovy množiny a potom vám ukážu několik ukázek pro funkce, které jsou trochu složitější než jednoduché mocniny z předcházejících dílů (většina obrázků Mandelbrotovy množiny na internetu je odvozena z kvadratické funkce).

Mandelbrotova množina (komplexně)

Kdykoliv vidíte obrázek Mandelbrotovy množiny, vidíte vlastně kousek komplexní roviny, jejíž body jsou obarveny podle chování jisté komplexní funkce F(z), která je každému bodu (a tedy pixelu) přiřazena.

To přiřazení je celkem jednoduché: nejprve si vezmeme libovolnou základní funkci f(z) - ta bude stejná pro všechny body budoucího obrázku - a pro každý komplexní bod s pak budeme zkoumat chování "posunuté" funkce F(z) = f(z)+s. Ta funkce F(z) už je samozřejmě jiná pro každý konkretní bod komplexní roviny. Pokud je tou základní funkcí kvadratická parabola f(z) = z², a tím "posunutím" třeba číslo s = 0,8+1,1i, pak jsme pixelu odpovídajícímu tomuto komplexnímu bodu přiřadili funkci F(z) = z²+0,8+1,1i.

Teď už se jenom musíme podívat, jak z chování té funkce F(z) vydundáme barvu příslušného pixelu.

+++++++++

Jak jsem naznačil v minulém Matykání, komplexní funkce F není nic jiného než skříňka s trpaslíkem, do které vhodíme vstupní komplexní číslo z a trpaslík nám z něj pak udělá nějaký komplexní výstup w = F(z). Fraktály jsou vytvořeny procesem, kterému se říká iterace funkce. Není to nic těžkého: do dané funkce (skříňky) vhodíme určité číslo a to, co nám trpaslík vyhodí na výstupu, vhodíme opět dovnitř a takhle to neustále opakujeme. Cokoliv z funkce na výstupu vypadne vhodíme okamžitě zpátky (vstupním otvorem).

To úplně první vhazované číslo si můžeme vybrat celkem libovolně (o tom více příště), ale typicky se za něj vybírá 0. Pokud tu posloupnost bodů, které postupně vhazujeme do trpaslíkovy skříňky chcete vidět explicitně, můžete si ji představit následující formulkou:

0, F(0), F(F(0)), F(F(F(0))), F(F(F(F(0)))), ....

(ten třetí bod není nic jiného než předchozí výstup znovuvhozený do funkce atd.)

Barvu daného pixelu teď odvodíme z chování této posloupnosti. Zhruba řečeno, pokud ta posloupnost odkráčí do nekonečna, pixel obarvíme barvou (z nějaké předem připravené tabulky barev), která odpovídá počtu kroků, které jsme k tomu potřebovali. Pokud ta posloupnost do nekonečna neodkráčí, to znamená, že se neustále "šmrdlá" poblíž počátku, pak daný pixel obarvíme černě.

A teď trochu přesněji. Protože počítač nezná pojem "odkráčet do nekonečna" a protože výraz "šmrdlat se poblíž počátku" nemá přesný matematický význam, vytyčíme si kolem počátku nějaký pevný a dostatečně velký kruh (obvykle stačí poloměr r=10, ale můžete zkusit i větší) a co bude vně kruhu, bude "v nekonečnu" a co bude uvnitř, bude "blízko počátku".

No a teď už je to barevné přiřazení jasné. Pokud naše posloupnost iterací vyběhne z kruhu během n-tého kroku, obarvíme pixel n-tou barvou z tabulky barev. Pokud z kruhu nikdy nevyběhne, pixel zůstane černý. V ilustracích níže používám tzv. barevné gradienty (aby se barvičky měnily hezky spojitě) - konkretně "TemperatureMap" ze softvéru Mathematica.

V úvodu této fraktální série jsem v souladu s konvencemi vzal za tu základní funkci f(z) = z², pak jsem ji rozšířil i na vyšší mocniny a dnes se podíváme, jak by Mandelbrotova množina vypadala pro komplikovanější komplexní funkce.

V ilustracích níže vám nejprve představím danou "základní" funkci, pak vám ukážu příslušnou Mandelbrotovu množinu vcelku a nakonec z ní udělám několik výřezů, aby bylo vidět, že jak zvětšujeme rozlišení, objevují se nové a nové detaily, často daleko krásnější než to, co bylo vidět ze začátku. Je to tak trochu jako když strčíte nohu mouchy pod mikroskop. Z toho co vypadalo jako nudná končetina je najednou hustý prales chloupků a výstupků. Fraktály jsou to samé. Abyste skutečně odhalili jejich krásu, musíte si udělat výřez a potom výřezy z výřezu a to tak dlouho, dokud vám to váš softvér umožní. Čím hlouběji proniknete, tím větší je šance, že narazíte na něco, co zatím žádné jiné oko nespatřilo.

+++++++++

f(z) = exp(z)

Ten první obrázek vypadá pro znalce Mandelbrotovy množiny možná trochu nezvykle (přece jen exponenciela je podstatně komplikovanější než kvadratická funkce), ale jen co se začneme zaměřovat na detaily, nalezneme velmi podobné konfigurace jako u "kvadratické" Mandelbrotovy množiny. To rybí oko v úvodním obrázku je dáno volbou poloměru r a strmostí barevného gradientu a vhodným přenastavením se dá do jisté míry potlačit.

f(z) = arcsin(z)

Další funkcí na holení bude inverzní komplexní sínus (upravený tak, aby jeho Taylorův polynom začínal kvadratickým členem)

f(z) = cosh(z)

A teď něco z hyperbolického soudku: kosínus.

Ten vypadá už na první pohled trochu jinak, takže jsem postupně udělal několik výřezů z různých částí toho úvodního obrázku. U komplikovanějších funkcí ale musíte počítat s tím, že jejich výpočet není tak přesný jako u kvadratické funkce (obzvlášť u výřezů, kde se parametr s mění v řádu 0.00001), takže ty obrázky nejsou tak ostré jako u klasické Mandelbrotovy množiny.

a teď se mrkneme trochu jinam

a na závěr hyperbolického kosínu ještě nahlédneme semhle:

f(z) = gamma(z)

Poté, co se fraktály úspěšně popasovaly se síny a kosíny, vzal jsem si na paškál jednu z nejkomplikovanějších funkcí - tzv. gamma funkci. V jižní části příslušného fraktálu jsem nalezl kopie kvadratické Mandelbrotovy množiny, ovšem obklopené rojem asteroidů, které nezmizely ani když jsem přešel k výřezům (odkud se ty asteroidy berou netuším).

Poté jsem se přesunul do jihovýchodního výběžku, kde ty asteroidy zmizely, ale protože gamma funkce už je opravdu na výpočet docela komplikovaná, obrázky "vyřezané" z této oblasti postrádají propracovanost, jelikož počítač nedokáže chování pro jednotlivé hodnoty parametru s přesně odlišit.

a ani na severu úvodního obrázku jsem příliš krásy nenalezl

f(z) = tanh(z)

Ještě větší průšvih nastal, když jsem si vzal hyperbolický tangens. Tato funkce má v komplexní rovině spoustu pólů a její fraktál je v jistém smyslu inverzní. Zatímco klasická Mandelbrotova množina vypadá jako černé moře obklopené pevninou barev, zde jsem nalezl barevné moře v černé pevnině. Na druhém obrázku uvidíte detail té žluté skvrny.

f(z) = sqrt(z)

V minulém Matykání jsem se zmínil, že komplexní logaritmus má problém se spojitostí, který pak zdědí všechny funkce z něho odvozené - například druhá odmocnina. Při pohledu na fraktál z ní odvozený si můžete všimnout, že některé jeho oblasti jsou zalomené - asi tak jako když pozorujete tužku ve sklenici vody. To je právě způsobené tou nespojitostí v definici komplexního úhlu (a tedy i logaritmu a jeho odvozenin). V jižní části prvního obrázku vidíte, že ten fraktál je tam celý takový "rozsypaný" (detail této oblasti je na obrázku třetím).

f(z) = z²

A abychom se nerozloučili takovými ošklivými obrázky, dáme si na závěr pár výřezů z klasické (kvadratické) Mandelbrotovy množiny.

+++++++++

Předchozí díly série "Cesta do hlubin fraktálovy duše"

Autor: Jan Řeháček | středa 9.8.2017 9:09 | karma článku: 19.57 | přečteno: 697x

Další články blogera

Jan Řeháček

Ctnost nacionalismu (Yoram Hazony)

Titul "Konzervativní kniha roku", kterou uděluje "Intercollegiate Studies Institute", si za rok 2019 odnesla publikace izraelského filosofa Yorama Hazonyho "Ctnost nacionalismu". Tady je pár úryvků a postřehů z jejího přečtení.

15.5.2019 v 9:09 | Karma článku: 16.44 | Přečteno: 321 | Diskuse

Jan Řeháček

Matykání: entropie - pořádku upije, ale bordelu nepřidá

Jednou z nejzáhadnějších fyzikálních - přesněji řečeno termodynamických - veličin je entropie. I matematika má svoji verzi této tajnůstky - říká se ji Shannonova informační entropie - a s tou fyzikální pochopitelně trochu souvisí.

9.5.2019 v 9:09 | Karma článku: 15.63 | Přečteno: 535 | Diskuse

Jan Řeháček

Všechno nejlepší, milá Země

Když se někdy dívám na strohé fotografie z Marsu nebo Venuše, tak si říkám jakou máme kliku, že žijeme na takové báječné planetě. Jednoznačně Miss Universe. A protože má dnes svátek, zavedu vás na devět obzvlášť povedených míst.

22.4.2019 v 9:09 | Karma článku: 19.72 | Přečteno: 371 | Diskuse

Jan Řeháček

Růžičky z Riemannovy zahrádky

Nastalo nám jaro a tak si uděláme výlet na školní pozemky. Podíváme se na pár technických detailů dotýkajících se jednoho staršího Matykání o Zeta funkci. Kdo má alergii na řecká písmenka a popínavé rostliny, může zůstat doma.

9.4.2019 v 9:09 | Karma článku: 16.78 | Přečteno: 365 | Diskuse

Další články z rubriky Věda

Dana Tenzler

Kolik vydržíte “radioaktivity”?

A jak je na tom váš psí přítel nebo třeba myš a ryba? Ne každý je stejně citlivý - a někteří savci vydrží v relativním zdraví obdivuhodnou dávku ionizujícího záření. (délka blogu 10 min.)

20.5.2019 v 8:00 | Karma článku: 23.30 | Přečteno: 496 | Diskuse

Julius Maksa

Fotoelektrický jev.

Vysvětlil Albert Einstein tento jev správně? Způsobuje emisi elektronů dopady kvant fotonů? Proč tento jev neuměli vědci vysvětlit klasickou fyzikou? Na tyto a jiné otázky se pokusím odpovědět

19.5.2019 v 18:49 | Karma článku: 6.83 | Přečteno: 353 | Diskuse

Jan Sova

Závažné kontaminace očkovacích látek v posledních letech a jejich vážná rizika

V českých médiích vystupuje odborná veřejnost prakticky jednotně v smyslu, že podávání vakcín je zdraví prakticky neškodné. Zahraniční odborná veřejnost však podobně jednotného názoru není.

19.5.2019 v 12:26 | Karma článku: 21.05 | Přečteno: 970 | Diskuse

Dana Tenzler

Proč se nemají házet lahve z modrého skla do kontejneru s hnědým sklem?

Sklo je vlastně optimální materiál k uchovávání potravin. Nemá žádnou vlastní chuť, nevyvanou z něj žádné škodliviny a dá se zhotovit v různých barvách. Má to ale jeden háček. (délka blogu 10 min.)

16.5.2019 v 8:00 | Karma článku: 32.01 | Přečteno: 2377 | Diskuse

Jan Fikáček

Není náhodou náš reálný vesmír jen abstrakce?

Slyšeli jste někdy termín holografický vesmír? Tato hypotéza předpokládá, že náš 3D vesmír je pouze projekce jeho 2D hranice. Něco jako skutečný hologram, který je sice vlastně 2D obrazem, ale vidíme v něm 3D objekty.

13.5.2019 v 9:12 | Karma článku: 38.98 | Přečteno: 2070 | Diskuse
VIP
Počet článků 277 Celková karma 18.93 Průměrná čtenost 862

Devátý nejhorší kuchař na světě, odpůrce politické překorektnělosti, začínající marťan, neúnavný konzument točeného kyslíku a jazykový dobrodruh ab incunabulis. Člen Analytického piva a Gustavu pro jazyk český. Správce Vojensko-českého slovníku.

Najdete na iDNES.cz