Spis treści

Metody Numeryczne I

Laboratorium

W semestrze zimowym 2020/2021 laboratorium odbywa zdalnie za pośrednictwem platformy Moodle w poniedziałki w godz. 12-14

Zaliczenie laboratorium

Warunkiem zaliczenia zajęć jest

Literatura

Plan

  1. Podstawy programowania - przypomnienie
    • narzędzia: Python, Jupyter, Google Colab
  2. Różniczkowanie numeryczne
    • pochodne pierwszego i wyższych rzędów (zależność od h i błąd metody)
  3. Równania nieliniowe
    • znajdowanie miejsc zerowych (metoda bisekcji, siecznych, Newtona)
    • porównanie zbieżności metod.
    • wykorzystanie różniczkowania numerycznego w metodzie Newtona
  4. Interpolacja
  5. Całkowanie numeryczne
    • Metody prostokątów, trapezów, Simpsona
    • porównanie metod
    • (?) Monte Carlo
  6. Rozwiązywanie układów równań liniowych
    • Eliminacja Gaussa + pivoting
    • (?) metoda iteracji prostych
    • Obliczanie wyznacznika i macierzy odwrotnej
  7. Równania różniczkowe
  8. Układy równań nieliniowych
    • met. Newtona-Raphsona
  9. Znajdowanie wektorów i wartości własnych

Notatniki

Ćwiczenia postaci notatników Jupyter dostępne są w repozytorium GitHub: https://github.com/IS-UMK/mn/

MNI Strona główna

Lab 1. Język C - powtórka
Lab 2. Błedy numeryczne
Lab 3. Różniczkowanie
Lab 4. Rozwiązywanie równań nieliniowych
Lab 5. Rozwiązywanie równań nieliniowych 2
Lab 6. Całkowanie
Lab 7. Monte Carlo
Lab 8. Kolokwium
Lab 9. Interpolacja
Lab 10. Równania liniowe
Lab 11. Równania liniowe c.d.
Lab 12. Równania liniowe c.d.
Lab 13. Równania różniczkowe
Lab 14. Równania różniczkowe c.d.
Lab 15. Kolokwium

Środowisko pracy

Google Colab (zalecane)

Lokalnie na własnym sprzęcie

Notatniki z zajęć można uruchamiać lokalnie na własnych komputerach. Należy w tym celu skonfigurować środowisko Python i Jupyter Notebook lub JupyterLab Wygodnie w tym celu użyć gotowej dystrybucji Anaconda, która zawiera Pythona, Jupyter oraz wiele przydatnych pakietów.

Serwery wydziałowe

Notatniki można również uruchamiać korzystając z serwera polon7. Dostęp z zewnątrz sieci LAN wymaga aktualnego klucza OpenVPN. Przy logowaniu na serwer via ssh należy przetunelować port na którym Jupyter hostuje notatnik (domyślnie 8888') tak aby możliwe było wyświetlenie wyników w przeglądarce internetowej.

ssh -L 8888:localhost:8888 user@polon7.fizyka.umk.pl

Po zalogowaniu przechodzimy do katalogu, w którym znajdują się notatniki.
Notatniki z laboratorium dostępne są w repozytorium GitHub.
Klonowanie repozytorium:

git clone https://github.com/IS-UMK/mn/

Uruchamianie notatnika:

jupyter-notebook --no-browser --port 8888

Domyślnie notatnik uruchamia się na porcie 8888. W przypadku, gdy port ten jest zajęty należy wybrać inny, pamiętając o odpowiedniej zmianie tunelowanego portu przy połączeniu (-L port:localhost:8888').

Następnie w przeglądarce (lokalnie) otwieramy adres http://localhost:8888

Kilka przydatnych odnośników