pokročilé programovanie iidavinci.fmph.uniba.sk/~markos3/prednasky/pq-2-may.pdf · 2020. 2....

20
Pokročilé programovanie II Nelineárne iteračné schémy, chaos, fraktály Peter Markoš Katedra experimentálnej fyziky F2-253 Letný semester 2019/2020

Upload: others

Post on 08-Feb-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

  • Pokročilé programovanie IINelineárne iteračné schémy, chaos, fraktály

    Peter Markoš

    Katedra experimentálnej fyziky F2-253

    Letný semester 2019/2020

  • Obsah

    Nelineárne iteračné schémy majú nečakané riešenia. Môžeme nimimodelovať niektoré javy, pozorované v prírode a interpretovať ichprekvapujúce časové priebehy.

    I Logistická mapa - May

    I Period doubling

    I Podivný atraktor

    I Fraktál. definícia, metóda výpočtu fraktálnej dimenzie

    I Zadanie úlohy 2.

    I Dodatok: Intermitencia, phase locking

  • MayNajjednoduchšia nelineárna diferenčná schéma:

    xn+1 = f (xn) = λxn(1− xn)Zaujíma nás, ako sa postupnosť x1, x2, . . . vyvíja v závislosti od hodnotyparametra λ

    0 0.2 0.4 0.6 0.8 1

    xn

    0

    0.2

    0.4

    0.6

    0.8

    1

    xn+1

    λ = 1.5

    0 0.2 0.4 0.6 0.8 1

    xn

    0

    0.2

    0.4

    0.6

    0.8

    1

    xn+1

    λ = 2.5

    Pre λ > 1 existuje stabilný pevný bod x̂ = 1− λ−1 ktorý je riešenímrovnice

    x̂ = f (x̂)

    Ale . . .

  • May

    Podmienka stability:∣∣∣∣∂f∂x∣∣∣∣x=x̂

    < 1

    Pevný bod sa stane nestabilným, ak λ > 3 lebo

    ∂f

    ∂x

    ∣∣∣∣∣x=x̂

    = 2− λ

    Vzniknú miesto neho dva nové sta-bilné body

    xn+2 = f (f (xn)) = f(2)(xn)

    nastal period doubling(vidličková bifurkácia)

    0 0,2 0,4 0,6 0,8 1

    xn

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    λ = 3.2

  • May

    Interpretácia nestability pevného bodu:

    0 0,2 0,4 0,6 0,8 1

    xn

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    λ = 3.2

    0 0,2 0,4 0,6 0,8 1

    xn

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+2

    λ = 3.2

    Dva stabilné pevné body, medzi nimi jeden nestabilný.Kritérium stability:∣∣∣∣∂F (x = x̂)∂x

    ∣∣∣∣ < 1

  • MayĎalší nárast parametra λ spôsobí nárast periódy:

    0 0,2 0,4 0,6 0,8 1

    xn

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+4

    λ = 3.53

    0,75 0,8 0,85 0,9

    xn

    0,8

    0,85

    0,9

    xn+4

    λ = 3.53

    0 0,2 0,4 0,6 0,8 1

    xn

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    λ = 3.5699

    0 0,2 0,4 0,6 0,8 1

    xn

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    λ = 3.97

  • MayFeigenbaum:

    I séria kritických hodnôt λn v ktorých dochádza k zdvojnásobeniuperiódy (period doubling)

    I univerzálne škálovanie:

    αn =λn−1 − λn−2λn − λn−1

    n perioda λn αn1 2 3 ¯2 4 3.4494897 ¯3 8 3.5440903 4.75144 16 3.5644073 4.65625 32 3.5687594 4.66836 64 3.5696916 4.66867 128 3.5698913 4.66928 256 3.5699340 4.6694

    https://en.wikipedia.org/wiki/Feigenbaum constants

  • May

    Zostrojme pravdepodobnostné rozdelenie hodnôt xn (n < N) Ak1 < λ < 3 tak

    p((xn) = Nδxn,x̂

    Pre periodický dej s periódou P iteračná schéma prechádza bodmix̂1, x̂2, . . . x̂P a

    p(x) =P∑i

    N

    Pδx,x̂i

  • May

    Existujú hodnoty λ, pre ktoré nenájdeme periodický režim. Napr. pre

    λ∗ = 3.56995

    Pozorujeme deterministický chaos

    0 0,2 0,4 0,6 0,8 10

    1e+06

    2e+06

    3e+06

    Pravdepodobnostné rozdelenie p(x) po N = 109 iteráciách.

  • MayPostup (Algoritmus výpočtu pravdep. rozdelenia).I rozdeľ interval (0, 1) na M dielov (napr. M = 5 000 000)

    deklaruj pole h(M) = 0 a ∆ = M−1

    I iteruj N iterácií xi = f (xi−1), i = 1, 2, . . .N (N ≥ 109)po každej iterácii počítajindex = INT(xi ∗M) +1h(index) = h(index)+1

    I po skončení iterácii vypíš výsledok:pre i=1,Mak h(i)>0 tak print i/M, h(i)

    I Normovanie:

    h(index)→ 1N∆

    h(index)

    Normovanie potrebujeme, aby platilo∫p(x)dx =

    N∑i

    ∆p(xi ) =N∑i

    hi = 1

    V našom prípade ho môžeme preskočiť.

  • May: self-similarity

    0 0,2 0,4 0,6 0,8 10

    1e+06

    2e+06

    3e+06

    0,8 0,85 0,90

    1e+06

    2e+06

    3e+06

  • May: self-similarity

    0,8 0,85 0,90

    1e+06

    2e+06

    3e+06

    0,83 0,835 0,840

    5e+05

    1e+06

    Typická vlastnosť fraktálnej množiny.

  • Cantorova množinaAlgoritmus: nekonečný počet iterácií:

    Fraktál s fraktálnou dimenziou

    df =ln 2ln 3

    Pretože: ak meriam jeho “hmotnosť” M meradlom dĺžky ∆, dostanem

    M = ∆−df ×∆

    Obyčajná úsečka má samozrejme df = 1, pretože získaná hmotnosťnezávisí od delenia.

  • Fraktálna dimenzia

    Vráťme sa k nášmu rozdeleniu bodov xn. Ak vyplníme len intervaly, vktorých h(i) 6= 0, dostaneme fraktálnu množinu:

    Nájdeme jej fraktálnu dimenziu:

  • Fraktálna dimenzia

    I zvolím m = 2, 3, . . . a rozdelím interval (0,1) na M = 2m dielikov

    I nájdem N(m) - počet dielikov, v ktorých leží časť nášho fraktálu

    I urobím log-log plot N(m) vs M a nájdem df zo smernice

    N(m) ∝ Mdf

  • Diskusia:Interval (0, 1) rozdelíme na M = 2m dielikov. Iterujeme Mayovu schému vN krokoch a nájdeme pole h.I pre veľmi malé hodnoty m dostaneme nedôveryhodné výsledkyI pre veľké m dostaneme df → 1 pretože sme fraktál zostrojili len z

    konečného počtu intervalov.I fraktál vidíme len v oblasti, kde N > M.

    0 5 10 15

    ln M

    0

    5

    10

    ln N

    0.540

    0.967

  • Úloha 2

    Povinná a nepovinná, ale zaujímavá.

    1. Napíšte program pre nelineárnu schému (May). Presvedčte sa, žezmenou parametra λ zmeníte periódu deja.

    2. Pre λ = 3.56995 iterujte nelinárnu schému (aspoň 109 iterácií).Zostrojte pravdepodobnostné rozdelenie p(x) ukážte jehoself-podobnosť.

    3. Nájdite fraktálnu dimenziu.

  • Iná nelineárna schéma - phase locking

    Nelineárny iteračný proces (má základ vo fyzikálnych dejoch)

    xn+1 = xn + Ω−k

    2πsin(2πxn) (mod 1)

    k . . . koeficient nelinearity

    0 0,2 0,4 0,6 0,8 1x

    n

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    Omega=0.5, k=0

    0 0,2 0,4 0,6 0,8 1x

    n

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    Omega=0.5, k=0.5

    0 0,2 0,4 0,6 0,8 1x

    n

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    Omega=0.51, k=0.95

    Phase locking - proces je periodický aj keď Ω 6= p/q.

  • Intermittencia

    0 0,2 0,4 0,6 0,8 1x

    n

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    Omega=0.08, k=0.44

    0 0,2 0,4 0,6 0,8 1x

    n

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    Omega=0.08, k=0.44

    0 20 40n

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn

    Pre niektoré hodnoty parametrov systém veľmi dlho zotrvá v blízkostinejakých hodnôt, a potom sa prudko v krátkom období zmení. Ukážka,ako nelinearita ovplyvňuje stabilitu systému.

  • Intermittencia

    0 0,2 0,4 0,6 0,8 1

    xn

    0

    0,2

    0,4

    0,6

    0,8

    1

    xn+1

    k = 0.85 Ω = 0.13529

    0 500 1000 1500 2000 2500 3000n

    0

    0,2

    0,4

    0,6

    0,8

    xn

    k = 0.85 Ω = 0.13529

    Iný príkald intermittencie. Všimnime si, že perióda stability môźe byťveľmi dlhá. Stabilita je prerušovaná krátkymi obdobiami, kedy sa sytémnáhle vzdiali od rovnováhy.