Založ si blog

Simulácia Brownovho pohybu v Pythone

Učím na Základnej škole Krosnianska 4 v Košiciach, ktorá okrem bežných tried má v každom ročníku jednu až dve triedy pre talentované deti. Žiaci týchto tried počas školského roka popri bežnom učive okrem iného pracujú aj na ročníkových prácach, v ktorých spracujú tému, ktorú si sami vyberú a ktorá ich zaujíma. Začiatkom tohto školského roka, má oslovil žiak ôsmej triedy, Adam Garafa, či by som mu nerobil konzultanta k jeho ročníkovej práci. Chcel v nej spracovať nejakú fyzikálnu oblasť, v ktorej by simuloval na počítači nejaký fyzikálny dej. Jeho pôvodná predstava bola simulovať Archimedov zákon, po diskusiách sme sa dohodli, že bude simulovať javy zo štatistickej fyziky, konkrétne Brownov pohyb.

Ako prostredie na programovanie si vybral programovací jazyk Python. Ja sám som dovtedy s týmto jazykom nepracoval, takže som mu poskytol len niekoľko námetov, vzorcov, odkazy na stránky, v ktorých k téme niečo môže nájsť, filozofiu algoritmizácie daného problému. Druhým konzultantom bola kolegyňa Anna Siváková, ktorá ho učí informatiku a zároveň k nej chodí na krúžok programovania. Ja som ho učil fyziku, ale inak učím aj informatiku a moja diplomová práca bola na tému využitie počítačov vo výuke fyziky (bolo to ešte v roku 1987).

Zaujímavým aspektom toho, ako k spracovaniu témy pristúpil bolo, že sa rozhodol pracovať nie na bežnom PC ale na počítači Raspberry Pi, ktorý pracuje pod operačným systémom LINUX. Takže musel zvládnuť nielen prácu v Pythone, ale aj tento operačný systém. Výhodou počítača Raspberry Pi je, že je veľmi lacný a nie je oveľa väčší než mobilný telefón (ak nerátame klávesnicu a myš).

Adamovu prácu možno nájsť na tejto adrese.

Na školskej konferencii skončil Adam v sekcii informačné technológie na prvom mieste, i keď mal vážnych konkurentov (keďže simuloval fyzikálny dej, rovnako tak mohol súťažiť v sekcii fyzika). Po konferencii mi poskytol zdrojový text, medzičasom som Python naištaloval na vlastný NB, trochu som sa so zdrojákom pohral, popri simulácii Brownovho pohybu som doplnil i simuláciu gravitácie, medzimolekulových síl, slnečnej sústavy a na základe Adamovho modelu po zmene príslušných parametrov by bolo možné simulovať množstvo iných fyzikálnych javov.

Trochu som sa s jeho zdrojákom pohral, program prehnal profilerom, takže optimalizáciou algoritmov, využitím akceleračných utilít, simulácia teraz beží niekoľkonásobne rýchlejšie. Už Adama napadlo použiť na zaznamenané počítačové experimenty GIF animáciu a pri prezentácii na konferencii namiesto spustenia simulácie na počítači púšťal GIF animáciu. Na internete existuje niekoľko rôznych online nástrojov, ktoré umožňujú previesť obrázky do animovaného GIF formátu, väčšina z nich má nejaké obmedzenia či už na veľkosť jednotlivých obrázkov alebo na celkový počet použitých obrázkov. K Pythonu existujú aj rozširujúce moduly, ktoré umožňujú vytvárať aj GIF animácie, takže zatiaľ len na ochutnávku animácia vytvorená online nástrojom a v budúcnosti snáď pridám omnoho dlhšie GIF animácie. Na nich možno rýchlo ukázať, že pri každom behu programu sa za inak rovnakých podmienok simulované peľové zrnko chová vždy inak. Pri podrobnejšom skúmaní však možno zistiť, že aj v chaose sú nejaké zákonitosti. Priemerná dĺžka prejdenej dráhy je pri tej istej teplote za jednotku času konštantná. Mimochodom, prvý, kto popísal správanie sa mikroskopických telies v kvapaline, bol Albert Einstein a bol to prvý experimentálne overiteľný dôkaz reálnej existencie molekúl.

  1. Einstein, AdP 17, 132 (1905) [17 pp.] (EAP, 164; CPE 2, 149)

      Über einen die Erzeugung und Verwandlung des Lichtes betreffenden

      heuristischen Gesichtspunkt

GIF animácia vytvorená online službou Imgflip. Bezplatná verzia je neobmedzená na počet obrázkou (možno tam nejaké obmedzenie bude, keď som poslal 2000 obrázkov, tak generovanie GIF animácie po niekoľkých minútach zlyhalo.). Bezplatná verzia je obmedzená na veľkosť vygenerovaného obrázka a pridáva doň logo služby. Snáď sa mi podarí rozchodiť vlastný GIF animátor v Pythone.

Červená čiara je dráhou pohybu peľového zrnka, ďalšie tri čiary sú záznamom pohybu troch náhodne vybraných molekúl. Dráha molekúl je mnohonásobne dlhšia, než peľového zrnka.

Zdrojový text zverejním neskôr, keď doladím používateľskú prítulnosť.

 

 

Diplomovka

15.11.2020

Obhájil som diplomovku, ani neviem ako. Sám som si ju nenapísal, predsa nie som pako. Študentky a študentíci, načo študujete, v parlamente vedomosti nepotrebujete. Predseda nám vždy ukáže, jak hlasovať treba, sám volič si za to môže, že nemá na chleba. My musíme nosiť rúška, Igor však nemusí, že sme preňho iba svoloč, zverejní statusy, o ponožkách, o [...]

Prechádzka od 1: 00 do 5: 00

14.11.2020

Poďme sa priatelia prechádzať od jednej do piatej poďme to spolu spočítať tej vláde prekliatej. Boli sme sa spolu testovať, postáli si v rade, boli sa spolu nakaziť, nech covid je všade. Poďme si spoločne vypočuť tlačovku Matelka, keď je tam tento nedouk, vypína sa telka. Spoločne sme si to skazili, pravdu má premiér, veď sme ho na jar zvolili, takže je všetko fér.

Plošné testovanie a žonglovanie s číslami (2)

10.11.2020

V predchádzajúcom článku som z matematického pohľadu analyzoval prvé kolo plošného testovania. Po druhom kole k tomu v podstate nemožno nič nové zmysluplného dodať, iba možno konštatovať Pat a Mat (Naď a Matovič) naďalej žonglujú s číslami, ako sa im zachce. Bez ohľadu, aké percento pozitívnych by v druhom kole vyšlo, bol by to dôkaz toho, že plošné testovanie Ag [...]

NR SR, protest

Pred parlamentom sa zišli stovky ľudí. Protestovali proti zásahom do kultúry i životného prostredia

16.04.2024 19:48

Poukázali na to, že vláda má vynakladať maximum úsilia, aby sa kľúčové piliere demokracie mohli rozvíjať slobodne, participatívne a udržateľne.

Izraelskí vojaci / IZ Armáda / Pásmo Gazy / Tank /

Izraelská armáda tvrdí, že zabila veliteľa Hizballáhu

16.04.2024 19:19

Tá uviedla, že jedno z jej lietadiel „zasiahlo a zlikvidovalo“ veliteľa Hizballáhu v oblasti Ain Ebel v Libanone.

munícia, 155

Slovensko sa zbierkou pripojilo k iniciatíve českej vlády na nákup munície pre Ukrajinu

16.04.2024 18:40

Do zbierky sa zapojilo už viac ako dvadsať krajín. Ako pripomenulo občianske združenie Mier Ukrajine, slovenská vláda sa pridať odmietla.

Rusko oteplenie záplavy Orenburg Tomsk rieka

Ruské úrady nariadili evakuáciu záplavami ohrozených lokalít na západe Sibíri

16.04.2024 18:20

Obyvatelia záplavami postihnutých regiónov sa sťažujú na nedostatok pomoci zo strany miestnych i federálnych úradov.

Tibor Menyhért

Tak dlho sa hádali na maličkostiach, až z toho bola veličkosť

Štatistiky blogu

Počet článkov: 160
Celková čítanosť: 475204x
Priemerná čítanosť článkov: 2970x

Autor blogu

Kategórie