Články

7.2: Vizualizácia fázového priestoru - matematika


Fázový priestor modelu spojitého času, keď je čas diskretizovaný, je možné ho vizualizovať presne rovnakým spôsobom, ako tomu bolo v kapitole 5, pomocou kódov 5.1 alebo 5.2. To je úplne jemné. Medzitým Python’smatplotlibmá špecializovanú funkciu tzvstreamplot, ktorý je presne navrhnutý na kreslenie fázových priestorov modelov kontinuálneho času. Funguje to iba pre dvojrozmerné vizualizácie fázového priestoru, ale jeho výstup je dosť čistý a prepracovaný. Túto funkciu môžete použiť takto:

Thestreamplotfunkcia má štyri argumenty. Prvé dva (xhodnotyayvalue) sú diskretizovanéX- ar-hodnoty vo fázovom priestore, z ktorých každý je daný ako dvojrozmerné pole. Funkcia meshgrid generuje taképoleSlúži na tento účel. Hodnota 0,1 v rozsahu určuje rozlíšenie priestoru. Posledné dva argumenty (xdotaydot) opíšte hodnoty (dx / dt ) a (dy / dt ) pre každý bod. Každý zxdotaydotby tiež malo byť dané ako dvojrozmerné pole, ale odxhodnotyayvaluesú už v štruktúre poľa, môžete priamo na nich vykonávať aritmetické operácie, ako je uvedené v kóde vyššie. V tomto prípade je vizualizovaným modelom nasledujúce jednoduché rovnice dravec-korisť:

[ frac {dx} {dt} = x-xy label {(7.10)} ]

[ dfrac {dy} {dt} = -y + xy label {(7.11)} ]

Výsledok je znázornený na obr. 7.2.1. Ako vidíte,streamplotFunkcia automaticky upravuje hustotu kriviek vzorky, ktoré sa majú vykresliť, aby bola štruktúra fázového priestoru ľahko viditeľná pre oko. Taktiež pridáva šípky do kriviek, aby sme pochopili, ktorým smerom je stav systému v dôsledku.

Jednou príjemnou vlastnosťou fázového priestoru modelu s nepretržitým časom je, že keďže je model opísaný v spojitých diferenciálnych rovniciach, ich trajektórie vo fázovom priestore sú plynulé bez toho, aby došlo k náhlemu skoku alebo vzájomnému pretínaniu. Vďaka tomu je ich štruktúra fázového priestoru všeobecne viditeľnejšia a zrozumiteľnejšia ako štruktúra diskrétnych modelov.

Cvičenie ( PageIndex {1} )

Nakreslite fázový priestor nasledujúcej diferenciálnej rovnice (pohyb jednoduchého kyvadla) v Pythone:

[ frac {d ^ {2} theta} {dt ^ {2}} = - frac {g} {L} sin theta label {(7.12)} ]

Navyše takáto plynulosť modelov kontinuálneho času nám umožňuje analyticky vizualizovať a skúmať štruktúru ich fázového priestoru. Typickým východiskovým bodom je nájsť nulové čiary vo fázovom priestore. Nullcline je množina bodov, v ktorých sa najmenej jedna z časových derivácií stavových premenných stane nulovou. Tieto nullclines slúžia

Obrázok ( PageIndex {1} ): Fázový priestor nakreslený kódom 7.1.

ako „steny“, ktoré oddeľujú fázový priestor do viacerých susediacich oblastí. Vo vnútri každého regiónu sa znaky časových derivátov nikdy nemenia (ak by sa tak stalo, boli by zachytené v nullcline), takže iba vzorkovanie jedného bodu v každej oblasti vám poskytne hrubý obraz o tom, ako vyzerá fázový priestor. Naučme sa, ako tento analytický proces funguje s nasledujúcim (Lotka-Volterrovým modelom ):

[ frac {dx} {dt} = sekera -bxy label {(7.13)} ]

[ frac {dy} {dt} = -cy + dxy label {(7.14)} ]

[x geq0, y geq0, a> 0, b> 0, c> 0, d> 0 štítok {(7.15)} ]

Najskôr nájdite nulové čiary. Toto je dvojrozmerný systém s dvoma, takže musia existovať dve sady nullclines; jedna množina je odvodená od ( frac {dx} {dt} = 0 ) a iná množina je odvodená od ( frac {dy} {dt} = 0 ). Môžu byť získané riešením každej z nasledujúcich rovníc:

[0 = ax -bxy label {(7.16)} ]

[0 = -cy + dxy label {(7.17)} ]

Prvá rovnica dáva

[x = 0 alebo y = frac {a} {b}. label {(7.18)} ]

Jedná sa o dve priame čiary, ktoré tvoria jednu sadu nullklinov pre frac {dx} {dt} = 0 ) (t. J. Každý riadok by ste mohli nazvať jedným nullklinom). Medzitým dáva druhý

[y = 0 alebo x = frac {c} {d}. label {(7.19)} ]

Tieto dva riadky opäť tvoria ďalšiu množinu nullklín pre ( frac {dy} {dt} = 0 ). Tieto výsledky je možné vizualizovať manuálne, ako je to znázornené na obrázku 7.2.2. Rovnovážné body existujú tam, kde sa pretínajú dve sady nulových línií.

Všade na prvej množine nullclines je ( frac {dx} {dt} ) nula, tj. V stave systému nedochádza k „horizontálnemu“ pohybu. To znamená, že všetky miestne trajektórie na týchto nulových polohách a v ich blízkosti musia smerovať kolmo. Podobne všade na druhej sade nullklinov je ( frac {dy} {dt} ) nula, preto nedochádza k „vertikálnemu“ pohybu a všetky miestne trajektórie prúdia horizontálne. Tieto fakty možno vo fázovom priestore naznačiť pridaním drobných čiarových segmentov do každého nullclinu (obr. 7.2.3).

Teraz je fázový priestor rozdelený do štyroch oblastí. Je zaručené, že trajektórie v každom z týchto regiónov prúdia iba v jednej z nasledujúcich štyroch smerových kategórií:

[ cdot frac {dx} {dt}> 0, frac {dy} {dt}> 0 ("na severovýchod") ]

[ cdot frac {dx} {dt} <0, frac {dy} {dt}> (na "severozápad") ]

[ cdot frac {dx} {dt}> 0, frac {dy} {dt} <0 (na „juhovýchod“) ]

[ cdot frac {dx} {dt} <, frac {dy} {dt} <0 (na „Juhozápad“) ]

Vo vnútri ktorejkoľvek oblasti sa trajektória nikdy neprepína medzi týmito štyrmi kategóriami, pretože ak by sa tak stalo, musel by sa už takýto prepínací bod objaviť ako súčasť nulových línií. Preto je dostatočné vzorkovanie iba jedného bodu z každej oblasti postačujúce na to, aby ste vedeli, ktorým smerom sa pohybujú trajektórie. Napríklad môžete zvoliť ((2c / d, 2a / b) ) ako vzorkovací bod v pravej hornej oblasti. Túto súradnicu zapojíte do modelových rovníc, ktoré získate

[ frac {dx} {dt} | _ {(x, y) = ( frac {2c} {d}, frac {2a} {b})} = a frac {2c} {d} - b frac {2c} {d} frac {2a} {b} = - frac {2ac} {d} <0, label {(7.20)} ]

[ frac {dy} {dt} | _ {(x, y) = ( frac {2c} {d}, frac {2a} {b})} = - c frac {2a} {b} + d frac {2c} {d} frac {2a} {b} = frac {2ac} {b}> -. label {(7.21)} ]

Preto môžete povedať, že trajektórie sú v tomto regióne spôsobené „severozápadom“. Ak zopakujete rovnaké testovanie pre ďalšie tri oblasti, získate prehľad fázového priestoru modelu zobrazeného na obr. 7.2.4, ktorý ukazuje cyklické správanie spôsobené interakciou medzi korisťou ( (x )) a populácie predátorov ( (y )).

Obrázok ( PageIndex {4} ): Kreslenie fázového priestoru (3): Pridanie smerov trajektórií v každej oblasti.

Tento druh manuálnej rekonštrukcie štruktúry fázového priestoru vám nemôže povedať presný tvar konkrétnej trajektórie, ktorý sa zvyčajne získava pomocou numerickej simulácie. Napríklad vo vyššie ručne nakreslenom fázovom priestore vieme iba to, že správanie systému sa pravdepodobne otáča okolo rovnovážneho bodu v ((x, y) ) = ((c / d, a / b) ) , ale nemôžeme povedať, či sú trajektórie uzavretými obežnými dráhami, špirálou do rovnovážneho bodu alebo špirálou od rovnovážneho bodu, kým numericky simulujeme správanie systému.

Z tohto dôvodu je v tejto analytickej práci stále niečo dobré. Po prvé, analytické výpočty nulových línií a smerov trajektórií poskytujú informácie o základnej štruktúre fázového priestoru, čo je niekedy v numericky vizualizovanom fázovom priestore nejasné. Po druhé, analytická práca vám umožní vytvoriť fázový priestor bez zadania podrobných hodnôt parametrov (ako sme to urobili v príklade vyššie), ktorých výsledok je všeobecnejší so širšou použiteľnosťou pre systémy v reálnom svete ako vizualizácia fázového priestoru so špecifickými hodnotami parametrov.

Cvičenie ( PageIndex {1} )

Nakreslite obrys fázového priestoru nasledujúceho modelu SIR (tu je vynechaná premenná (R )) štúdiom nulových línií a odhadom smerov trajektórií v každej oblasti oddelenej týmito nulovými líniami.

[ frac {dS} {dt} = -aSI label {(7.22)} ]

[ frac {dI} {dt} = aSI-bI label {(7.23)} ]

[S geq 0, I geq 0, a> 0, b> 0 label {(7.24)} ]

Cvičenie ( PageIndex {2} )

Nakreslite obrys fázového priestoru nasledujúcej rovnice štúdiom nulových línií a odhadom smerov trajektórií v každej oblasti oddelenej týmito nulovými líniami.

[ frac {d ^ {2} x} {dt ^ {2}} - x frac {dx} {dt} + x ^ {2} = 0 label {(7.25)} ]


Pozri si video: Matematika 1. 0202. Számsorozatok konvergenciája I. (Október 2021).