Laboratorium z Równań Różniczkowych zwyczajnych
Uwaga! Zajęcia
z labu 27 maja są przesunięte na 20 maja, a lab z 6 maja na 13
maja.
Wynika to z mojego wyjazdu 24-28 maja i przesunięć zajęć przez dziekana.
wiosna 2004, czwartki 8:30 (co drugi tydzień,
pierwsze
zajęcia: 19/02/2004 ewentualne zmiany mogą być spowodowane np z powodu
świąt).
W trakcie zajęć na labie będziemy się zapoznawać z dwoma
pakietami: maple i scilab - pierwszy jest pakietem
symbolicznym - choć ma też możliwość z korzystania z pewnych algorytmów
numerycznych, drugi jest pakietem numerycznym bez obliczeń
symbolicznych. Scilab jest
klonem matlaba - jest to
oprogramowanie freeware - można ściągnąc ze stron (Inria-scilab i
zainstalować pod systemami: linux, windows 2000 i inne. Zaletą maple'a jest duża ilość książek do
RRzw w których niektóre możliwości maple'a
są opisane. Część zadań będzie polegała na zaprogramowaniu prostych
schematów i np. zbadaniu ich rzędu lokalnego czy rzędu zbieżności dla
znanych rozwiązań (dokładniejsze definicje na wykładzie,ew/
ćwiczeniach)
- najprościej będzie to zrobić w scilabie gdzie i wizualizacja jest b.
prosta ale jak ktoś chce to może pisać programy w dowolnym języku np pascal, C, C++ i rysować wykresy
zgranych na dysk danych scilabem
ewent. maplem albo innym
narzędziem np. gnuplotem (można
i uruchomić grafike pod linuxem
bezpośrednio z programu napisanego np w C++ ale to dość trudne).
Plan labu będzie czasami podany zapewne na wyrost i w miare
możności
zadania nie zrealizowane na danym labie przesuna się na następny.
- Lab 1 - Rysowanie pól
wektorowych i przybliżonych
rozwiązań przy pomocy apletów java DFIELD i PPPLANE: na
stronie www (znalezc link do
java
version). Wstępne zapoznanie sie z systemami scilab i być może maple'a (o ile będą mieć Państwo
konta na serwerze tomoko). Przykladowy
skrypt scilaba
(uruchamiany exec intro.sci z
lini komend). Plik
tekstowy z krótkim opisem do scilaba.19/02/2004
- Lab 2 - proste
funkcje w Scilabie - funkcja ODE() - rozwiązuje równanie różniczkowe
zwyczajne i funkcja fchamp()
rysuje pole wektorowe. Zastosowanie do przykładów z ćwiczeń.
Zaprogramowanie prostych schematow dla równania w 1d - schemat midpoint
x(n+2) = x(n) +2 h
f(t(n+1),x(n+1)),
x(0)=x0 dane - x(1)
które przybliża rozwiązanie dokładne w pkcie x(t(0)+h) trzeba jakoś inaczej
wyznaczyć z dokładnością rzędu h^2.
Napisać w scilabie - przetestować dla równania dx/dt=ax, x(0)=1, a- parametr,
porównując ze schematem otwartym Eulera. Skrypt scilaba w ktorym jest
funkcja
ze schematem otwartym Eulera. 4/03/2004
- Lab 3 - funkcja dsolve w
maple'u - rozwiązuje symbolicznie proste równania różniczkowe.
Badanie rzędu eksperymentalne dla równań ze znanymi gładkimi i prostymi
rozwiązaniami: Euler otwarty, midpoint i ewentualnie Euler zamkniety
dla
równania liniowego y'=ay, y(0)=1,
rozwiązanie: exp(ax).
Testować dla różnych t zmieniając krok h tzn: biorąc h0=0.1 i potem h=h0/2, h0/4 itd Liczyc
stosunek błędu dla h i h/2 czy się zmniejsza np 2 (jak schemat ma
rząd
2) albo 4 jak ma rząd 2. Badać błąd podzielony przez h, h^2 itp Czy wychodzi stała?
- 18/03/2004
- Lab 4 - Zaliczenie Zadania 1. Badanie błędu schematu otwartego
Eulera eksperymentalne: na ustalonym odcinku liczymy schematem wartośc
w
końcu odcinka i porównujemy z rozwiązaniem dokładnym (musimy je znać
dla danego równania) następnie liczymy błąd, ten proces wykonujmy dla
połowionych h tzn najpierw dla h0=0.1 potem h=h0/2,h0/4 itd
Otrzymujemy
malejący ciąg błędów - możemy teraz liczyć stosuneki błędu dla h i h/2
powinien od w przybliżeniu wynosić 2^p gdzie p - rząd zbieżności (o ile
schemat stabilny) - bo w przybliżeniu e(h)=O(h^p) bliskie C h^p czylu
e(h)/e(h/2)= Ch^p/C(h/2)^p=2^p -1/04/2004
- Lab 5 - równania
liniowe skalarne wyższego rzędu. Pakiet w maple'u do rozwiązywania rrzw - funkcja
DEplot - 15/04/2004
- Lab 6 - równania
liniowe na płaszczyźnie, znajdowanie exponentu od macierzy, wartości
własnych wektorów własnych za pomocą maple'a - przeniesione na następne
zajęcia. Pewne rzeczy można też zrobić w scilabie (niesymbolicznie oczywiście).
Obrazy fazowe (przy pomocy funkcji funkcji
DEplot w maple'u) albo appletów: DFIELD
i PPPLANE dla różnego typu pkt krytycznych dla 2d
równań autonomicznych: ściek, źródło, siodło, ogniska odpychające i
ściągające, centrum. - 13 maja
2004
- Lab 7 -
zaliczenie Zadania 2. - 20 maja 2004
Uwaga! Zajęcia
z labu 27 maja są przesunięte na 20 maja, a lab z 6 maja na 13
maja. Wynika to z mojego wyjazdu 24-28 maja i przesunięć zajęć przez
dziekana.
Zadania komputerowe:
Zadanie 1
Termin lab 4 - 10pkt
(później 8pkt) Dwa programy do wyboru.
- Napisać w scilabie (albo innym języku oprogramowania)
implementację schematu Rungego 4 rzędu dla równania w 2D typu x'=f(t,x,y),
y'=g(t,x,y), x(a)=x0, y(a)=y0. Testować min. na równaniach
liniowych y'=ay,y(0)=1
i y''=-y, y(0)=1,y'(0)=0, (Rozw: cos(x)) na
odcinku [0,1] lub [0,Pi].
Wyrzucać na ekran rozwiązania dokładne i obliczone schematem.
Porównywać
bład w końcu odcinku pomiędzy rozw. dokładnym a obliczonym
schematem
czy błąd zachowuje się jak O(h^4)?
- Albo zamiast schematu Rungego 4 rzędu - napisać schemat typu
predyktor-corrector tylko dla równania skalarnego wykorzystujący
schematy zamknięty i otwarty Eulera - wykonując jeden krok metody
Newtona (dla rozwiązywania nieliniowego układu równań w każdym
kroku
met. zamkniętej Eulera). Testować na równaniu y'=(cos(y))^2
y(0)=0 na odcinku [0,10].
Zbadać rząd eksperymentalnie poprzez badanie błędu dla kroku
połowionego.
Zadanie 2 Termin
ostani lab 10pkt - potem 8pkt. Ponownie do wyboru.
- Prosta metoda
strzałów
dla równania -y'' + g(t)y=f(t), y(0)=c, y(1)=d,
g(t)>=0, wystarczy oddać dwa strzały tzn policzyć
rozwiązanie dla y(0)=c, y(0)=s1 a
potem y(0)=c, y(0)=s2 (s1 różne s2) i
obliczyć s dla którego rozwiązanie z warunkami y(0)=c, y(0)=s
spełni równanie. jak obliczyć s to
dodatkowe zadanie - powinni Państwa to wiedzieć z wykładu i ćwiczeń w
odpowiednim momencie. Do rozwiązywania równania zastosować dowolny
otwarty schemat rzędu 4 np Rungego
rzędu 4 i h=0.1,0.01 oraz itd Testować
np dla g(t)=1,
t^2 i f(t)=-6*t^3, cos(t), t^2+sin(t) itd
Drukować na
ekranie wykres rozwiązania co pozwoli sprawdzić czy rzeczywiście
wychodzi to o co chodzi.
- Schemat ze zmiennym krokiem całkowania (wystarczy dla r. skalarnego) jak
opisany w książce
prof Andrzeja Palczewskiego, rozdział 5.2, str. 151-155.
Schemat ma porównywać rozwiązanie dokładne dla równania z Zad 1 podpkt 2 i y'=-x/y,
y(x0)=1,1/2,-1, -1/2 itp
(mają znane gładkie rozwiązania) w obliczonych pktach i drukować
wykresy na ekranie i podawać na końcu ilość kroków potrzebną do
obliczenia rozwiązania na zadanym odcinku czasu.
Powrót
do strony z zajęciami w semestrze letnim 2003/04.