Komputerowa analiza zagadnień różniczkowych 5. Metody Rungego-Kutty (II) P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/



Podobne dokumenty
Komputerowa analiza zagadnień różniczkowych 3. Metody Eulera, metody punktu środkowego i metody trapezowe

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 7a. Metody wielokrokowe

Komputerowa analiza zagadnień różniczkowych 3. Metody Eulera, metody punktu środkowego i metody trapezowe

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 4. Równania różniczkowe zwyczajne podstawy teoretyczne

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 5. Terminologia. Metody Eulera, metody punktu środkowego i metody trapezowe

Wstęp do metod numerycznych 14. Kilka wstępnych uwag na temat numerycznego rozwiazywania równań różniczkowych zwyczajnych

Komputerowa analiza zagadnień różniczkowych 6. Metoda diagramowa. Obszary stabilności. P. F. Góra

Komputerowa analiza zagadnień różniczkowych 10. Dwupunktowe problemy brzegowe (BVP, Boundary Value Problems)

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

Wstęp do metod numerycznych Rozwiazywanie równań algebraicznych. P. F. Góra

Metody numeryczne równań różniczkowych zwyczajnych

Wstęp do metod numerycznych 9a. Układy równań algebraicznych. P. F. Góra

u(t) RRZ: u (t)=f(t,u) Jednokrokowy schemat różnicowy

Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa. P. F. Góra

Wstęp do metod numerycznych Eliminacja Gaussa Faktoryzacja LU. P. F. Góra

Komputerowa analiza zagadnień różniczkowych 1. Równania różniczkowe zwyczajne podstawy teoretyczne. P. F. Góra

Wstęp do metod numerycznych Faktoryzacja QR i SVD. P. F. Góra

Wstęp do metod numerycznych Zagadnienia wstępne Uwarunkowanie. P. F. Góra

Wstęp do metod numerycznych 9. Minimalizacja: funkcje jednej zmiennej. P. F. Góra

Wstęp do metod numerycznych Algebraiczna metoda gradientów sprzężonych. P. F. Góra

Wstęp do metod numerycznych Zagadnienia wstępne Uwarunkowanie. P. F. Góra

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 8. Metody wielokrokowe Metody Verleta

Komputerowa analiza zagadnień różniczkowych 6. Metody wielokrokowe. P. F. Góra

Wstęp do metod numerycznych Eliminacja Gaussa i faktoryzacja LU. P. F. Góra

Wstęp do metod numerycznych Zagadnienia wstępne Uwarunkowanie. P. F. Góra

Metody numeryczne. dr Artur Woike. Ćwiczenia nr 2. Rozwiązywanie równań nieliniowych metody połowienia, regula falsi i siecznych.

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

Metody numeryczne I Równania nieliniowe

Wstęp do metod numerycznych Interpolacja. P. F. Góra

Wstęp do metod numerycznych 9. Rozwiazywanie równań algebraicznych. P. F. Góra

Obliczenia iteracyjne

Komputerowa analiza zagadnień różniczkowych 1. Równania różniczkowe zwyczajne podstawy teoretyczne. P. F. Góra

Inżynierskie metody analizy numerycznej i planowanie eksperymentu / Ireneusz Czajka, Andrzej Gołaś. Kraków, Spis treści

Definicje i przykłady

Interpolacja i modelowanie krzywych 2D i 3D

Zaawansowane metody numeryczne

Z52: Algebra liniowa Zagadnienie: Zastosowania algebry liniowej Zadanie: Operatory różniczkowania, zagadnienie brzegowe.

Układy równań i równania wyższych rzędów

Wstęp do metod numerycznych Metody iteracyjne Algebraiczna metoda gradientów sprzężonych. P. F. Góra

Numeryczne rozwiązywanie równań różniczkowych ( )

Metody numeryczne. materiały do wykładu dla studentów. 7. Całkowanie numeryczne

Metody numeryczne w przykładach

pozbyć się ograniczenia na krok czasowy ze strony bezwzględnej stabilności: niejawna metoda Eulera

DOPASOWYWANIE KRZYWYCH

Wyk lad 4 Macierz odwrotna i twierdzenie Cramera

Metody przybliżonego rozwiązywania równań różniczkowych zwyczajnych

Wstęp do metod numerycznych 12. Minimalizacja: funkcje wielu zmiennych. P. F. Góra

Wstęp do metod numerycznych 11. Minimalizacja: funkcje wielu zmiennych. P. F. Góra

Całkowanie numeryczne przy użyciu kwadratur

Wstęp do metod numerycznych Równania macierzowe Faktoryzacja LU i Cholesky ego. P. F. Góra

Metody rozwiązywania równań nieliniowych

Równania poziom podstawowy (opracowanie: Mirosława Gałdyś na bazie = Rozwiąż układ równań: (( + 1 ( + 2 = = 1

Egzamin z Metod Numerycznych ZSI, Grupa: A

Metody Numeryczne w Budowie Samolotów/Śmigłowców Wykład I

Matematyka licea ogólnokształcące, technika

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

Metoda eliminacji Gaussa. Autorzy: Michał Góra

RÓWNANIA RÓŻNICZKOWE WYKŁAD 2

Metody numeryczne. Sformułowanie zagadnienia interpolacji

Metoda Runge-Kutta-Fehlberga i sterowanie długością kroku

Laboratorium II: Modelowanie procesów fizycznych Skrypt do ćwiczeń

Układy równań liniowych. Krzysztof Patan

Δt)] niejawny schemat Eulera [globalny błąd O(Δt)] u(t) f(t,u) f(t,u) u(t) [t+ Δt,u(t+Δt)]

II. RÓŻNICZKOWANIE I CAŁKOWANIE NUMERYCZNE Janusz Adamowski

Rozwiazywanie układów równań liniowych. Ax = b

Metody numeryczne. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/50

3 1 + i 1 i i 1 2i 2. Wyznaczyć macierze spełniające własność komutacji: [A, X] = B

Wstęp do metod numerycznych 11. Minimalizacja: funkcje jednej zmiennej. P. F. Góra

Wstęp do metod numerycznych 7. Interpolacja. P. F. Góra

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Interpolacja, aproksymacja całkowanie. Interpolacja Krzywa przechodzi przez punkty kontrolne

Wstęp do metod numerycznych Metody iteracyjne i metoda gradientów. P. F. Góra

KADD Minimalizacja funkcji

2. DZIAŁANIA NA WIELOMIANACH

BŁĘDY OBLICZEŃ NUMERYCZNYCH

3a. Wstęp: Elementarne równania i nierówności

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

RÓWNANIA NIELINIOWE Maciej Patan

Wstęp do metod numerycznych 9. Miejsca zerowe wielomianów. P. F. Góra

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Obliczenia naukowe Wykład nr 2

Optymalizacja ciągła

Metoda eliminacji Gaussa

Wykład z równań różnicowych

Wstęp do metod numerycznych SVD, metody iteracyjne i metoda gradientów. P. F. Góra

x y

Całkowanie numeryczne

OBLICZANIE POCHODNYCH FUNKCJI.

Metoda Różnic Skończonych (MRS)

Matematyka 2. Równania różniczkowe zwyczajne rzędu drugiego

Komputerowa analiza zagadnień różniczkowych 2. O tym, co można rozwiazać analitycznie. P. F. Góra

Programowanie Równoległe i Rozproszone. Algorytm Kung a. Algorytm Kung a. Programowanie Równoległe i Rozproszone Wykład 8. Przygotował: Lucjan Stapp

na egzaminach z matematyki

ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ

Obliczenia naukowe Wykład nr 8

Metody numeryczne. materiały do wykładu dla studentów

Całka nieoznaczona, podstawowe wiadomości

Wstęp do metod numerycznych Faktoryzacja Cholesky ego i QR. P. F. Góra

INTERPOLACJA I APROKSYMACJA FUNKCJI

Transkrypt:

Komputerowa analiza zagadnień różniczkowych 5. Metody Rungego-Kutty (II) P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/

Metody DIRK Jeśli spodziewamy się problemów ze stabilnościa, w szczególności jeśli rozwiazujemy problemy sztywne, powinniśmy stosować metody niejawne. Sa one jednak bardzo kosztowne obliczeniowo: jeżeli przy użyciu metody s-etapowej rozwiazkujemy problem m-wymiarowy, w każdym kroku musimy rozwiazywać s m wymiarowy układ równań algebraicznych, w ogólności nieliniowych. Aby zmniejszyć ten koszt nie tracac stabilności metod niejawnych, stosuje się metody DIRK (ang. Diagonally Implicit Runge-Kutta), zwane też metodami półniejawnymi (ang. semi-implicit). W metodach tych macierz B ma niezerowe elementy diagonalne i poddiagonalne elementy ponaddiago- Copyright c 9- P. F. Góra 5

nalne sa zerowe: α β α β β..... α s β s β s β s3 β ss w w w w s Dzięki temu, stosujac s-etapowa metodę do problemu m-wymiarowego, zamiast rozwiazywać jeden układ równań algebraicznych o wymiarze s m, należy rozwiazać s układów o wymiarze m po jednym układzie na każdy etap. Jest to numerycznie prostsze. () Jeżeli dodatkowo β = β = = β ss = γ, taka metodę nazywa się metoda SDIRK (Singly Diagonally Implicit Runge-Kutta). Copyright c 9- P. F. Góra 5 3

Przykład γ γ γ γ γ, γ = 3 + 3 Sprawdzamy rzad metody. Nietrywialnymi wyrażeniami, które trzeba sprawdzić, sa: γ + ( γ) = metoda jest rzędu drugiego. γ + ( γ) = γ γ+ = 3, γ γ+ (( γ) γ+γ ( γ)) = γ +γ = 6 metoda jest rzędu trzeciego. γ3 + ( γ)3 = 3γ 3γ+ = 6 4, γ γ γ+ ( γ) (( γ) γ + γ ( γ)) = 4γ 3 5γ +γ = 6+ 3 metoda nie jest rzędu czwartego. 36 8 6 () Copyright c 9- P. F. Góra 5 4

Obszar stabilności tej metody dany jest przez {z C: G(z) < }, gdzie G(z) = 6 (+ 3)z + 3z 6 [(3+ 3)z 6]. 6 4 - -4-6 4 6 8 Obszar niezacieniony jest obszarem niestabilności. Copyright c 9- P. F. Góra 5 5

Przykład Ciagle publikuje się i bada nowe metody RK. W pracy G. Yu. Kulikov, S. K. Shindin, Appl. Num. Math. 59, 77 (9), dyskutowane sa, między innymi, własności metody c 6(c +θ) 5 θ θ 6(c +θ) 5 c 7 6(c +θ) θ θ 5 6(c +θ) c = 3 3, θ = 6 + 3 9 Copyright c 9- P. F. Góra 5 6

Adaptacyjne podwajanie/połowienie kroku Całkowanie ze stałym krokiem to numeryczne samobójstwo. Dobre algorytmy numerycznego całkowania ODE powinny, w miarę możności, same ustalać krok, z jakim przechodza zadany przedział. W tym celu algorytm musi znać oszacowanie błędu popełnionego w ciagu jednego kroku. Dla metod Rungego-Kutty najprostszym tego typu algorytmem jest algorytm adaptacyjnego podwajania/połowienia kroku. Przypuśćmy, że żadam, aby bład na jeden krok nie przekraczał max. Niech aktualny krok całkowania wynosi h. Przechodzę przedział [x n, x n + h] dwa razy: raz dwoma krokami o długości h i raz krokiem o długości h. Copyright c 9- P. F. Góra 5 7

y n y () n+ x n x n + h x n + h dwa razy z małym krokiem } {{ }} {{ } h h y n y () n+ x n x n + h raz z dużym krokiem } {{ } h Copyright c 9- P. F. Góra 5 8

W ten sposób otrzymuję dwa oszacowania wartości y n+. Dla metody rzędu p spełniaja one Różnica y(x n + h) = y () n+ + hp+ φ + O(h p+ ), (3a) y(x n + h) = y () n+ + (h)p+ φ + O(h p+ ). (3b) = y () n+ y() n+ (4) stanowi oszacowanie błędu. Zachodza dwa przypadki:. max : Wówczas przechodzę do punktu x n+ = x n + h, jako rozwiazanie przyjmuję y(x n + h) = y () n+, zwiększam krok Copyright c 9- P. F. Góra 5 9

h h i próbuję przejść następny przedział z dwa razy większym krokiem.. > max : Wówczas cofam się do punktu x n, zmniejszam krok h h/ i ponawiam cała procedurę. W tym wypadku należy się zabezpieczyć przed zmniejszeniem się kroku poniżej pewnego h min. Istotne może być jaka normę weźmiemy. Dla klasycznej metody czteroetapowej wymaga to 4 + 4 = obliczeń prawej strony. Metoda adaptacyjnego podwajania/połowienia kroku może być stosowana także przy obliczeniach za pomoca metod niejawnych. Copyright c 9- P. F. Góra 5

Przykład oscylator Duffinga i podwajanie/połowienie kroku x(t) 4... -. -4. 4. 4 6 8 4 6 ẍ + x 3 5x = x() = 3., ẋ() = x (t) h.. -. -4. 4 6 8 4 6.3.. - - -3-4 -5-6. 4 6 8 4 6 t -7-3 - - 3 Mały rysunek pokazuje potencjał Duffinga. Copyright c 9- P. F. Góra 5

Lokalna ekstrapolacja Jeśli popełniany bład nie przekracza maksymalnego błędu dopuszczalnego, można jeszcze poprawić rozwiazanie za pomoca tak zwanej lokalnej ekstrapolacji: Przyjmijmy, że lewe strony obu równań (3) sa sobie równe. Wówczas eliminujac h p+ φ otrzymujemy y(x n + h) = y () n+ + p + O(hp+ ). (5) Może to poprawić numeryczne własności rozwiazania, ale tak naprawdę zysk na rzędzie metody jest pozorny. Copyright c 9- P. F. Góra 5

Zagnieżdżone (embedded) metody Rungego-Kutty Rozważmy dwie jawne s-etapowe metody Rungego-Kutty: y () n+ = y n + h y () n+ = y n + h k i = y n + hf s i= s i= w () i k i + O(h p+ ), (6a) w () i k i + O(h p+ ), (6b) x n + α i h, y n + h i j= β ij k j (6c) Metody te sa tak skonstruowane, że różnia się jedynie wagami, maja takie same punkty pośrednie, a więc taki sam zestaw wektorów {k i }, a ich rzędy różnia się o jeden. Copyright c 9- P. F. Góra 5 3

Obliczajac jeden zestaw pochodnych w punktach pośrednich, mamy oszacowanie błędu: = y () s ( n+ y() n+ = h w () i w () ) i k i, h p+. (7) i= Skoro h p+, to max h p+ max. Mam więc oszacowanie h max = h ( max ) /(p+). (8) Jeśli > max, zmniejszam krok h h max i powtarzam bieżacy krok. Jeśli < max, zwiększam krok h h max i z powiększonym krokiem próbuję iść dalej. Metody zagnieżdżone pozwalaja zatem na bardziej precyzyjna kontrolę kroku od podwajania/połowienia, wymagaja także mniej obliczeń (s obliczeń funkcji f). Copyright c 9- P. F. Góra 5 4

Przykład: Metoda Bogackiego-Shampine a 3() 3 4 9 9 7 4 3 4 3 3 4 4 9 4 9 3 8 Puste miejsca oznaczaja zera. Uwaga: Dwa zestawy wag! Metoda typu FSAL (First Same As Last). Copyright c 9- P. F. Góra 5 5

Sprawdzamy rzędy tych metod: pierwszy zestaw wag drugi zestaw wag 9 + 3 + 4 9 3 4 + = 6 + 3 = ; 7 4 + 4 + 3 3 4 + 8 = 8 + 4 + 8 = ; 9 + 3 + 4 9 6 + 3 = jest rzędu drugiego 9 + 3 ( ) + 4 9 ( 3 4 + ) + (... ) = ( 3 4 ) + = 7 4 + 4 + 3 4 + 8 8 + 4 + 8 = jest rzędu drugiego 7 4 + 4 ( ) + 3 ( 3 4 ( 9 + 3 + 4 9 ) + 8 = ) = + 4 = 3 ; 6 + 3 6 + 8 = 3 8 3 9 + 3 + 4 9 4 9 3 8 = 6 jest rzędu trzeciego ( + 3 4 ) + = nie jest rzędu trzeciego Copyright c 9- P. F. Góra 5 6

Obszary stabilności metody Bogackiego-Shampine a dane sa przez następujace wyrażenia: Dla metody rzędu trzeciego, służacej do obliczania następnych wartości poszukiwanej funkcji: ( z 3 + 3z + 6z + 6 ) < (9a) 6 Dla metody rzędu drugiego, służacej do kontroli błędu: 48 ( z 4 + 9z 3 + 4z + 48z + 48 ) < (9b) Krok powinien być tak dobrany, aby nie wyjść poza obszar stabilności żadnej z metod. Copyright c 9- P. F. Góra 5 7

Obszary stabilności metody Bogackiego-Shampine a 3 - - nd order 3 rd order -3-5 -4-3 - - Copyright c 9- P. F. Góra 5 8

Jawnie rozpisana metoda Bogackiego-Shampine a: k = f(x n, y n ) (a) k = f ( x n + h, y n + hk k 3 = f ( x n + 3 4 h, y n + 3 4 hk ) ) (b) (c) y n+ = y n + h ( 9 k + 3 k + 4 9 k 3 (d) k 4 = f(x n + h, y n+ ) (e) z = y n + h ( 7 4 k + 4 k + 3 k 3 + 8 k ) 4 (f) k = k 4 (g) Wektor (e) staje się wektorem (a) w następnym kroku całkowania, a więc oblicza się go tylko raz. Wektor z bierze udział tylko w szacowaniu błędów. ) Copyright c 9- P. F. Góra 5 9

Metoda Fehlberga 4(5) 4 3 8 4 3 3 9 3 3 93 7 97 97 439 6 8 796 97 368 53 845 44 8 3544 7 565 859 44 4 5 6 48 565 97 44 5 6 35 6656 85 856 5643 9 5 Pierwszy zestaw wag daje rozwiazanie rzędu czwartego, drugi rzędu piatego. 55 Copyright c 9- P. F. Góra 5

Metoda Casha-Karpa 5(4) 5 3 3 5 5 3 4 54 7 8 9 4 3 9 63 5596 6 5 5 7 7 75 5 575 384 35 7 4475 59 93 496 37 378 85 7648 5 6 8575 48384 5 594 355 5596 77 4336 5 77 Pierwszy zestaw wag daje rozwiazanie rzędu piatego, drugi rzędu czwartego. Mniejsze błędy, niż Fehlberg. 4 Copyright c 9- P. F. Góra 5

Metoda Dormanda-Prince a 5(4), FSAL 5 3 4 5 8 9 5 3 4 9 4 44 56 45 5 937 536 656 87 97 355 368 33 35 384 579 576 35 384 3 9 64448 656 79 4673 547 5 3 757 6695 5 3 49 53 76 8656 5 87 9 6784 393 997 64 339 5 87 9 6784 84 87 4 84 Pierwszy zestaw wag daje rozwiazanie rzędu czwartego, drugi rzędu piatego. Taka sama złożoność, jak Cash-Karp (sześć obliczeń funkcji na krok), ale mniejsze błędy. Copyright c 9- P. F. Góra 5

State of the art Zagnieżdżone metody Rungego-Kutty wysokiego rzędu, typu metoda Dormanda-Prince a, pozwalajace na adaptacyjna zmianę kroku, kontrolujace stabilność i wyprowadzajace wyniki ze stałym krokiem, stanowia obecnie state of the art w numerycznym rozwiazywaniu zagadnień poczatkowych dla równań nie-sztywnych. Sprawdzanie stabilności na ogół odbywa się automatycznie narastajacy bład jest oznaka niestabilności, a metoda i tak zmniejsza krok, gdy bład jest za duży. Copyright c 9- P. F. Góra 5 3

Pewien wariant metody punktu środkowego Przypuśćmy, iż rozwiazuj ac pewien problem Cauchy ego decydujemy się wyprowadzać wyniki z krokiem H, krok ten jednak jest za duży do obliczeń (powodowałby zbyt duży bład). Wykonujemy więc m małych kroków o długości h = H/m. () Copyright c 9- P. F. Góra 5 4

Stosujemy metodę z y n, (a) z = z + hf(x n, z ) (Euler) (b) dla j =, 3,..., m z j = z j + hf(x n + (j )h, z j ) (c) (pochodna w punkcie środkowym) y(x n + H) y n+ = ( zm + z m + hf(x n + H, z m ) ) (d) Copyright c 9- P. F. Góra 5 5

Metoda ta wymaga m + obliczeń prawej strony równania na kroku o długości H. Można pokazać, iż bład tej metody zawiera tylko parzyste potęgi h: y(x n + H) y n+ = j= a j h j. (3) W szczególności, jeśli m jest parzyste i zastosujemy metodę () dwa razy, z m i m/ kroków, dostaniemy y(x n + H) 4y m y m/ + O(h 5 ) (4) 3 a więc jest to metoda rzędu czwartego. (y m/ oznacza końcowy wynik po zastosowaniu m/ kroków o długości H/m, nie zaś połowę kroków o długości H/m.) Wyrażenia (3) i (4) bardzo przypominaja analogiczne wyrażenia dla całkowania metodami ekstrapolacji Richardsona i Romberga, a skoro tak, narzuca się zastosowanie jakiegoś ekstrapolacyjnego algorytmu całkowania ODE. Copyright c 9- P. F. Góra 5 6

Metoda Bulirscha-Stoera Przypuśmy, iż przechodzimy przedział [x n, x n + H] przy użyciu metody () kolejno z krokami h m = H/m dla m =, 4, 8,.... Otrzymujemy w ten sposób ciag kolejnych przybliżeń wartości y(x n + H). Jeśli tak otrzymany ciag ekstrapolujemy do nieskończonej liczby kroków pośrednich lub też, w innym sformułowaniu, do h m oszacujemy jak powinno wygladać numeryczne rozwiazanie badanego ODE w granicy infinitezymalnie małych kroków. Możemy użyć ekstrapolacji wielomianowej lub poprzez funkcje wymierne. Cała ta procedura jest dość (ale nie przesadnie) kosztowna i warto ja stosować, gdy zależy nam na szczególnie dokładnych rozwiazaniach, prawa strona równania zmienia się powoli. Copyright c 9- P. F. Góra 5 7

Podobnie jak w ekstrapolacji Richardsona, w zasadzie podejście to można stosować tylko gdy ciag kolejnych przybliżeń jest monotoniczny. Proces dzielenia odcinka kończymy gdy bład ekstrapolacji jest mniejszy od zadanej tolerancji. m= m=4 m=8 m= y x n x x n+ Copyright c 9- P. F. Góra 5 8

log m obliczenie ekstrapolacja.638383458664 3.6383693358667.6378347739768 4.63796755698376.6376866943444 5.6379374346.6377733338958 6.63789533545684.6377996545856 7.637875893336.63779658574448 8.63786997378558.63779859743868 9.6378579883888.637799565367.637843895554864.6378795968.637837793985668.63783687443.637839395989.63785345948 3.637899639.6378645479896 4.63785789395.6378779444864 5.63783954638.637876434944 6.6378834355576.6378796876 Copyright c 9- P. F. Góra 5 9

.638 Graficzna ilustracja powyższych danych:.638.638.638.6379.6379.6378.6378.6377.6377 obliczone ekstrapolowane.6376.5..5..5.3 h Copyright c 9- P. F. Góra 5 3

Zbyt duży stopień wielomianu ekstrapolacyjnego:.638.638 obliczone ekstrapolowane.638.6379.6378.6377.6376 oscylacje Rungego.6375.6374.6373.5..5..5.3 h Ekstrapolacja funkcjami wymiernymi byłaby lepsza. Copyright c 9- P. F. Góra 5 3

Przykład zastosowania metody Bulirscha-Stoera:.6.5 Bulirsch-Stoer, H=/8 rozw. biblioteczne.4.3... -. -. -.3 -.4 4 6 8 4 6 x d y dx + xdy dx + (x )y = x Copyright c 9- P. F. Góra 5 3

Odpowiednik metody Bulirscha-Stoera dla układów sztywnych Jeśli spodziewamy się problemów ze stabilnościa, używamy metod niejawnych, czasami jednak dokonujemy pseudolinearyzacji celem uproszczenia obliczeń. Punktem wyjścia jest następujaca metoda niejawna: y n+ y n = hf = hf ( x n, y n+ + y n ) x n, y n + y n+ + y n y n. (5) } {{ } poprawka Copyright c 9- P. F. Góra 5 33

Rozwijam prawa stronę (5) wokół (x n, y n ) i porzadkuję wyrazy: I h f y xn,y n y n+ = I + h f y y n xn,y n + h f(x n, y n ) h f y y n xn,y n.(6) Powyższe wyrażenie jest liniowym (w odróżnieniu od nieliniowego wyrażenia (5)) równaniem na nieznana wielkość y n+. Opierajac się na (6), można skonstruować odpowiednik metody (). Będa w nim występowały Jakobiany f/ y obliczane w kolejnych punktach pośrednich. Dokonuję następnego uproszczenia: wszystkie Jakobiany wyliczam w lewym krańcu dużego przedziału. Ostatecznie dostaję (h = H/m): Dziękuję panu Piotrowi Kiełkowiczowi za wskazanie błędu. Copyright c 9- P. F. Góra 5 34

H = [ I h f y xn,y n ], (7a) z = y n, (7b) = H hf(x n, z ), (7c) z = z +, (7d) j = j + H [hf(x n + jh, z j ) j ], (7e) z j+ = z j + j, (7f) dla j =,,..., m m = H [hf(x n + H, z m ) m ], (7g) y(x n + H) z m + m. (7h) Równania H = można rozwiazać na przykład metoda rozkładu LU. Ponieważ zgodnie z przyjętym uproszczeniem macierz H jest taka sama we wszystkich krokach iteracji (7), rozkładu tego można dokonać tylko raz. Dalej postępuję tak, jak poprzednio: h. Zagęszczam podział i stosuję ekstrapolację do Copyright c 9- P. F. Góra 5 35