LAK cwicz5 (1)


Metody numeryczne - ćwiczenia nr 5
1. Pierwiastki równań nieliniowych
Będziemy rozwiązywać zadania dotyczące znajdowania miejsc zerowych (pier-
wiastków) funkcji nieliniowych, innymi słowy rozwiązywaniem równań typu
f(x) = 0 . (1)
Rozwiązania x równania (1) poszukuje się zazwyczaj jako wyniku procedury
iteracyjnej typu
xk+1 = xk - hk , (2)
prowadzącej do spełnienia warunku
|xk+1 - xk| < µ , (3)
lub
|f(xk)| < µ . (4)
Człon hk jest charakterystyczny dla konkretnej metody szukania perwiastków.
1.1. Metoda bisekcji
ZaÅ‚ożenie: f(x) ciÄ…gÅ‚a w przedziale [a, b], f(a) · f(b) < 0.
a
x1,2 = ,
b
1
xk+1 = xk - (xk - xk-1) , (5)
2
f(xk+1) · f(xk) < 0 .
Szybkość zbieżności w zasadzie nie zależy od funkcji f. Algorytm nie wyko-
rzystuje żadnej własności funkcji, prócz informacji, że posiada jedno zero w
przedziale [a, b].
1.2. Metoda  fałszywej linii prostej ( regula falsi )
ZaÅ‚ożenie: f(x) ciÄ…gÅ‚a w przedziale [a, b], f(a) · f(b) < 0.
a
x1,2 = ,
b
xk-xk-1
xk+1 = xk - f(xk) , (6)
f(xk)-f(xk-1)
f(xk+1) · f(xk) < 0 .
1
1.3. Metoda siecznych
Założenie: f(x) ciągła w przedziale [a, b].
x1 = a , x2 = b ,
xk-xk-1
xk+1 = xk - f(xk) , (7)
f(xk)-f(xk-1)
1.4. Metoda stycznych (Newtona)
Założenie: f(x) ciągła i różniczkowalna1.
x1 = a ,
f(xk)
xk+1 = xk - . (8)
f (xk)
1.5. Metoda Steffensena
x1 = a ,
(f(xk))2
xk+1 = xk - . (9)
f(xk+f(xk))-f(xk)
1.6. Metoda iteracyjna (punktu stałego)
Funkcję f(x) przekształcamy do funkcji g(x), tak aby zachodziło:
f(x) = 0 x = g(x) .
Szukany pierwiastek funkcji f(x) otrzymujemy iterujÄ…c funkcjÄ™ g(x):
x1 = a ,
xk+1 = g(xk) . (10)
Zadania
1. Zaprogramuj w Scilabie opisane w instrukcji cztery wybrane metody oblicza-
nia pierwiastków równań nieliniowych.
2. Sporządz wykresy2 następujących funkcji:
f1(x) = x3 + 18x2 - 22x + sin(2x2 + x) - 255 ,
f2(x) = x4 + x3 + ex-2 - 200 ,
x2+x+2
f3(x) = ln - 5 dla x > 5 .
sin x+1
tak aby wstępnie określić wartości ich pierwiastków.
1
Do obliczenia pochodnej funkcji w SciLabie służy funkcjaderivative.
2
Przykład w SciLab-ie:
function [y] = f(x)
y = x^3 + 18*x^2 - 22*x + sin(2*x^2+x) - 255;
endfunction
--> x = (-20:0.5:10);
--> y = f(x);
--> plot2d(x,y)
Aby  dostroić parametry wykresu należy poeksperymentować opcjami Edit okna graficznego.
2
3. Posługując się wynikami z pkt. 1 znajdz jak największą liczbę pierwiastków
tych funkcji.
4. Sprawdz na co wpływa zastosowanie danego kryterium stopu procesu itera-
cyjnego.
5. Sprawdz jak zależy szybkość obliczania pierwiastków od założonej dokładnosci
µ.
6. Porównaj dokładność otrzymanych wyników z uzyskanymi przy zastosowa-
niu funkcjifsolveSciLaba. Wyniki przedstaw w postaci tabelarycznej oraz
na wykresie.
3


Wyszukiwarka

Podobne podstrony:
cwicz5
LAK instrukcje
LAK cwicz2
LAK cwicz4 dodatek
Cwicz5
LAK materiały
cwicz5
LAK instrukcje cwicz6
LAK cwicz7
Grafika cwicz5 14
cwicz5
Konspekt LAK 13 2014

więcej podobnych podstron