F6060 Programování zkouška

Přírodovědecká fakulta
jaro 2021
Rozsah
0/0/0. 2 kr. Ukončení: zk.
Vyučující
doc. Mgr. Jiří Chaloupka, Ph.D. (přednášející)
prof. Mgr. Dominik Munzar, Dr. (přednášející)
Garance
prof. Mgr. Dominik Munzar, Dr.
Ústav fyziky kondenzovaných látek – Fyzikální sekce – Přírodovědecká fakulta
Kontaktní osoba: prof. Mgr. Dominik Munzar, Dr.
Dodavatelské pracoviště: Ústav fyziky kondenzovaných látek – Fyzikální sekce – Přírodovědecká fakulta
Předpoklady
Znalost programování v některém z vyšších programovacích jazyků (Python, C, C++, GNU Octave a Matlab, Java, Ruby, Fortran apod.)
Omezení zápisu do předmětu
Předmět je otevřen studentům libovolného oboru.
Cíle předmětu
osvojení si základů programování pro studenty fyzikálních oborů
Výstupy z učení
Absolvováním zkoušky student osvědčí:
- schopnost řešit jednoduché fyzikální úlohy vyžadující programování počítače
- osvojení si základů programování ve vyšším programovacím jazyce vhodném k jednoduchým numerickým výpočtům (doporučené jsou Python, C, C++, GNU Octave a Matlab, Java, Ruby, Fortran)
- aktivní znalost softwarových prostředků potřebných k zápisu programů a jejich kompilaci/spouštění (dle vlastní volby)
- schopnost porozumět popisu algoritmu numerického řešení fyzikálních úloh
- schopnost převést příslušný algoritmus do zvoleného programovacího jazyka včetně odladění
Osnova
  • Příklady témat úloh ke zkoušce:
  • - vyčíslení součtu nekonečné řady (sumace se zadanou přesností)
  • - fyzikální problém vyžadující řešení transcendentní rovnice (řešení jednoduchou metodou popsanou v zadání, např. metodou půlení intervalu nebo Newtonovou metodou)
  • - fyzikální problém vyžadující numerickou integraci (vyčíslení předepsaným jednoduchým integračním pravidlem s fixními polohami uzlů)
  • - studium dynamického systému vyžadující řešení systému obyčejných diferenciálních rovnic (řešení metodou popsanou v zadání, např. Eulerovou)
  • - prokládání dat lineárním modelem (načtení souboru s daty, sestavení soustavy rovnic pro koeficienty lineáního modelu a její řešení)
  • - statistické zpracování většího množství dat (zpracování velkého souboru nebo řady souborů, výpočet statistických kvantifikátorů, sestavení histogramu apod.)
  • - velmi jednoduché Monte Carlo simulace (např. cyklus s rozhodováním na základě vygenerovaného náhodného čísla)
Literatura
  • KINDER, Jesse M. a Philip Charles NELSON. A student's guide to Python for physical modeling. Princeton: Princeton University Press. xiii, 139. ISBN 9780691170503. 2015. info
Výukové metody
Domácí příprava ke zkoušce s použitím vzorových zkouškových úkolů.
Metody hodnocení
Student absolvuje praktickou zkoušku, při které během vymezené doby sestaví program řešící zadaný úkol z předem známých okruhů. Podmínkou úspěšného absolvování zkoušky je správné fungování programu.
Informace učitele
https://www.physics.muni.cz/~chaloupka/F6060/
Další komentáře
Studijní materiály
Předmět je zařazen také v obdobích jaro 2020, jaro 2022, jaro 2023, jaro 2024, jaro 2025.