Zaawansowane metody numeryczne Komputerowa analiza
Transkrypt
Zaawansowane metody numeryczne Komputerowa analiza
Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 4. Równania różniczkowe zwyczajne — podstawy teoretyczne P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Wstep ˛ Najogólniejsza˛ postacia˛ równania różniczkowego zwyczajnego (ODE, Ordinary Differential Equation) rz˛edu n jest wyrażenie postaci F x, y, dny dy ,..., n dx dx ! = 0, (1) gdzie y : R → R lub, niekiedy, y : C → C. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 2 Jeśli pochodna F po ostatnim argumencie nie znika (przynajmniej lokalnie), (1) zapisujemy jako dny dn−1y ! e x, y, dy , . . . , = F . n n−1 dx dx dx (2) Trzeba jednak pamietać, ˛ iż transformacja od (1) do (2) może wymagać dookreślenia (w tym sensie równanie (1) może nie być jednoznaczne). 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 3 Przykład: Równanie (ẏ )2 + y 2 = 1 (3a) można zinterpretować na jeden z dwu sposobów: q 1 − y2 , ẏ = q ẏ = − 1 − y 2 . 4. Równania różniczkowe zwyczajne — podstawy teoretyczne (3b) (3c) 4 Układy równań pierwszego rzedu ˛ Równanie w postaci (2) na ogół przedstawia sie˛ w postaci układu n równań pierwszego rz˛edu. Najprostsza — co nie oznacza, iż w każdym wypadku najlepsza — transformacja od równania rz˛edu n do układu n równań pierwszego rz˛edu ma postać: y1 ≡ y , dy dy1 d2y dy2 dn−1y dyn−1 ≡ = y2 , ≡ = y3 , . . . , n−1 ≡ = yn , (4) dx dx dx2 dx dx dx dny dyn ≡ = Fe (x, y1, y2, . . . , yn) . n dx dx Dlatego od tej pory bedziemy ˛ sie˛ zajmować głównie układami równań rz˛edu pierwszego. Układy te nie musza˛ mieć postaci sugerowanej przez transformacje˛ (4), ale widać, że takie zainteresowanie nie ogranicza ogólności rozważań. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 5 Numerycznie można poszukiwać tylko szczególnych (nie ogólnych) rozwiaza ˛ ń równań różniczkowych. Rozwiazanie ˛ równania rz˛edu n lub też, co równoważne, układu n równań rz˛edu pierwszego, zależy od n stałych wyznaczanych z warunków, jakie spełniać ma poszukiwana funkcja. Jeśli wszystkie te warunki zadane sa˛ w jednym punkcie, czyli dla jednej wartości zmiennej niezależnej, mówimy, iż dany jest problem poczatkowy, ˛ zwany inaczej problemem Cauchy’ego. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 6 Problem Cauchy’ego: dy = f (x, y) dx (5) y(x0) = y0 gdzie y, y0 ∈ Rn, f : R × Rn → Rn (czasami zamiast R bierze sie˛ C). 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 7 Twierdzenie Peana Twierdzenie 1. Jeżeli funkcja f jest ciagła ˛ w pasie x0 6 x 6 X, to problem Cauchy’ego (5) ma rozwiazanie ˛ w tym pasie. Tradycyjnie, acz niezgodnie z zasadami polszczyzny, twierdzenie to zwane jest “twierdzeniem Peano”. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 8 Uwaga: Twierdzenie Peana nie gwarantuje jednoznaczności rozwiaza ˛ ń. Przykład: Problem Cauchy’ego ( q ẏ = 2 |y| y(0) = 0 (6) ma co najmniej dwa różne rozwiazania: ˛ (7a) y1(t) = 0 , oraz y2(t) = −t2 t2 t 6 0, t>0 (7b) (zauważmy, że dy2/dt = 2|t|). 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 9 Twierdzenie Picarda Twierdzenie 2. Jeżeli funkcja f jest ciagła ˛ w pasie x0 6 x 6 X oraz spełnia warunek Lipschitza ze wzgledu ˛ na druga˛ zmienna: ˛ ∃L > 0 ∀ x : x0 6 x 6 X, ∀ y1, y2 : ||f (x, y1) − f (x, y2)|| 6 L||y1 − y2|| to problem Cauchy’ego (5) ma w tym pasie rozwiazanie ˛ i jest ono jednoznaczne. Metody numeryczne ograniczaja˛ sie˛ do przypadków spełniajacych ˛ założenia twierdzenia Picarda. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 10 Twierdzenie o ciagłej ˛ zależności rozwiazania ˛ od warunków poczatkowych ˛ Twierdzenie 3. Niech funkcja f bedzie ˛ różniczkowalna w sposób ciagły ˛ w pewnym otoczeniu punktu (x0, y0) ∈ R × Rn. Wówczas istnieje takie otoczenie U ⊂ R punktu x0 i takie otoczenie S ⊂ Rn, y0 ∈ S, w którym problem Cauchy’ego dy/dx = f (x, y), y(x̃) = ỹ ma rozwiazanie ˛ dla wszystkich x̃ ∈ U , ỹ ∈ S. Rozwiazanie ˛ to zależy przy tym od punktu poczatkowego ˛ (x̃, ỹ) w sposób ciagły. ˛ 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 11 Metody numeryczne ↓ zamiana problemu ciagłego ˛ na dyskretny x0, x1 = x0 + h, x2 = x1 + h, . . . , xn = xn−1 + h, . . . y0 = y(x0), y1 = y(x1), y2 = y(x2), . . . , yn = y(xn), . . . h — krok czasowy (niekiedy może sie˛ zmieniać, ale o tym później) 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 12 Metoda jawna (explicit) s–krokowa, rz˛edu p: yn+1 = F (h; xn, yn, yn−1, . . . , yn−s+1) + O(hp+1) (8) Przepis konstrukcyjny pozwalajacy ˛ wyliczyć wartość poszukiwanej funkcji w kolejnym punkcie korzystajac ˛ z s punktów, w których wartość ta jest znana. Różnica pomiedzy ˛ dokładnym a przybliżonym rozwiazaniem ˛ jest (w jednym kroku) rz˛edu hp+1. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 13 Metoda niejawna (implicit) s–krokowa, rz˛edu p: yn+1 = G(h; xn, yn+1, yn, yn−1, . . . , yn−s+1) + O(hp+1) (9) Równanie algebraiczne (na ogół nieliniowe, wielowymiarowe), jakie musi spełniać poszukiwana funkcja w kolejnym punkcie. Równanie to trzeba numerycznie rozwiazać ˛ w każdym kroku całkowania równania różniczkowego. W równaniu uwzgledniane ˛ sa˛ informacje z s punktów, w których poszukiwana funkcja jest już znana. Różnica pomiedzy ˛ dokładnym a przybliżonym rozwiazaniem ˛ jest (w jednym kroku) rz˛edu hp+1. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 14 Zgodność Od każdej metody numerycznego całkowania równań różniczkowych wymaga sie, ˛ aby była zgodna z wyjściowym równaniem, to jest aby odtwarzała je w granicy nieskończenie małych kroków. Przykład: Dla metody jawnej (8) rozpatrzmy wyrażenie yn+1 − yn F (h; xn, yn, yn−1, . . . , yn−s+1) − yn = . h h (10) Lewa strona (10) nie zależy od wyboru metody i jest równa (yn+1 − yn)/h = (y(xn +h)−y(xn))/h, a zatem jej granica przy h → 0+ wynosi dy/dx|x=xn = f (xn, yn). 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 15 Cała informacja o metodzie zawarta jest w prawej stronie (10), a zatem warunkiem zgodności metody (8) jest F (h; xn, yn, yn−1, . . . , yn−s+1) − yn = f (xn, yn) . h h→0+ lim (11) Dla metod niejawnych zapisanych formalnie w postaci (9) nie można podać kryterium zgodności w postaci zwartej (można to zawsze zrobić dla konkretnej metody niejawnej), tym niemniej wymaga sie, ˛ aby wszystkie, a wiec ˛ także niejawne, metody były zgodne. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 16 Stabilność Podczas numerycznego rozwiazywania ˛ równań różniczkowych popełnia sie˛ dwa rodzaje nieuniknionych błedów ˛ numerycznych: • bład ˛ metody, wynikajacy ˛ z zastapienia ˛ ścisłego problemu ciagłego ˛ problemem dyskretnym oraz • bład ˛ zaokraglenia, ˛ wynikajacy ˛ z faktu, iż obliczenia prowadzone sa˛ ze skończona˛ dokładnościa. ˛ 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 17 Dlatego też warunek poczatkowy ˛ w problemie Cauchy’ego ulega w każdym kroku „rozmyciu”: dy dy dy = f (x, y) = f (x, y) = f (x, y) dx dx dx −→ −→ y(x ) = y y(x ) = y +ε y(x ) = y +ε 0 0 1 1 1 2 2 2 (12) Gdyby ten „bład ˛ rozmycia” mógł propagować sie˛ z kroku na krok, rozwiazanie ˛ numeryczne szybko mogłoby przestać mieć cokolwiek wspólnego z rozwiazaniem ˛ wyjściowego problemu Cauchy’ego: aby metoda była stabilna, błedy ˛ popełniane w kolejnych krokach nie moga˛ narastać z kroku na krok. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 18 Zakładamy, że błedy ˛ sa˛ niewielkie, ||εn|| 1, możemy sie˛ wiec ˛ ograniczyć do przybliżenia liniowego. W tym przybliżeniu εn+1 = Gεn . (13) Błedy ˛ nie bed ˛ a˛ narastać z kroku na krok, jeśli wszystkie wartości własne macierzy G bed ˛ a˛ spełniać |γ| < 1. Macierz G nazywamy macierza˛ wzmocnienia. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 19 Przykład: Dla jednokrokowej metody jawnej yn+1 + εn+1 = F (h; xn, yn + εn) ' ∂F F (h; xn, yn) + εn . ∂ y y=yn (14) W powyższym wyrażeniu ∂F /∂ y oznacza różniczkowanie wszystkich składowych F po wszystkich składowych y, czyli obliczanie jakobianu: Dla jednokrokowej metody jawnej ∂F G= (h; xn, yn) . ∂y (15) Jeżeli jakaś metoda w ogóle może być stabilna dla danego równania, wymóg stabilności oznacza na ogół wziecie ˛ odpowiednio małego kroku h. Zgodnie z wyrażeniem (15), krok czasowy, który w pewnym punkcie zapewnia stabilność, może go nie zapewniać w innym. 4. Równania różniczkowe zwyczajne — podstawy teoretyczne 20