MFF UK / Ústav teoretické fyziky / Tomáš Ledvinka
Přednášky
. . . . . . . . . . . . . . . . . . . . . . . . . .
Programování pro fyziky (1.r)
Počítačová algebra
Klasická elektrodynamika (2.r)
Klas. teorie záření
Numerická relativita
Vybrané partie OTR

Cvičení
. . . . . . . . . . . . . . . . . . . . . . . . . .
Programování pro fyziky (1.r)
Teoretická mechanika (2.r)
Klasická elektrodynamika (2.r)
Programování prakticky
  Úvod


Věda
. . . . . . . . . . . . . . . . . . . . . . . . . .
Diskové zdroje v OTR
Hyperbolické systémy v OTR


Kontakt
. . . . . . . . . . . . . . . . . . . . . . . . . .
Email
Konzultační hodiny


Ostatní
. . . . . . . . . . . . . . . . . . . . . . . . .
Mallorca
Ze společnosti

Programování prakticky - NOFY081

Materiály ke cvičení

  1. Výrazy, jednoduchý program
  2. Jednoduchý program, "želví grafika"
  3. Funkce a procedury
  4. Funkce a procedury II
  5. Funkce a procedury III
  6. Funkce a procedury IV
  7. Pole a seznamy
  8. Opakování
  9. Newtonova metoda hledání kořene. Psaní funkcí a volba jejich argumentů, vytváření seznamů. Grafický výstup s pomocí matplotlib
  10. Knihovna numpy
  11. Čtení dat ze souboru
  12. Animace pohybu
  13. Řešení soustav obyčejných dif. rovnic

Důležité odkazy

Python

Jako vývojové prostředí pro offline práci na vlastním počítači dooporučuji prostředí Spyder. Nástrahy instalace pro Win10 jsou vysvětleny ve videu zde.

Python 3 Cheat Sheet
Budeme často používat online prostředí unožňující spouštět naše jednoduché programy. V jazyce Python to budou např.
Často budeme používat knihovnu matplotlib pro malování grafů.
Podobně povrchně budeme používat knihovnu numpy. Dokumentace
Hodí se i dokumentace k syntaxi poznámek (tzv. markdown).
Rozsáhlý soubor příkladů ke knize Python Data Science Handbook je zde

Gnuplot

Vše potřebné nazlenete zde: gnuplot.info

Cvičení 2021

  1. Celočíselné a reálné proměnné. Řešíme kvadratickou rovnici iterací pdf. (Zajímavost pro pokročilejší -- Zkoumáme konvergenci posloupnosti kód)
  2. Funkce a procedury -- Nejjednoduší funkce ( faktorial, součet aritmetické řady, rekurzivní výpis číslic daného čísla ). Demonstrace volání na http://pythontutor.com
  3. Syntaxe příkazů. pdf. Řazení příkazů, želví grafika, sledovací křivka (kód). (Problémy pro zájemce)
  4. Pole. Příklad na cvičení: Histogram a jako pdf
  5. Newtonova metoda a fraktály sešit
  6. Výpočet determinantu sešit
  7. Numerické řešení obyčejných diferenciálních rovnic sešit

Domácí úlohy 2021

  1. Přepis jednoduché funkce z Pascalu do Pythonu. Zadání
  2. Histogram. Zadání
  3. Interpolace. Zadání
  4. Kořen. Zadání
  5. Soustavy rovnic. Zadání
  6. Diferenciální rovnice. Zadání

Cvičení 2020

Pro zajímavost zde nechávám obsah z minulého roku.
  1. Příklady programovacích jazyků, procedurálního a funkcionálního přístupu. Celočíselné a reálné proměnné. Jednoduché funkce.
  2. Výstup programu. Řetězení programů. Gnuplot.
  3. Program vs. pracovní sešit. Jupyter, Mathematica, Maple. Příklady (Malujeme funkci)
  4. Ještě trochu gnuplotu (příklad).
  5. Záludnosti čísel v počítači. Screencast youtube, jupyter pdf a sešit.
  6. NSD a půlení intervalu. Screencast youtube, jupyter pdf a sešit.
  7. Newtonova metoda. Screencast youtube, jupyter pdf a sešit.
  8. Čtení ze souboru, ukládání dat do pole. Screencast youtube, Python skript, jupyter pdf a sešit.
  9. Opět pole. Pokus o Conwayův celulární automat Life. Screencast youtube, Python skript a jupyter sešit.
  10. Pole III. Řešení soustav rovnic: Gaussova-Jordanova eliminace. Řešení soustav nelineárních rovnic Newtonovou-Raphsonovou metodou. Screencast youtube, Pascal zdroják a jupyter sešit a pdf.
  11. Řešení obyčejných diferenciálních rovnic zdrojový kód

Sylabus

Překladač a interpret, vývojové prostředí, příkazový řádek. Proměnné, datové typy, výrazy, příkazy. Nástrahy při práci s celočíselnými a reálnými datovými typy. Příklady: součty a součiny řad, kvadraturní vzorce (lichoběžníkové a Simpsonovo pravidlo).
Náhodná čísla. Příklady: metoda Monte Carlo (vlastnosti generátorů náhodných čísel, integrování Monte Carlo).
Datové soubory. Vizualizace dat. Příklady: generování fraktálů (Mandelbrotova množina).
Pole. Procedury a funkce, předávání argumentů. Příklady: lineární algebra (maticové násobení, řešení soustav lineárních algebraických rovnic), polynomická aproximace (lineární regrese aj.), hledání kořenů (bisekce), řešení počáteční úlohy pro obyčejné diferenciální rovnice (pohyb v gravitačním poli).


Body za řešení domácích úloh

ID Studenta Celkem 1 2 3 4 5 6 7 8 9
23 1 2 2 3 3 3 3 3 3
10011112233
100271213
10030
10041212333
100514122333
100614122333
100714122333
100814122333
100913122332
10107232
10111212333
10120
101314122333
10140
10150
10165113
101714122333
101814122333
1019312
102014122333
Stav k 23. 5. 2023 8:34



.