Laboratorium z Równań Różniczkowych zwyczajnych (*) - do wykładu
prof. Krzysztofa Moszyńskiego
wiosna 2002, czwartki godz. 16:15 (co drugi
tydzień, pierwsze zajęcia: 21/02/2002 - termin mogą się zmienić w trakcie
semestru np z powodu świąt).
- Lab 1 - wstępne zapoznanie sie z systemem maple'a. Zmiana haseł
na kontach. Rysowanie pól wektorowych i przybliżonych rozwiązań przy pomocy
apletów java DFIELD i PPPLANE: na stronie www:
http://math.rice.edu/~dfield/
(21/02/2002)
- Lab 2 - dalsze zapoznawanie się z maple. Wprowadzanie
równań różniczkowych w
maple'u.
Funkcja dsolve, wprowadzanie warunków początkowych.
(7/03/2002)
- Lab 3 - pakiet DEsolve w maple'u. Rysowanie portretów fazowych,
pól wektorowych przy pomocy funkcji
DEplot
. (21/03/2002) -odwołane -w xmaple nie dziala rysowanie!
- Lab 4 - kontynuacja labu 3 (4/04/2002)
- Lab 5 - schematy różnicowe w maple'u (
sesja3.ms
) i (dla chętnych w C lub C++)
schemat.c
- plik z przykładowym kodem w C - schemat Eulera otwarty, na
jego bazie mozna łatwo zaimplementwać inne schematy np. Rungego rz. 4 (18/04/2002)
- Lab 6 - narzędzia maple'a do algebry liniowej, zastosowanie
do równań liniowych y'=Ay gdzie A - stała macierz,
ewentualnie y'=Ay +b dla b
- wektora stałego, przykładowa sesja:
sesja4.ms
(9/05/2002)
- Lab 7 - Kolokwium przy komputerze sprawdzające czy przy pomocy
maple'a są państwo w stanie coś zrobić tzn funkcje dsolve, DEsolve, równania
liniowe itd.
Treść kolokwium - niedostepna.
(23/05/2002)
Zaliczenie lab (nieobowiązkowe daje do max. 15 pktów) albo kolokwium
albo projekt - (2 możliwości)
Zaliczenie projektu musi nastąpić przed końcem semestru - ostatni termin
labu - 20/05/2002.
- napisanie schematów różnicowych (w C, C++ albo Pascalu, ewentualnie
maple'u) Eulera otwartego, otwartego Rungego Kutty otw 4 rzędu i schematu
ze zmiennym krokiem całkowania wg książki:
Andrzej Palczewski
Równania Różniczkowe zwyczajne,
Teoria i metody numeryczne z wykorzystaniem komputerowego
systemu obliczeń symbolicznych.
, WNT, Warszawa
1999, rozdział 5.2, str. 151-155. Program powinien mieć opcję
umieszczania wyników w pliku z którego można wyświetlać rozwiązania przy
pomocy np GNUplota. Poza tym należy zaprezentować wyniki obliczeń dla równań
ze znanymi rozwiązaniami i porównywać je z rozwiązaniem dokładnym (dla
wszystkich schematów równocześnie) tzn obliczać |x_n(s) - x(t_n)|
dla x_n (s) - wynik obl. schematu (s) dla t_n=t_0 + n*h, x()
- rozwiązanie dokładne, s - Euler otw, R-K4, Schem. zm. krok, oraz wyświetlając
wykresy x,x_n (s) . Przykładowy kod dla schematu Eulera otwartego
w C
schemat.c
- oblicza rozwiązanie i szacuje rząd schematu (dla takiego
równania dla którego znamy rozwiązanie), część wynikół obliczeń jest
nagrywana do plików sol.txt i error.txt. Program gnuplot
(wywolywany z linii poleceń jako gnuplot umożliwia wyświetlenie danych
zawartych w tych plikach (np. plot "error.txt " z linii poleceń
gnuplota).
- prosta
metoda strzałów
dla równania liniowego y''= f(x) z warunkami brzegowymi y(a)=c,
y(b)=d (a<b, c,d, rzeczywiste) z wykorzystaniem schematu otwartego
Runge-Kutta rzędu 4. Testować dla różnych f np sin x, exp(x)/x, exp(x)
itd Można też porównać wynik metody z rozwiązaniem dokładnym o ile jesteśmy
je w stanie wyliczyć: np podstawiając daną fukcję do równania dostajemy
f i war. brzegowe: sin x jest rozwiązaniem równania y''= -sin(x) x(0)=x(Pi)=0.
Wyniki podawać numerycznie i graficznie przy pomocy GNUplota, można skorzystać
ze wskazówek z pkt 1.