Praca domowa 3
- Napisac i dolaczyc do kodu z pracy domowej 2
procedure testujaca rzad zastosowanej metody calkowania. Procedura powinna
badac zaleznosc bledu rozwiazania od dlugosci kroku h. Heurystyka jest
tu nastepujaca: jesli metoda jest rzedu p, to blad rozwiazania spelnia
|| yh - y || = O(hp)
gdzie || u || oznacza dyskretna norme maximum, || u || := max { |
ui | : i = 1..M }. Oczywiscie, yh oznacza rozwiazanie
przyblizone, a y - rozwiazanie dokladne brane w wezlach siatki. Gdyby wiec
zamiast O(hp) bylo po prostu C hp, to po dwukrotnym
zmniejszeniu dlugosci kroku calkowania h, blad zmniejszylby sie dokladnie
2-p razy. Okazuje sie, ze dla gladkich funkcji testowych (o
znanym rozwiazaniu), ta regula sprawdza sie z calkiem dobra dokladnoscia.
A zatem potwierdzimy sobie, ze (na przyklad) nasza metoda jest rzedu p=2,
jesli dwukrotne zmniejszenie dlugosci kroku spowoduje (z grubsza) czterokrotne
zmniejszenie bledu.
- Zmodyfikowac procedury calkujace i program z pracy
domowej 2 tak, aby mozna bylo ich uzywac do rozwiazywania ukladow
rownan postaci
x'(t) = F(t,x(t))
x(0) = x0
gdzie x(t) = (x1, x2, ..., xn) jest
wektorem w Rn, natomiast F = (f1,f2,...,
fn) gdzie fi jest rzeczywista funkcja od t, x. Mozna
przyjac na uzytek naszej implementacji, ze n <= 4. Prosze rowniez odpowiednio
zmodyfikowac procedure wizualizujaca!
Wykaz zajec laboratoryjnych