Wstęp do metod numerycznych
Zasady zalieczenia
- Podstawą zaliczenia są punktu zdobyte za zadania numeryczne (50% z szacowanych 52 pkt).
- Zadania należy wysyłać przez formularz spakowane przykładowo komendą tar -czvf ZadN1.tar.gz *.
- Zadania można pisać w dowolnym standardowym języku programowania np (C/C++, Julia(?) - bardzo dobrze) czy (Excel lub Brainfuck - bardzo źle).
Ocenie będzie też podlagała optymalizacja programów, a ona bardzo zależy od języka (np. Matlab/Octave/Python unikanie pętli dzięki wektoryzacji, co jest dość trudne). - W opracowaniu oprócz rozwiązania (kodu źródłowego) należy dołączyć opracowanie (najlepiej w pdf-ie), które powinno zawierać
- krótki opis metody, wraz z uzasadnieniem wyboru,
- instrukcję kompilacji i uruchomienia (najlepiej Makefile),
- wyniki w czytelnej formie (proszę unikać screenów w grafice rasterowanej),
uwaga: wyniki, które musiałbym przeczytać uruchamiając program nie będą uznawane, - analizę błędów,
- opis złożoności algorytmu,
- dyskusja czy dało się to zrobić lepiej, ale z pewnych względów nie zostało to zrobione,
- jeszcze raz kod źródłowy (na końcu opracowania), który przyspieszy mi ocenianie,
- do przygotowania wykresów polecam gnuplota i generowanie wykresów w postaci pdf,
- do samego opracowania polecam LaTeXa.
- Ocenie podlegać będzie nie tylko program, ale również czy użyta metoda jest optymalna, i czy program był pisany z myślą o minimalizacji błedów.
- Termin oddawania zadań, (jeśli nie określony inaczej) to dwa tygodnie od daty omówienia ich na zajęciach.
- Po terminie zadania będą również ocenianie, ale nieco surowiej.
- Zadania można poprawiać, ale należy się liczyć z moimi ograniczeniami czasowymi.
- Do oceny może zostać doliczona aktywność (lub jej brak) +/- 0.5 stopnia.
- Każdy musi przynajmniej dwa razy zgłosić się do zrobienia zadania przy tablicy.
- Nieobecności nieusprawiedliwione (powyżej 2 dozwolonych) będą skutkowały odjęciem 1ptk od zadań numerycznych.
- W przypadku wykrycia zbyt dużej zbieżności pomiędzy programami różnych osób, możliwe jest odjęcie do 10pkt każdej z osób.
Ilość punktów karnych można zmniejszyć- przyznając się,
- wskazując "źródło" (jedno źródło ma anulowane punkty karne),
- odpowiadając na bardzo szczegółowe pytania, dotyczące zadania, na konsultacjach.
Zadania
Zestaw 01 na 03.10.2018
Zestaw 02 na 17.10.2018
Zestaw 03 na 06.11.2018
Zestaw 04 na 13.11.2018
Zestaw 05 na 13.11.2018 (zamiast zestawu 4)
Zestaw 06 na 08.01.2019
Zadania numeryczne na 2018/2019
Dodatkowe zadanie numeryczne
Zadania numerycznena 2017/2018
Zadania numerycznez roku 2016/2017
Zadania numeryczne z roku 2015/2016
Zadania numeryczne proszę przesyłać przez formularz.
Krótki tutorial gnuplota.
Ilość nadesłanych programów do sprawdzenia w różnych latach. 2015/2016, 2016/2017 i 2017/2018 po dwie grupy ~60 osób w pozostałych po jednej grupie.
Oceny za programy na rok 2018/2019
28-35 | dst |
36-40 | +dst |
41-45 | db |
46-49 | +db |
50+ | bdb |
Uwaga: Na ocenę końcową z całych ćwiczeń może mieć wpływ również aktywność (do ok. 30% oceny) pod warunkiem przekroczenia progu zalliczenia.
Przydatne linki:
- Metody znajdowania wartości własnych
- GSL GNU Scientific Library - biblioteka do obliczeń numerycznych napisana w C. Darmowe żródła, dostępna w repozytoriach np. debiana.
- Octave - program do obliczeń numerycznych, dostępny w repozytoriach.
- Numerical Recipes - podręcznik do metod numerycznych.
- Gnuplot program do przygotowywania wykresów i obróbki danych.
- Tutorial do LaTeX'a. Na sieci znajduje się bardzo dużo innych materiałów.
- lstlisting. Pakiet do przygotowywania teekstów zawierających kody programów.
Whereabouts
Department of Field Theory
Institute of Physics,
Jagiellonian University,
S. Łojasiewicza 11,
30-348 Kraków
Room: B-2-03
Tel: (+48 12 664) 4606