TFNPF0001 Symbolické výpočty

Fyzikální ústav v Opavě
zima 2020
Rozsah
2/2/0. 6 kr. Ukončení: zk.
Vyučující
doc. RNDr. Stanislav Hledík, Ph.D. (přednášející)
doc. RNDr. Stanislav Hledík, Ph.D. (cvičící)
Garance
doc. RNDr. Stanislav Hledík, Ph.D.
Fyzikální ústav v Opavě
Rozvrh
St 15:35–17:10 425
  • Rozvrh seminárních/paralelních skupin:
TFNPF0001/01: St 17:15–18:50 425, S. Hledík
Předpoklady
(FAKULTA(FU) && TYP_STUDIA(N))
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Seznámení s principy programování ve Wolfram Language, s důrazem na rule-based programming a funkcionální programování, a jejich využití pro rutinní matematické postupy při úpravě a analýze výrazů, rovnic, integrálů a diferenciálních rovnic apod., s cílem účinně a rychle řešit matematické a fyzikální problémy.
Výstupy z učení
Student bude po úspěšném absolvování předmětu:
- ovládat programování ve Wolfram Language s důrazem na rule-based programming a funkcionální programování;
- umět využívat Wolfram Language pro rutinní matematické postupy při úpravě a analýze výrazů, rovnic, integrálů a diferenciálních rovnic;
- schopen pomocí Wolfram Language účinně a rychle řešit matematické a fyzikální problémy;
Osnova
  • (1) Úvod do Wolfram Language.
    (2) Základy programování ve Wolfram Language: výrazy (expressions), seznamy (lists).
    (3) Vzory a pravidla (patterns and rules), funkcionální programování (a jeho srovnání s procedurálním programováním).
    (4) Numerické programování a jeho specifika.
    (5) Grafika a vizualizace.
    (6) Řešení lineárních a nelineárních rovnic.
    (7) Diferenciální a integrální počet.
    (8) Práce s textovými řetězci.
    (9) Externí operace: práce se soubory, import a export.
    (10) Rekurzivní programování.
    (11) Optimalizace Wolfram Language kódu.
    (12) Psaní aplikací a balíčků (paclets).
Literatura
    doporučená literatura
  • Wolfram Mathematica Documentation
  • Napolitano, J. A Mathematica Primer for Physicists, CRC Press, 2018
  • Wellin, P. Essentials of Programming in Mathematica, Cambridge University Press, 2016
  • Leonid Shifrin: Mathematica Programming - An Advanced Introduction. 2009, dostupné online na https://www.mathprogramming-intro.org/
Výukové metody
seminars; class discussion; self-study; presentation
Metody hodnocení
Vypracování zápočtového projektu; ústní zkouška: obhajoba zápočtového projektu
Další komentáře
Studijní materiály
Předmět je zařazen také v obdobích zima 2021, zima 2022, zima 2023, zima 2024.