Zapoznaj się z animacją przedstawiającą wyznaczenie miejsca zerowego funkcji nieliniowej z wykorzystaniem metody stycznych, a następnie wykonaj ćwiczenie.
Ważne!
W animacji analizowany jest konkretny przykład wraz z właściwą dla niego interpretacją graficzną.
Przedstawiony algorytm Newtona–Raphsona bywa również nazywany metodą stycznych lub metodą Newtona.
RZwFlTR5KgmBq
Film nawiązujący do treści materiału
Film nawiązujący do treści materiału
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.
Film nawiązujący do treści materiału
Polecenie 2
Zapisz przedstawiony w animacji algorytm Newtona‑Raphsona w postaci pseudokodu. Przyjmij, że poszukujesz miejsca zerowego następującej funkcji:
a jej pierwsza pochodna wynosi:
Poszukiwania kontynuuj aż do spełnienia warunku: . Po jego spełnieniu uznajemy, że ostatnie znalezione przybliżone miejsce zerowe funkcji jest końcowym wynikiem działania algorytmu.
Specyfikacja problemu:
Dane:
x0 – wartość, od której rozpoczniemy poszukiwanie miejsca zerowego w zadanym przedziale, ustalony punkt startowy; liczba rzeczywista
Ex – graniczna wartość błędu bezwzględnego wyznaczanego miejsca zerowego, po której osiągnięciu uznajemy uzyskane rozwiązanie za końcowe; liczba rzeczywista dodatnia
Wynik:
x1 – wyznaczona wartość miejsca zerowego funkcji; liczba rzeczywista
Załóżmy, że punkt startowy oraz ustalona dokładność wynoszą odpowiednio 3 oraz 0,001.
R4yeoV5Y4IVGt
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
Przykładowe rozwiązanie zadania:
Linia 1. Ex ← 0 kropka 001.
Linia 2. x0 ← 3.
Linia 4. funkcja metodaStycznych otwórz nawias okrągły x0 przecinek Ex zamknij nawias okrągły.
Linia 5. x1 ← x0.
Linia 6. wykonuj dwukropek.
Linia 7. x0 ← x1.
Linia 8. x1 ← x0 minus funkcja otwórz nawias okrągły x0 zamknij nawias okrągły prawy ukośnik pochodna otwórz nawias okrągły x0 zamknij nawias okrągły.
Linia 9. jeżeli bezwzględna otwórz nawias okrągły x0 minus x1 zamknij nawias okrągły otwórz nawias ostrokątny znak równości Ex dwukropek.
Linia 10. przerwij pętlę.
Linia 11. zwróć x1.
Linia 13. funkcja bezwzględna otwórz nawias okrągły wartość zamknij nawias okrągły.
Linia 14. jeżeli wartość zamknij nawias ostrokątny znak równości 0 dwukropek.
Linia 15. zwróć wartość.
Linia 16. w przeciwnym razie dwukropek.
Linia 17. zwróć wartość asterysk otwórz nawias okrągły minus 1 zamknij nawias okrągły.
Linia 19. funkcja funkcja otwórz nawias okrągły x zamknij nawias okrągły.
Linia 20. zwróc 3 asterysk otwórz nawias okrągły x asterysk x asterysk x zamknij nawias okrągły minus 3 asterysk x plus 2.
Linia 22. funkcja pochodna otwórz nawias okrągły x zamknij nawias okrągły.
Linia 23. zwróć 3 asterysk otwórz nawias okrągły x asterysk x zamknij nawias okrągły minus 3.
Ex ← 0.001
x0 ← 3
funkcja metodaStycznych(x0, Ex)
x1 ← x0
wykonuj:
x0 ← x1
x1 ← x0 - funkcja(x0) / pochodna(x0)
jeżeli bezwzględna(x0 - x1) <= Ex:
przerwij pętlę
zwróć x1
funkcja bezwzględna(wartość)
jeżeli wartość >= 0:
zwróć wartość
w przeciwnym razie:
zwróć wartość * (-1)
funkcja funkcja(x)
zwróc 3 * (x * x * x) - 3 * x + 2
funkcja pochodna(x)
zwróć 3 * (x * x) - 3