Metody numeryczne 1100-1ENMETNUM3
Analiza numeryczna, czyli metody numerycznego rozwiązywania problemów matematycznych, jest prawdopodobnie tak stara jak sama matematyka. Najstarsze znane algorytmy pochodzą z lat około 1800 p.n.e., wiele powstało w starożytnej Grecji, a gęsto występujące nazwy pochodzące od autorów (np. Newton, Gauss, Euler, Lagrange) sugerują rozkwit w XVIII wieku. Wraz z nastaniem ery komputerów metody numeryczne stały się podstawową metodą obliczeniową w niemal wszystkich praktycznych zastosowaniach nauk ścisłych i przyrodniczych, od fizyki do nauk społecznych i od inżynierii do medycyny.
Niezależnie od języka programowania, użycia zaawansowanych pakietów programistycznych, graficznych i tym podobnych narzędzi, każda osoba używająca mniej lub bardziej świadomie komputera do obliczeń numerycznych powinna zdawać sobie sprawę z pewnych ograniczeń wynikających z matematycznych przybliżeń leżących u ich podstaw, oraz problemów zaokrągleń związanych ze sposobem w jaki działają komputery. Niewiedza w tym zakresie, niestety miewa nieraz tragiczne skutki (w sensie dosłownym!).
Na zajęciach omówimy sposoby konstruowania algorytmów, metody ich testowania, ich wady i zalety, oraz ograniczenia na jakie można napotkać podczas ich praktycznego wykorzystywania.
Program:
1. Jak komputer przeprowadza obliczenia numeryczne? Jakie wynikają z tego problemy?
2. Jak wymyślamy algorytmy? Jak zadbać o ich stabilność oraz zbieżność do prawidłowego wyniku?
3. Jak rozwiązać dowolne równanie, nawet takie, które nie posiada rozwiązań analitycznych?
4. Jak uporządkować talię kart? Jak szybko uporządkować spis ludności?
5. Jaki był wynik doświadczenia, pomiędzy pomiarami?
6. Jak policzyć różniczkę i całkę dowolnej funkcji?
7. Dlaczego fizycy wciąż wspominają o Monte Carlo?
8. Jak mnożą się bakterie? Jak zmienia się populacja królików i lisów? Dlaczego trudno ponownie uruchomić reaktor jądrowy?
Wykładowi będą towarzyszyć ćwiczenia przy komputerze, na których studenci będą wprowadzać w życie i testować poznane algorytmy. Programowanie będzie odbywać się w dwóch językach, do wyboru: C++ (gnuplot do tworzenia wykresów) oraz Python (matplotlib do tworzenia wykresów).
Końcowa ocena będzie zależeć od oceny z wykładów (25%) i oceny z ćwiczeń (75%).
Rodzaj przedmiotu
Tryb prowadzenia
Założenia (opisowo)
Efekty kształcenia
Po zakończeniu przedmiotu student:
1. Zna podstawowe algorytmy stosowane w obliczeniach naukowych
2. Potrafi zapisać algorytmy numeryczne w postaci programów komputerowych
Kryteria oceniania
Ocena z wykładu będzie wystawiona na podstawie pisemnego testu (25%).
Ocena z ćwiczeń (w sumie 75%) będzie się składać z oceny przyznanej przez asystenta za pracę podczas zajęć oraz zadania domowe (łącznie 25%) oraz dwóch sprawdzianów (każdy po 25%).
Literatura
D. Kincaid, W. Cheney "Numerical analysis" Brooks/Cole 1991
D. Kincaid, W. Cheney "Analiza numeryczna" Wydawnictwa Naukowo-Techniczne 2006
A. Ralston "Wstęp do analizy numerycznej" PWN
Więcej informacji
Więcej informacji o poziomie przedmiotu, roku studiów (i/lub semestrze) w którym się odbywa, o rodzaju i liczbie godzin zajęć - szukaj w planach studiów odpowiednich programów. Ten przedmiot jest związany z programami:
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: