Zajęcia 11

Równania różniczkowe zwyczajne

Poszukujemy rozwiązania równania postaci:

y' = f(x,y)
z narzuconym warunkiem początkowym postaci y(x0)=y0.
Wykorzystujemy rozwinięcie funkcji w szereg Taylora

1. Algorytm Eulera - metoda jawna

Kończymy rozwinięcie na wyrazie pierwszym.

Zaczynając od ustalonego warunku początkowego x0,y0 można otrzymać y1, a następnie z tego samego wzoru kolejne wartości y2, y3.. itd

2. Metoda trapezów (Heuna)- metoda jawna

Metoda ta różni się od metody Eulera tylko tym że wartość ilorazu róznicowego w punkcie (xi,yi), przyjmuje średnią arytmetyczną pochodnych w punkcie (xi,yi) oraz (x+1,yi+1)

3. Metoda Runge-Kutty - metoda samostartująca

Wzory Rungego-Kutty rzędu czwartego przybierają postać:

4. Metoda Adamsa-Bashfortha - metoda wielokrokowa

Wzory dla wielomianów stopni od 1 do 4:

By otrzymać rozwiązanie, należy obliczyć przy pomocy wzorów Rungego-Kutty wartości yi-1, yi-2, yi-3...Ostatnia wartośc yi-n jest wartością początkową. Na tej podstawie obliczamy wartość yi. Następnie wartość ta zajmuje miejsce wartości yi-1 i obliczenia są powtarzane.

5. Metoda Adamsa-Moultona- metoda predyktor-korektor(wielokrokowa)

Wzory dla wielomianów stopni od 1 do 4:
By otrzymać rozwiązanie, należy obliczyć przy pomocy wzorów Rungego-Kutty wartości yi-1, yi-2, yi-3.... Na tej podstawie obliczamy wartość yi w oparciu o wzór ekstrapolacyjny (etap predyckji). Następnie wartość ta jest poprawiana w oparciu o wzór interpolacyjny (etap korekcja).

Zadania

  1. Rozwiązać równanie y'= x+y, z krokiem h=0.1 i wartościami początkowymy x0=0 i y0=1. Podaj pierwsze 3 wartości. Rozwiąż za pomocą:

Spróbuj rozwiązać równanie analitycznie i następnie przedstawić na wykresie wszystkie rozwiązania.
2. Znaleźć rozwiązanie równania y'=cos(x) - sin(x) -y, z warunkiem początkowym y(0)=2 metodą Rungego-Kutty drugiego rzędu, dla x należącego do <0, 0.3> z krokiem h=0.1.
3. Porównaj metody wielokrokowe na przykładzie y'=y-x2, y(0)=1, h=0.1.
4. Napisz własną funkcję rozwiązująca równania różniczkowe porównującą dwie metody. Sprawdź co dzieje się gdy zmniejszamy krok (h=0.1, 0.01, 0.001)