Miejscem zerowym funkcji nazywamy taki argument x,
dla którego funkcja przyjmuje wartość 0.
Metoda połowienia - bisekcji
Mamy daną funkcję f(x) oraz przedział <a,b>, w którym będziemy poszukiwali miejsca zerowego (czyli pierwiastka funkcji f(x) ). Aby można było zastosować algorytm połowienia (zwany również algorytmem bisekcji), w przedziale <a,b> muszą być spełnione poniższe warunki:
1. | Funkcja Dla przykładu rozważmy prostą funkcję: |
2. | Funkcja
Funkcja w przedziale
Nieciągłość występuje w punkcie
|
3. | Funkcja
f(a) < f(xo) = 0 < f(b) lub f(a) > f(xo) = 0 > f(b)
|
Gdy funkcja f(x) spełnia powyższe trzy warunki, to w przedziale <a,b> zagwarantowane jest istnienie pierwiastka i możemy go wyszukać algorytmem połowienia (bisekcji). Zasada jest następująca:
Wyznaczamy punkt xo jako środek przedziału <a,b> zgodnie ze wzorem:
Obliczamy wartość funkcji w punkcie xo. Sprawdzamy, czy f(xo) znajduje się dostatecznie blisko 0:
Jeśli nierówność jest spełniona, to xo jest poszukiwaną wartością pierwiastka. Zwracamy wynik i kończymy algorytm. W przeciwnym razie za nowy przedział poszukiwań pierwiastka przyjmujemy tą połówkę <a,xo> lub <xo,b>, w której funkcja zmienia znak na krańcach. Algorytm powtarzamy od początku dotąd, aż znajdziemy pierwiastek
Program wyznacza miejsce zerowe funkcji: f(x) = x3(x + sin(x2 - 1) - 1) - 1. Pierwiastków należy poszukiwać w przedziałach <-1,0> i <1,2>.
Brak komentarzy:
Prześlij komentarz