µk H" 10-2,µk +1 H" 10-4,µk +2 H" 10-8,µk +3 H" 10-16,...
p=2 metoda kwadratowa
11
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda bisekcji (połowienia)
Punkt początkowy x0 poło\ony jest na środku przedziału początkowego [a,b].
W ka\dej iteracji przedział przeszukiwania jest dzielony na połowy.
W kolejnym kroku rozpatrywana jest połowa zawierająca rozwiązanie (tj.
mająca ró\ne znaki funkcji na granicach przedziału). W n-tej iteracji przedział
poczÄ…tkowy jest podzielony przez 2n a rozwiÄ…zanie jest ograniczone przez
a - b
" =
"n =
2n
Mo\na z góry określić maksymalną liczbę iteracji k, niezbędną do uzyskania
xk - xk -1 < µ1
dokładności
ëÅ‚ öÅ‚
b - a b - a
d" µ1
k = log2 ìÅ‚
2k
µ1 ÷Å‚
íÅ‚ Å‚Å‚
k zaokrąglone do liczby całkowitej (od góry)
12
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda bisekcji - algorytm
1) Oblicz f(a) i f(b) na granicach przedziału [a, b] powinno być f(a)f(b) < 0
2) Oblicz przybli\enie rozwiÄ…zania x=(a+b)/2 ;
Sprawdz kryterium stopu
Je\eli kryterium stopu spełnione zatrzymaj obliczenia
Je\eli nie, przejdz do punktu 3.
3) Oblicz f(x)
Je\eli f(a)f(x) > 0 , to rozwiÄ…zanie znajduje siÄ™ w przedziale [x, b];
zawę\amy granice przyjmując dla nowego przedziału
a=x, f(a)=f(x) i kontynuujemy algorytm przechodzÄ…c do kroku 2)
Je\eli f(a)f(x) < 0 , to rozwiÄ…zanie znajduje siÄ™ w przedziale [a, x];
zawę\amy granice przyjmując dla nowego przedziału
b=x, f(b)=f(x) i kontynuujemy algorytm przechodzÄ…c do kroku 2)
Je\eli f(x) = 0, to rozwiązanie zostało znalezione - zatrzymaj obliczenia.
13
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda bisekcji interpretacja geometryczna
Rys. 2.7
14
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda bisekcji przypadek patologiczny
Rys. 2.8
15
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda bisekcji zbie\ność
Zatrzymanie obliczeń następuje gdy
- znaleziono rozwiązanie dokładne ;
- spełniono kryterium zatrzymania (dotyczące np. wielkości przedziału
ograniczającego rozwiązanie lub wartości funkcji f(x))
Zbie\ność metody
Metoda bisekcji jest zbie\na liniowo z wykładnikiem p=1 i stałą C=1/2.
Metoda bisekcji jest zbie\na liniowo z wykładnikiem p=1 i stałą C=1/2.
Zalety: zbie\ność zawsze zapewniona, mo\liwość oszacowania liczby
iteracji potrzebnych do wygenerowania rozwiązania o określonej
dokładności.
Wady: wolna zbie\ność
16
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda cięciw (Regula Falsi)
Nowe przybli\enie pierwiastka jest wyznaczone przez punkt xp, w którym prosta
łącząca punkty o współrzędnych (a, f(a)) i (b, f(b)) przecina oś x
xp - a b - xp
af (b) - bf (a)
= , xp =
0 - f (a) f (b) - 0 f (b) - f (a)
Je\eli f(x ) = 0 to pierwiastek został znaleziony.
Je\eli f(xp) = 0 to pierwiastek został znaleziony.
Je\eli nie, to zawę\amy przedział ograniczający rozwiązanie w zale\ności
od zmiany znaku funkcji na granicach przedziału, wybierając
przedział [xp,b] je\eli f(xp)f(b) < 0 lub przedział [a,xp] jeśli f(xp)f(b) > 0 .
Rozwiązanie poszukiwane jest iteracyjnie, w ka\dej kolejnej iteracji przedział zawierający
pierwiastek jest zawę\any w zale\ności od znaku f(xp)f(b).
17
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda cięciw - algorytm
1) Wybierz przedział [a,b] (w którym funkcja zmienia znak); oblicz ya=f(a) i yb=f(b).
af (b) - bf (a) bya - ayb b - a
2) Oblicz
x = = = a - ya
w celu zmniejszenia
f (b) - f (a) ya - yb yb - ya
błędów zaokrąglenia
sprawdz kryterium zatrzymania algorytmu
3) Je\eli f(x)f(b) > 0 , pierwiastek znajduje siÄ™ w przedziale [a,x];
3) Je\eli f(x)f(b) > 0 , pierwiastek znajduje siÄ™ w przedziale [a,x];
podstaw nową granicę b=x, yb=f(x) i wróć do kroku 2)
Je\eli f(x)f(b) < 0 pierwiastek znajduje siÄ™ w przedziale [x,b];
podstaw nową granicę a=x, ya=f(x) i wróć do kroku 2)
Je\eli f(x) = 0, znaleziono rozwiÄ…zanie, zatrzymaj obliczenia
Obliczenia mogą być zatrzymane po spełnieniu
podobnych kryteriów stopu jak w metodzie bisekcji.
18
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda cięciw interpretacja geometryczna
Rys. 2.9
19
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda cięciw zbie\ność
Zbie\ność metody
1+ 5
Metoda cięciw jest rzędu
p = H" 1.62
2
Zalety: pewność, szybsza zbie\ność ni\ metoda bisekcji.
Zalety: pewność, szybsza zbie\ność ni\ metoda bisekcji.
Wady: zbie\ność mo\e być wolna gdy f jest silnie wypukła lub wklęsła.
20
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda siecznych
Niech [a,b] będzie przedziałem zawierającym pierwiastek równania f(x)=0 a x0 wartością
rzędnej [a,b] dobraną tak aby f(x0)`"0 . Wybierzmy inny punkt startowy o rzędnej x1. Sieczna
Å‚Ä…czÄ…ca punkty (x0,f(x0)) i (x1,f(x1)) przecina oÅ› x w punkcie x2. Iteracyjnie kontynuujemy
procedurÄ™ przyjmujÄ…c punkty (x1,f(x1)) et (x2,f(x2)) w celu wyznaczenia kolejnego przybli\enia
rozwiązania o odciętej x2, itd. Otrzymujemy w ten sposób ciąg {xi} zdefiniowany przez
f (xn) (xn - xn-1)
xn+1 = xn - := F. )
xn+1 = xn - := F. )
(xn
(xn
f (xn ) - f (xn-1)
-
Zbie\ność jest zagwarantowana jedynie je\eli początkowa wartość x0 wybrana jest w bliskim
sąsiedztwie poszukiwanego pierwiastka który spełnia warunek .
2
F (x) < 1
21
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda siecznych - algorytm
Wybierz dwa punkty startowe x0 i x1 z przedziału [a,b]
Oblicz kolejne przybli\enie rozwiÄ…zania (n=1,2,& )
f (xn)(xn - xn-1)
xn+1 = xn - ; f (xn+1); n = n +1
f (xn) - f (xn-1)
Przerwij obliczenia je\eli
- znaleziono rozwiÄ…zanie problemu f(xn+1)=0
- lub spełniono warunek zatrzymania algorytmu, np.:
xn+1 - xn d" µ1
Uwaga : Początkowe wzory metody siecznych są podobne do metody cięciw ale sieczne
buduje siÄ™ bez sprawdzania warunku f(x1)f(x2) < 0 i wykorzystuje siÄ™ zawsze dwa
ostatnio wyznaczone punkty xn i xn-1.
22
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda siecznych interpretacja geometryczna
Rys. 2.10
23
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda stycznych (Newtona-Raphsona)
Załó\my, ze f(x) jest klasy C2 w otoczeniu pierwiastka x*.
Rozwinięcie f(x) w szereg Taylora wokół oszacowania xn wartości x* :
(x* - xn)2
f (x*) = f (xn) + (x* - xn ) f 2 (xn) + f 2 2 (xn )+&
2!
p
µn
Dla xn wystarczająco bliskiego x*, mo\na pominąć składniki rzędu (pe"0)
Poniewa\ x* jest pierwiastkiem f(x*) =0 , otrzymujemy przybli\enie
Poniewa\ x* jest pierwiastkiem f(x*) =0 , otrzymujemy przybli\enie
f (xn ) + (x* - xn ) f 2 (xn ) H" 0
µn
Przybli\enie błędu związanego z zastąpieniem x* przez xn
f (xn )
.
µn = x* - xn H" -
f 2 (xn )
xn+1 = xn + µn
f (xn )
Mo\na zatem zbudować
xn+1 = xn - = F(xn)
f 2 (xn )
następującą procedurę iteracyjną
24
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda stycznych - algorytm
x0 "[a,b]
1) Wybierz punkt startowy , oblicz f(x0), f '(x0), n=0
2) Oblicz przybli\enie rozwiÄ…zania xn+1
f (xn )
xn+1 = xn -
2
f (xn )
3) Je\eli kryterium zatrzymania nie jest spełnione, podstaw n=n+1
i powróć do kroku 2)
i powróć do kroku 2)
Przerwij obliczenia je\eli
- znaleziono rozwiÄ…zanie problemu f(xn+1)=0
- lub spełniono warunek zatrzymania algorytmu, np.
x1 - x0 d" µ1
n d" Nmax
W praktyce dodaje siÄ™ te\ warunek
25
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda stycznych interpretacja geometryczna
Rys. 2.11
26
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metoda stycznych - zbie\ność
Metoda nie zawsze jest zbie\na
f (x) "C2([a,b]) f (a) f (b) < 0
Je\eli
Oraz f (x) i f (x) nie zmieniajÄ… znaku w [a,b], to przyjmujÄ…c x0 tak \eby f (x0)f (x0)>0
zapewnimy zbie\ność metody z wykładnikiem p=2 (do pierwiastka pojedynczego)
Zalety: bardzo szybka zbie\ność (kwadratowa p=2)
Wady: trzeba obliczać pierwszą pochodną funkcji f(x) (znajomość analityczna
lub przybli\enie numeryczne) i dobrze wybrać punkt startowy x0.
27
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Uwagi
Metoda siecznych
f (xn )(xn - xn-1) f (xn )
.
xn+1 = xn - = xn -
f (xn) - f (xn-1)
f (xn) - f (xn-1)
(xn - xn-1)
Przybli\enie pochodnej
f (xn)
xn+1 = xn -
Metoda stycznych
2
2
f (xn)
f (xn)
Strategia rozwiązywania trudnych przypadków:
najpierw wolno zbie\na ale pewna metoda bisekcji, następnie szybka metoda siecznych
.
28
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metody szukania punktu stałego
Równanie f(x)=0 mo\e być zapisane w równowa\nej postaci
x=F(x),
gdzie F : R R jest pewnÄ… funkcjÄ… zmiennej rzeczywistej x.
Poszukiwanie x spełniającego f(x)=0 jest równowa\ne szukaniu takiego x, aby na
przykład spełnić równanie x = x +a f(x) (stała a `" 0).
algorytm
Mo\na zatem przyjąć F(x)= x +a f(x).
x1 = F ( x0 )
Pierwiastek x* równania x=F(x) nazywany jest
x2 = F ( x1 )
punktem stałym" funkcji F(x).
ï"
F(x) mo\e posiadać wiele punktów stałych.
xn = F ( xn -1 )
29
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metody szukania punktu stałego -przykład
Rys. 2.12
30
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metody szukania punktu stałego - zbie\ność
Warunek wystarczający zbie\ności
Je\eli F(x) : R R jest ciągła w przedziale [a,b], oraz
2
F (x) <1 "x "[a,b]
to metoda punktu stałego jest zbie\na.
31
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Metody przyspieszania zbie\ności
Przyspieszanie zbie\ności metod pierwszego rzędu polega na budowaniu na
podstawie ciÄ…gu wartoÅ›ci przybli\onych {xi} nowego ciÄ…gu wartoÅ›ci {x°i}, który
zbiega siÄ™ do pierwiastka x* szybciej ni\ ciÄ…g poczÄ…tkowy.
Metoda Aitken a
Metoda Aitken a
Metoda Steffensen a
Rozwiazywanie układu równań nieliniowych
- patrz koniec rozdziału " Układy równań liniowych"
32
M.Pyrz Metody numeryczne w mechanice Równania nieliniowe 10.2011
Wyszukiwarka