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.
- Równania różniczkowe z labem
- 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:
- 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.
- 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ń.
- N. M. Matwiejew Zadania z równań różniczkowych
zwyczajnych. Państwowe
Wydawnictwo Naukowe, (PWN), Warszawa 1976. Zbiór
zadań.
- 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.
- 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.
- 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.
- 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
- 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.
- 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.
- 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.
- 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
- 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
- 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
- Kontynuacja - wskaźniki, wektory, macierze,
zapisywanie/wczytywanie danych do plików. Przykładowy
program plik.c 20/04/2005
- 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.
- 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.
- 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
- 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
- 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