F5330 Základní numerické metody (podzim 2024)

záznam o předmětu v Informačním systému MU: https://is.muni.cz/auth/predmet/sci/podzim2024/F5330

Probíraná témata a doporučená literatura

  1. řešení transcendentních rovnic s jednou neznámou (metoda půlení intervalu, metoda sečen, Riddersova metoda, Newtonova metoda)
  2. minimalizace a maximalizace funkcí jedné proměnné
  3. interpolační polynomy
  4. numerická kvadratura (klasická pravidla, Rombergova integrace, nakládání s nevlastními integrály, vícerozměrné integrály)
  5. diferenciální rovnice s počáteční podmínkou a jejich soustavy (Eulerova metoda, Rungeovy-Kuttovy metody)
  6. soustavy lineárních rovnic (Gaussova eliminační metoda, LU rozklad, Choleského rozklad, iterační metody pro soustavy s řídkou maticí)
  7. vlastní čísla a vlastní vektory matic (Jacobiho metoda)
  8. řešení soustav transcendentních rovnic Newtonovou metodou
  9. okrajové úlohy u obyčejných diferenciálních rovnic
  10. parciální diferenciální rovnice (Laplaceova rovnice, rovnice vedení tepla)
Literatura v anglickém jazyce: Literatura v českém jazyce (dostupná v knihovně PřF):

Zdrojové kódy ke cvičení a další výukové materiály

16.9.

přednáška+cvičení nahrazeny videonahrávkami:

1. úvodní přehled probíraných okruhů
2. reprezentace čísel, chyby, složitost algoritmů

první kroky s Pythonem a instalace Anacondy na samostatné stránce

kódy k Fibonacciho problému a k vyzkoušení Anacondy: cviceni00.zip

23.9. cviceni01.zip
30.9. cviceni02.zip
7.10. cviceni03.zip
14.10. cviceni04.zip
21.10. cviceni05.zip
28.10.

státní svátek

4.11. cviceni06.zip
11.11. cviceni07.zip
18.11. cviceni08.zip
25.11.
2.12.
9.12.
16.12.

Zápočtové projekty

Podmínkou udělení zápočtu je správné a dostatečně pečlivé vypracování zápočtového projektu ve formě elaborátu a jeho obhájení při zápočtovém rozhovoru. Zadání projektů jsou součástí následující sbírky příkladů (během podzimu bude pravděpodobně ještě revidována):

sbírka příkladů

Přiřazení projektů jednotlivým studujícím se odehraje v průběhu semestru prostřednictvím emailu. Pošlete mi proto svůj výběr tří preferovaných zápočtových projektů, seřazený od nejvíce preferovaného. Na základě takto obdržených informací budu průběžně aktualizovat následující tabulku.

tabulka přiřazení zápočtových projektů

Podrobnější pokyny k vypracování najdete v pdf souboru se zadáními. Zápočty je možno udělovat do konce zkouškového období. Vzhledem k nutnosti domluvy na zápočtovém rozhovoru a také případným opravám odevzdávejte elaboráty s dostatečným předstihem.

Materiály týkající se jazyka Python a numerických výpočtů

Ve cvičení budeme provádět praktické experimenty s numerickými metodami s použitím programovacího jazyka Python a jeho knihoven NumPy, SciPy a Matplotlib. Začátek cyklu cvičení bude věnován seznamování se s těmito pomocníky. Zkušenost s programováním a případná znalost některého z vyšších programovacích jazyků je výhodou, ale není nezbytná. Během cvičení je možné při vynaložení odpovídající snahy získat dovednosti potřebné pro absolvování kurzu.

Vzhledem k nevyhnutelně minimalistickému pojetí úvodu do programování během cvičení doporučuji zájemcům o hlubší seznámení s Pythonem a jeho využitím při numerických výpočtech následující materiály (pozor: některé používají Python verze 2, který se v drobných detailech liší od již dlouho aktuálního Pythonu 3):

Software potřebný na cvičení

Nejsnadnější možností obstarat si potřebný software je stažení a instalace distribuce Anaconda. Obsahuje v jednom balíčku odladěnou instalaci Pythonu včetně mnoha knihoven a dodatečných programů. Je k dispozici zdarma na adrese (registraci je možno přeskočit)

https://www.anaconda.com/download

Ve vystavených videích je provedena ukázková instalace distribuce Anaconda ve verzi pro Windows a také prohlídka a dodatečné nastavení prostředí Spyder, ve kterém budu spouštět demonstrační příklady. Pokud již Python používáte, nebo jej chcete instalovat jinak než skrze Anacondu, postačí mít pro cvičení k dispozici výše uvedené knihovny.

V případě nouze je možné sáhnout i po jupyterovském deníčku běžícím na serveru. Za pozornost stojí tyto možnosti:

https://jupyter.org/try

https://colab.google

K jejich používání vám postačí rozumně moderní webový prohlížeč, nečekejte ovšem od tohoto řešení žádné velké výkony.