1 / 11

Metody numeryczne szukanie pierwiastka metodą bisekcji

Dawid Rasała. Metody numeryczne szukanie pierwiastka metodą bisekcji. Rozwiązywanie równań.

eilis
Download Presentation

Metody numeryczne szukanie pierwiastka metodą bisekcji

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dawid Rasała Metody numeryczneszukanie pierwiastka metodą bisekcji

  2. Rozwiązywanie równań Pierwiastki równania f(x) = 0 na ogół nie wyrażają się zamkniętymi wzorami, dlatego rozwiązując równania nieliniowe stosujemy na ogół metody przybliżone, opierające się zazwyczaj na kolejnych przybliżeniach pierwiastka. Są to metody iteracyjne, co oznacza, że startując od jednego lub kilku przybliżeń początkowych pierwiastka, metody te dają ciąg x0, x1, x2, … kolejnych przybliżeń pierwiastka.

  3. Metoda bisekcji Metoda równego podziału (metoda połowienia, metoda bisekcji, metoda połowienia przedziału) - jedna z metod rozwiązywania równań nieliniowych. Opiera się ona na następującym twierdzeniu: Jeżeli funkcja ciągła f(x) ma na końcach przedziału domkniętego wartości różnych znaków, to wewnątrz tego przedziału, istnieje co najmniej jeden pierwiastek równania f(x) = 0.

  4. Metoda bisekcji Mamy daną funkcję f(x) oraz przedział <a,b>, w którym będziemy poszukiwali miejsca zerowego. Aby można było zastosować algorytm połowienia muszą być spełnione poniższe warunki: 1. Funkcja f(x) jest określona w każdym punkcie przedziału <a,b>. Określoność funkcji oznacza, iż dla każdej wartości argumentu x z przedziału <a,b> potrafimy policzyć wartość funkcji. Dla przykładu rozważmy prostą funkcję: W punkcie x = 1 tak podana funkcja ma nieokreśloną wartość. Musimy dzielić przez 0, a jak wiadomo jest to zadanie niewykonalne.

  5. Metoda bisekcji 2. Funkcja f(x) jest ciągła. Ciągłość funkcji oznacza z kolei, iż jej wartości nie "wykonują" nagłych skoków, nie istnieją przerwy w kolejnych wartościach funkcji. Dla przykładu rozważmy taką oto funkcję: Nieciągłość występuje w punkcie x = 0, czyli w miejscu zmiany przepisu funkcji.

  6. Metoda bisekcji 3. Funkcja f(x) na krańcach przedziału <a,b> przyjmuje różne znaki. Ponieważ funkcja, zgodnie z poprzednim wymogiem, jest ciągła, to przyjmuje w przedziale <a,b> wszystkie wartości pośrednie pomiędzy f(a) i f(b).  Wartości te mają różne znaki (czyli leżą po różnych stronach osi OX), zatem musi być taki punkt xo w przedziale <a,b>, dla którego funkcja przyjmuje wartość pośrednią.

  7. Kroki algorytmu 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. Zasada jest następująca: 1. Wyznaczamy punkt xo jako środek przedziału <a,b>. 2. Obliczamy wartość funkcji w punkcie xo. Sprawdzamy, czy f(xo) znajduje się dostatecznie blisko 0:

  8. Kroki algorytmu 3. 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 i przechodzimy ponownie do punktu 1.

  9. Warunki zakończenia obliczeń Algorytm powtarzamy od początku dotąd, aż: znajdziemy pierwiastek, czyli spełniona będzie nierówność przedział <a,b> osiągnie założoną długość (może to być również epsilon) wykonamy określoną ilości iteracji.

  10. Przykład Wyznaczyć pierwiastek równania x3 − x + 1 = 0 w przedziale [ − 2;0].

  11. Zadania • Wszystkie poniższe równania maja pierwiastek w przedziale (0, 1.6). Wyznaczyć te pierwiastki metodą bisekcji z błędem mniejszym od 0,02: • x * cos(x) = - ln(x); • 2 x + e-x = 0. • Napisać w dowolnym języku program, który realizuje metodę bisekcji dla zadanej funkcji.

More Related