Semestr letni 2004/2005



Konsultacje:  środa 10-12   najlepiej umówić się  e-mailem: lmarcin at mimuw.edu.pl , pok.1020 (na parterze koło biblioteki). Można też sprawdzić: Plan.

  1. Równania różniczkowe z labem 
  2. Obliczenia naukowe

Równania różniczkowe zwyczajne z laboratorium
Lab odbywa się co dwa tygodnie. Plan wykładu (z lat poprzednich ale nie powinien sie bardzo zmienic), terminy i krótkie opisy kolejnych zajęc na laboratorium:

Warunki zaliczenia:  50% ilości pktów możliwych do zdobycia =  40% kolokwium, 30% zadania domowe, 30% projekty zaliczeniowe z laboratorium. Projekty zaliczeniowe  -podobne jak w latach poprzednich - pierwsze: proste schematy, drugie coś bardziej skomplikowanego.  Kolokwium - na zasadzie egzaminu połówkowego.

Lista wyników: prace domowe, zad z labu, kolokwium (aktualizowane w miarę możności) , w pdf - można obejrzeć spod Acrobart Reader lub  xpdf czy gv -pod linuxem.

Wyniki ostateczne zaliczenia ćwiczeń

Zaliczenie labu dla osób przystępujących do Egzaminu w II terminie
Osoby które nie zaliczyły ćwiczeń ale nie są wyrejestrowane ( patrz powyżej) aby móc wziąść udział w egzaminie
w sesji poprawkowej muszą zaliczyć lab (decyzja wykładowcy prof Dryji - egzamin w seji poprawkowej może zawierać elementy zaliczenia ćwiczeń) . Na  stronie www laboratorium  jest   zamieszczony projekt  poprawkowy dla tych osób  (wszystkie nie zaliczyly labu...) a które nie są wyrejestrowane.  

Literatura:

  1. W. I. Arnold,  Równania różniczkowe zwyczajne. Państwowe Wydawnictwo Naukowe, (PWN) Warszawa 1975. Tłumaczenie z rosyjskiego. Książka wyłącznie o teorii równań różniczkowych zwyczajnych.
  2. N. M.  Matwiejew Metody całkowania  równań różniczkowych zwyczajnych. Państwowe Wydawnictwo Naukowe, (PWN) , Warszawa 1986. Klasyczny podręcznik, głównie metody rozwiązywania równań.
  3. N. M.  Matwiejew Zadania z równań różniczkowych zwyczajnych. Państwowe Wydawnictwo Naukowe, (PWN), Warszawa 1976.  Zbiór zadań.
  4. Jerzy Ombach Wykłady z równań różniczkowych wspomagane komputerowo-Maple. Wydawnictwo Uniwersytetu Jagielońskiego,   Krakow 1999. Tylko teoria  rrz, bez schematów numerycznych ale za to sporo o Maple.
  5. Andrzej Palczewski Równania Różniczkowe zwyczajne   Teoria i metody numeryczne z wykorzystaniem komputerowego systemu obliczeń symbolicznych. Wydawnictwo Naukowo-Techniczne (WNT) ,Warszawa 1999. Teoria równań różniczkowych i schematów, trochę o maple'u.
  6. A. F. Filippow Sbornik zadaczi po difieriencjalnym urawnieniam. Nauka, Moskwa, 1979, zbiór zadań, po rosyjsku.
I wiele innych, również w języku polskim.

Obliczenia naukowe
W większości będa to laby. Zaliczenie - kolokwium przy komputerze w połowie semestru.
  1. Zapoznanie się z komendami systemu Unix: ls(zawartość katalogu), cp(kopiowanie), mv(zmiana nazwy), rm(usuwanie plików), cd(zmiana katalou). mkdir(utworzenie podkatalogu),  pico, jpico(proste edytory tekstowe), cd $HOME - powrót do katalogu domowego itd
  2. Wstępne zapoznanie się z pakietem  octave. Tworzenie macierzy wektorów, operator ':' np x=1:20  octave jako kalkulator naukowy,  operacje macierzowe - dodawanie/mnożenie macierzy/wektorów, podmacierze, rozwiązywanie układów rów liniowych, uwarunkowanie macierzy itp Zapisywanie macierzy, danych do plików bianrnych i tekstowych (ascii) - komendy save i load. Przykładowy skrypt matbasic.m  wywoluje sie linii komend octave'a: matbasic.
  3. Kontynuacja.  Tworzenie skryptów, funkcji (ploki z roszerzeniem m), pomocy do funkcji, wektoryzacja itd Przykład funkcji (z helpem i wektoryzacja) funkcjaRunge.m  (należy ją umieścic w katalogu z którego wywoływany jest Octave). Funkcja linspace. 
  4. Kontynuacja min proste wykresy funkcja: plot. Numeryczna klasyka w Octavie: algebra liniowa - układy r. liniowych, rozkłady LU, QR, obliczanie macierzy odwrotnej, liniowe zadania najmniejszych kwadratów, uwarunkowanie macierzy. Zadanie - napisać włąsną procedurę znajdowania dla danych wektorów: x,y wymiaru n: a,b takiego że ||y -a*x-b|| =min_{c,d} ||y - c*x-d|| gdzie norma jest euklidesowa.  Porównać z funkcją Octave'a  tzn   z wielomianową aproksymacja średniokwadratową (funkcja polyfit) Przykładowy skrypt: sesja3.m 9/03/2005.
  5.  Całkowanie numeryczne (funkcja quad),  całki z osobliwościami, rozwiązywanie równań nieliniowych (funkcja fsolve).Instrukcja warunkowa if else, operatory logiczne (&& and, || - or, !-not, != - nie rowna sie,  == - rownosc itp), zmienne globalne - moga w pewnych sytuacjach sluzyc do przekazania parametru (global).   sesja4.m  16/03/05
  6. Równania różniczkowe zwyczajne (lsode).   sesja5.m   Wizualizacja w Octave'ie.  Wykresy w skali półlogarytmicznej, logarytmicznej. Krzywe w 3D, wykresy funcji 2-wymiarowych.  23/03/05
  7. Język C - podstawy - funkcje, zmienne, pętle for, while, instrukcje warunkowe if, switch. Zadanie - napisać program w C sumujący szeregi harmoniczne.  6/04/05 
  8. Kontynuacja - wskaźniki, wektory, macierze,  zapisywanie/wczytywanie danych do plików.  Przykładowy program plik.c 20/04/2005
  9. Kolokwium przy komputerze - będą 1-2 proste zadania w C i Octave'ie. Czas 1godz po czym Państwo zaprezentują mi wyniki.  (ewentualnie połączone - np policz coś w C zapisz dane do pliku wczytaj do Octave'a i wyświetl czy sprawdź wynik czy coś podobnego).  27/04/2005.
  10. Timing - jak zmierzyć czas procesora w C? - funkcja times()  i struktura struct tms (opisana w pliku nagłówkowym sys/times.h  Ponieważ funkcja times zwraca ilość taktów zegara potrzebujemy sysconf(_SC_CLK_TCK)  - zwraca ilośc taktów zegara na sekundę no i pliku nagłówkowego do tej funckji unistd.h. Możliwie proste użycie funkcji fortranowskiej (np dnrm2 - funkcja z BLASów - opcje kompilatora -lblas  -lg2c )  w programie C - 4/05/2005.
  11. Makefile - wygodny sposób na kompilacje- mozliwie prosty makefile:makefile-simple  i bardziej skomplikowany makefile. (a tu mamy kilka plikow potrzebnych aby przetestowac oba makefile make.tar.gz). Dla osób bardziej zainteresowanych manual do GNU make  (link OK w dniu zajęć) Użycie kilku prostych funkcji  Lapacka w szczególności dgesv.f  - funkcji służącej rozwiązywaniu układu równań liniowych z pełną macierzą (dowolną nieosobliwą).  Zadanie 1 -zastosować ją do jakiś małych układów (nawet 2x2) (lapack1.h  - plik nagłowkowy zawierający poprawną definicję wywołania tej funkcji w C - i opis parametrow) .  Zadanie 2 - zastosować funkcje dptsv.f  rozwiązującą układy r liniowych z symetrycznymi trójdiag. macierzami dodatnio określonymi do układu równań powstałego z dyskretyzacji r. Laplaca met . różnic skończonych z zerowymi warunkami brzegowymi. Porównać czas obliczeń z analogicznym uzyskanym w Octavie (ewentualnie do domu).Oczywiście należy napisać swój odpowiedni  makefile!  - 11/05/2005
  12. Implementacja wielowymiarowej  metody Newtona w Octavie - Jakobian obliczany albo funkcja uzytkownika albo aproksymowany roznicami dzielonymi tj j-ta kolumna Jakobianu Jac(.,j)=(F(x+h*e_j)-F(x))/h;  e_j - j-ty wersor, h zadany parametr.  Ważne  Jak można w Octavie obliczyć przybliżoną macierz Jakobianu (różnicami dzielonymi)  wektorowo(bez używania pętli)? Przy założeniu że nasza funkcja nieliniowa F dla argumentu macierzowego nxn tj X=(x1,..,xn), xk - k-ta kolumna X,  zwroci F(X)= (F(x1),..,F(xn)).  Zadanie do domu:  Zastosowanie  funkcji Lapacka  do implementacja wielowymiarowej metody Newtona z wykorzystaniem Lapacka w C. 18/05/2005
  13. Prosta wizualizacja w Octavie. Porównanie czasu działania met Newtona w Octavie z odpowiednia funkcja w C z wykorzystaniem Lapacka (pod warunkiem że Państwo napisali implementacje met Newtona i w C i w Octavie) - 25/05/2005.
Wyniki kolokwium
 


  Powrót do mojej strony domowej