1 Metody iteracyjne rozwi zywania równania f()=0 1.1 Metoda bisekcji Zaªó»my,»e funkcja f jest ci gªa w [a 0, b 0 ]. Pierwiastek jest w przedziale [a 0, b 0 ] gdy f(a 0 )f(b 0 ) < 0. (1) Ustalmy f(a 0 ) < 0 i f(b 0 ) > 0. Wyznaczamy zst puj cy ci g przedziaªów [a 0, b 0 ] [a 1, b 1 ]... [a k, b k ], gdzie m k = 1 (a k 1, b k 1 ) oraz [a k, b k ] = { [m k, b k 1 ], f(m k ) < 0 [a k 1, m k ], f(m k ) > 0. Innymi sªowy ka»dy nast pny przedziaª jest t poªow przedziaªu poprzedniego, która zawiera pierwiastek funkcji. Po n krokach dostajemy przedziaª [a n, b n ] dªugo±ci b n a n = 1 n (b 0 a 0 ) zawieraj cy pierwiastek. Jako warto± przybli»on pierwiastka mo»emy przyj ±rodek tego przedziaªu, czyli m n+1. Bª d wyliczenia pierwiastka wynosi w tym przypadku 1 n+1 (b 0 a 0 ). Metod bisekcji mo»na zilustrowa () y y=f() a m k-1 k b k-1 Figure 1: Metoda bisekcji 1. Metoda stycznych (Newtona) W metodzie stycznych konstruujemy ci g 0, 1,... korzystaj c ze wzoru iteracyjnego: i+1 = i f( i) f, i = 0, 1,... (3) ( i ) 1
oraz zaczynaj c od pewnego wybranego punktu 0. Punkt 0 musi dostatecznie bliski pierwiastkowi funkcji, inaczej metoda mo»e nie by zbie»na. Geometrycznie proces ten oznacza przeprowadzenie stycznej do wykresu funkcji f w punkcie k i przyj ciu za k+1 punktu przeci cia tej stycznej z osi. y y=f() k+1 k Figure : Metoda stycznych 1.3 Metoda siecznych W przypadku, gdy metoda Newtona zawodzi z powodu konieczno±ci wyliczenia warto±ci pochodnych mo»emy zastosowa metod siecznych. W poni»szym wzorze pochodne zast pujemy ilorazem ró»nicowym: i+1 = i i i 1 f( i ) f( i 1 ) f( i), i = 1,,... (4) W tej metodzie potrzebne s dwa punkty startowe 0 oraz 1. Geometryczna interpretacja tej metody to: k+1 wyznacza si jako punkt przeci cia siecznej przechodz cej przez punkty ( k 1, f( k 1 )) i ( k, f( k )) z osi.
y y=f() k+1 k k-1 Figure 3: Metoda siecznych Ka»d z powy»szych metod nale»y w pewnym momencie zako«czy. Mo»na sko«czy konstruowanie kolejnych przybli»e«pierwiastków po zadanej liczbie kroków lub je±li osi gniemy wystarczaj c dokªadno± wyznaczenia pierwiastka. Mo»emy skorzysta z jednego z nast puj cych kryteriów stopu: (1) i+1 i < ε () f( i ) < ε (3) i+1 i < ε lub f( i ) < ε Zadanie 1. Wykonaj 3 pierwsze kroki metody bisekcji dla f() = 5. Rozwi zanie. Na pocz tku nale»y okre±li przedziaª, w którym b dziemy szuka miejsca zerowego funkcji. Ustalmy go jako [a 0, b 0 ] = [, 3]. Sprawdzamy,»e f()f(3) = (4 5)(9 5) = ( 1)(4) < 0 oraz mamy f() < 0 i f(3) > 0. Krok 1. Wyznaczamy przedziaª [a 1, b 1 ]. rodek przedziaªu [a 0, b 0 ] to m 1 = 5. Warto± f(m 1 ) = 5 4 5 = 5 4 jest dodatnia, wi c za pocz tek nowego przedziaªu przyjmujemy a 0, a za koniec m 1. St d [a 1, b 1 ] = [, 5 ]. Krok. Analogicznie powtarzamy czynno±ci z kroku 1. Wyznaczamy m = a 1+b 1 = 9 4 oraz f(m ) = 81 16 5 = 1 16 > 0. St d kolejny podprzedziaª, w którym znajduje si pierwiastek to [a, b ] = [, 9 4 ]. Krok 3. W ostatnim, trzecim kroku liczymy m 3 = 17 8 oraz f(m 3) = 89 64 5 = 31 64 < 0. St d [a 3, b 3 ] = [ 17 8, 9 4 ]. Za wyliczony t metod pierwiastek przyjmujemy ±rodek ostatniego przedziaªu, czyli m 4 = 35 16. Bª d z jakim przybli»amy pierwiastek wynosi 1. 4 Zadanie. Znajd¹ zero wielomianu f() = 3 3 +5 metod stycznych 3
z dokªadno±ci ε = 0.1 wiedz c,»e znajduje si ono w przedziale [1, ]. Rozwi zanie. Wyznaczmy pochodn f () = 3 6. Za pocz tek ci gu, który b dziemy konstruowa przyjmujemy warto± jak najbli»sz pierwiastkowimo»e to by pocz tek danego przedziaªu, czyli 0 = 1. Nast pnie konstruujemy kolejne warto±ci i a» do uzyskania zadanej dokªadno±ci. 1 = 1 1 5 = 6 5 0 1 = 1 5 > ε f( 1 ) = 1 15 < ε Przyjmuj c za kryterium stopu podpunkt () mo»emy sko«czy obliczenia przyjmuj c za pierwiastek 1. Je±li kryterium stopu jest takie jak w punkcie (1) to liczymy dalej. = 6 5 1/15 1/5 = 733 610 0 1 = 1 610 < ε Kryterium stopu z punktu (1) zostaªo osi gni te, wi c przybli»eniem pierwiastka jest = 733 610. Zadanie 3. Znajd¹ zero wielomianu f() = 3 + 1 metod siecznych zaczynaj c od 0 = 0, 1 = 1. Rozwi zanie. W tym zadaniu nie mamy okre±lonego kryterium stopu. Mo»emy wi c zako«czy obliczenia po kilku krokach. Wykonajmy dwa kroki metody siecznych. = 1 1 0 1 ( 1) 1 = 1 3 = 1 1 1 3 8 1( 3 8 ) = 7 11 (5) (6) (7) Zadanie 4. Za pomoc metody siecznych wyznaczy 7 z dokªadno±ci ε = 0.01. Rozwi zanie. Nale»y okre±li funkcj, której pierwiastek chcemy obliczy za pomoc metody siecznych. Jest ni f() = 7. Punktu pocz tkowe staramy si wybra jak najbli»ej pierwiastka, przyjmijmy 0 = i 1 = 3. Wyznaczamy kolejne punktu ci gu iteracyjnego i w ka»dym kroku sprawdzamy czy zadana dokªadno± zostaªa osi gni ta. = 3 3 + 3 = 13 5 1 = 5 > ε f( ) = 6 5 > ε (8) 4
adne z kryteriów nie jest speªnione, wi c liczymy kolejny element ci gu. 3 = 13 5 5 6 5 ( 6 5 ) = 37 14 3 = 3 70 > ε f( 3 ) = 3 196 > ε Znowu nie osi gn li±my dokªadno±ci 0.01. 4 = 37 3 14 70 3 196 + 6 5 4 3 = 15 5138 < ε f( 4 ) = 18 134689 < ε ( 3 196 ) = 971 367 (9) (10) Przybli»enie 7 o warto±ci 4 speªnia zadan dokªadno±. Zadanie 5. Zbadaj zachowanie si powy»szych metod dla f() = + ln(), 0 = 0.1 i 1 = 0., ε = 0.1,..., 0.000001. (11) Zbadaj te» zachowanie dla metod powstaªych z postaci funkcji a) n+1 = ln( n ), b) n+1 = ep( n ), c) n+1 = 1 ( n + ep( n )). Powy»sze metody oraz inne metody iteracyjne mo»na prze±ledzi pod nast puj cymi adresami, gdzie s zaprezentowane gracznie metody dla ró»nych funkcji: http://demonstrations.wolfram.com/bisectionmethod/ http://demonstrations.wolfram.com/newtonsmethod/ http://mathworld.wolfram.com/secantmethod.html http://mathworld.wolfram.com/methodoffalseposition.html 5