Rozwiązywanie numeryczne równań nieliniowych
Wyznaczanie przedziałów izolacji. Niech będzie dane nieliniowe równanie algebraiczne
,
przy czym funkcja
jest ciągła w przedziale domkniętym
.
Zadanie polega na odnalezieniu takich przedziałów
,
które zawierają pojedyncze pierwiastki równania
. W tym celu będziemy obliczać wartości funkcji
od punktu
do punktu
z krokiem
. Jeżeli w sąsiednich punktach funkcji ma przeciwny znaki
,
to przedział
zawiera pierwiastek.
Zawsze zostaje problem wybory wielkości przedziału
. W związku z tym powyższy algorytm uzupełniamy dodatkowo sprawdzaniem warunku
.
W przeciwnym razie krok należę dzielić na pół, dopóki nie przekonamy się, że przedział
nie zawiera pierwiastka.
Dotoczymy schemat blokowy poszukiwania przedziałów zawierających pierwiastki.
Metoda równego podziału. Dane jest nieliniowe równanie algebraiczne
,
przy czym funkcja
jest ciągła w przedziale domkniętym
oraz zachodzi nierówność
.
Twierdzenie (Bolzano - Cauchy'ego). Jeśli funkcja ciągła
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
.
W celu znalezienia pierwiastka równania
zawartego w przedziale
dzielimy ten przedział na dwie połowy. Jeśli
, to szukany pierwiastek wynosi
. Jeżeli
, to z przedziałów
i
wybieramy ten, na końcach którego funkcja
ma różne znaki. Następnie połowimy nowy zawężony przedział i powtarzamy czynności itd.
W ten sposób albo pierwiastek dokładny
, albo ciąg podprzedziałów
,
, … ,
, …
przy czym
,
oraz
,
Ponieważ
, to z poprzedniego wyrażenia wynika istnienie wspólnej granicy
.
Oto schemat blokowy algorytmu
Metoda siecznych. Zamiast dzielić przedział
na dwie połowy podzielimy go w stosunku
.
W interpretacji geometrycznej metoda siecznych oznacza zastąpienie krzywej
przez cięciwę łączącą punkty
i
.
Teoretycznie możliwy cztery różne przypadki podane na rysunku. Punkt, w którym wartość funkcji
ma taki sam znak, jak i druga pochodna
, pozostaje nieruchomy.
Na rysunkach
nieruchomy jest punkt
.
Wtedy otrzymujemy rosnący ciąg ograniczony
,
,
Na rysunkach
nieruchomy jest punkt
.
Wtedy otrzymujemy malejący ciąg ograniczony
,
,
Oto schemat blokowy odpowiedniego algorytmu dla metody siecznych.
Metoda stycznych. Zakładając, że
oraz że pierwsza pochodna
i druga pochodna
są ciągłe i nie zmieniają znaku w przedziale domkniętym
, pierwiastek równania
można znaleźć metodą Newtona według wzoru
,
Jako przybliżenie zerowe wybieramy ten punkt, w którym wartości funkcji
i druga pochodna
jednakowe znaki. Na przykład, punkt
na rysunkach
lub punkt
dla poniższych wykresów
Oto schemat blokowy odpowiedniego algorytmu.
Przykład. Znaleźć pierwiastek kwadratowy z liczby
(Babilon), tj. rozwiązać równanie
.
Powyższy wzór Newtona przybiera postać
.
Metoda iteracji. Metoda ta oparta jest na pojęciu odwzorowania zwężającego.
Definicja. Odwzorowanie
przestrzeni metrycznej
w siebie
,
nazywamy odwzorowaniem zwężającym, gdy istnieje taka liczba
(
), że
,
dla dowolnych
.
Odwzorowanie zwężające jest ciągłym, ponieważ
i
,
wówczas
a więc
.
Twierdzenie Banacha. Niech
będzie odwzorowaniem zwężającym przestrzeni metrycznej zupełnej
w siebie. Wtedy istnieje jeden i tylko jeden punkt
taki, że
Ponadto, jeżeli
jest dowolnym punktem przestrzeni oraz
,
,
to
i zachodzi nierówność
,
Twierdzenie Banacha podaje metodę przybliżonego rozwiązywania równania o postaci
za pomocą ciągu
,
,
która znana jak metoda iteracji albo metoda kolejnych przybliżeń.
Twierdzenie. Niech funkcja
będzie określona i różniczkowalna w przedziale domkniętym
i niech jej wartości należą do tego przedziału. Wtedy jeśli istnieje ułamek właściwy
taki, że
,
to proces iteracyjny
jest zbieżny niezależnie od przybliżenia początkowego
, zaś wartość graniczna
jest jedynym pierwiastkiem równania
w przedziale domkniętym
.
Więc idea metody iteracji jest sprowadzić każde równanie
do równoważnej postaci
i następnie sprawdzić warunki poprzedniego twierdzenia.
Interpretacja geometryczna podana na poniższych rysunkach.
Na rysunkach
metoda iteracyjna jest zbieżna (
), wówczas na rysunkach
metoda iteracyjna jest rozbieżna (
).
Oto schemat blokowy algorytmu
Uwaga
Błąd bezwzględny jest dwa mniejszy długości ostatniego przedziału
T
N
N
Koniec!
Drukuj
X, ΔX
N
B:=C
F(A)F(C)<0
A:=C
F(C)=0
X:=(A+B)/2
ΔX:=(B-A)/2
Drukuj
C - pierwiastek
Koniec!
T
C:=(A+B)/2
Podaj
A. B, ε
Początek
T
Początek
N
Koniec!
T
N
T
Drukuj
x1, x2
y1y2<0
Podaj
A. B, ε
N
y2=F(x2)
x2<b
x1:=x2
x2:=x1-h
y1:=y2
x1:=a
x2:=x1+h
y1=f(x1)
Podaj
a, b, h
Początek
N
Koniec!
Drukuj
X1 - pierwiastek
Koniec!
T
Podaj
X0, ε
Drukuj
X - pierwiastek
Koniec!
N
N
T
T
Drukuj
X1 - pierwiastek
Początek
Podaj
X0, ε
Początek