Rozdział 3

RÓWNANIA NIELINIOWE

3.1. Wstęp

W niniejszym rozdziale omówimy algorytmy wyznaczania pierwiastków rzeczywistych jednokrotnych równań nieliniowych. Niech 0x01 graphic
będzie funkcją rzeczywistą zmiennej rzeczywistej 0x01 graphic
. Pierwiastkiem (zerem) równania

0x01 graphic
(3.1)

(lub pierwiastkiem (zerem) funkcji 0x01 graphic
) nazywamy każdą wartość 0x01 graphic
zmiennej niezależnej 0x01 graphic
, dla której 0x01 graphic
.

Zagadnienie przybliżonego obliczania pierwiastków definiujemy następująco: dla zadanej dokładności 0x01 graphic
należy znaleźć takie0x01 graphic
, dla której zachodzi nierówność

0x01 graphic
. (3.2)

Przybliżoną wartość pierwiastka funkcji wyznaczamy w dwóch etapach:

  1. najpierw lokalizujemy pierwiastki równania (3.1), tj.

    1. znajdujemy liczbę 0x01 graphic
      pierwiastków równania,

    2. dla każdego pierwiastka 0x01 graphic
      znajdujemy taki przedział 0x01 graphic
      , że 0x01 graphic
      oraz 0x01 graphic
      ,

  2. potem uściślamy przybliżoną wartość pierwiastka, tj. dla zadanego0x01 graphic
    i zadanej dokładności 0x01 graphic
    znajdujemy taką wartość 0x01 graphic
    , że 0x01 graphic
    .

3.2. Lokalizacja pierwiastków

Dotychczas nie opracowano algorytmów lokalizacji pierwiastków rzeczywistych dowolnej funkcji ciągłej (odstępstwem od powyższego stwierdzenia jest twierdzenie Sturma, na mocy którego można skonstruować algorytm lokalizacji wszystkich rzeczywistych pierwiastków wielomianu o współczynnikach rzeczywistych).

Na etapie lokalizacji korzystamy z podstawowej wiedzy o funkcjach elementarnych.

Przykład 3.1. Zlokalizować rzeczywiste pierwiastki funkcji

0x01 graphic
. (3.3)

Rozwiązanie. Funkcję (3.3) przyrównujemy do zera otrzymując równanie

0x08 graphic
0x01 graphic
,

które następnie przekształcamy do postaci

0x01 graphic
.

Z łatwością wykonujemy wykresy znanych funkcji 0x01 graphic
oraz 0x01 graphic
. Odcięte punktów przecięcia się wykresów są pierwiastkami funkcji (3.3). Z tabeli 3.1 oraz wykresu wnioskujemy, że istnieją dwa rzeczywiste pierwiastki funkcji (3.3) leżące w przedziałach 0x01 graphic
, 0x01 graphic
.

Rys. 3.1. Wykresy funkcji 0x01 graphic
i0x01 graphic

Tabela 3.1. Lokalizacja pierwiastków funkcji 0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

-1.0

0.00000

1.00000

-1.00000

-0.9

0.09531

0.62000

-0.52469

-0.8

0.18232

0.28000

-0.09768

-0.7

0.26236

-0.02000

0.28236

-0.6

0.33647

-0.28000

0.61647

-0.5

0.40547

-0.50000

0.90547

-0.4

0.47000

-0.68000

1.15000

...

...  

...    

...    

0.7

0.99325

-0.02000

1.01325

0.8

1.02962

0.28000

0.74962

0.9

1.06471

0.62000

0.44471

1.0

1.09861

1.00000

0.09861

1.1

1.13140

1.42000

-0.28860

1.2

1.16315

1.88000

-0.71685

1.3

1.19392

2.38000

-1.18608

1.4

1.22378

2.92000

-1.69622

1.5

1.25276

3.50000

-2.24724

3.3. Metoda bisekcji (metoda połowienia przedziału)

Zakładamy, że wcześniej został zlokalizowany rzeczywisty pierwiastek funkcji 0x01 graphic
, który leży w przedziale 0x01 graphic
- zatem 0x01 graphic
. Metoda bisekcji jest metodą uściślania przybliżonej wartości pierwiastka, która wymaga założenia:

0x01 graphic
. (3.4)

Algorytm 3.1. Uściślanie pierwiastka funkcji 0x01 graphic
leżącego w przedziale 0x01 graphic
metodą bisekcji.

0x01 graphic

Przykład 3.2. Obliczyć ujemny pierwiastek funkcji

0x01 graphic

z dokładnością 0x01 graphic
metodą bisekcji.

Rozwiązanie. W przykładzie 3.1 pokazano, że ujemny pierwiastek funkcji (3.3) leży w przedziale [-0.8 ; -0.7]. Obliczenia kolejnych kroków metody bisekcji są zestawione w tabeli 3.2.

Tabela 3.2. Wyznaczanie ujemnego pierwiastka funkcji

0x01 graphic

z dokładnością 10-5 metodą bisekcji.

0x01 graphic

-0.800000

0x01 graphic

-0.700000

0x01 graphic

1.0E-03

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0

-0.800000

-0.700000

-0.750000

-9.6E-03

1.0E-01

1

-0.800000

-0.750000

-0.775000

-1.7E-04

5.0E-02

2

-0.800000

-0.775000

-0.787500

4.7E-03

2.5E-02

3

-0.787500

-0.775000

-0.781250

1.1E-03

1.3E-02

4

-0.781250

-0.775000

-0.778125

2.4E-04

6.2E-03

5

-0.778125

-0.775000

-0.776563

4.7E-05

3.1E-03

6

-0.776563

-0.775000

-0.775781

6.1E-06

1.6E-03

7

-0.775781

-0.775000

-0.775391

-2.2E-07

7.8E-04

8

-0.775781

-0.775391

-0.775586

8.3E-07

3.9E-04

9

-0.775586

-0.775391

-0.775488

1.3E-07

2.0E-04

10

-0.775488

-0.775391

-0.775439

6.8E-09

9.8E-05

11

-0.775439

-0.775391

-0.775415

-2.0E-09

4.9E-05

12

-0.775439

-0.775415

-0.775427

-5.3E-10

2.4E-05

13

-0.775439

-0.775427

-0.775433

2.1E-10

1.2E-05

14

-0.775433

-0.775427

-0.775430

-3.5E-11

6.1E-06

3.4. Metoda stycznych (metoda Newtona-Raphsona)

Metoda stycznych jest inną metodą uściślania przybliżonej wartości pierwiastka. Zakładamy zatem, że wcześniej został zlokalizowany rzeczywisty pierwiastek funkcji 0x01 graphic
leżący w przedziale 0x01 graphic
; a zatem 0x01 graphic
. Metoda stycznych wymaga silniejszych niż metoda bisekcji założeń odnośnie funkcji 0x01 graphic
, a mianowicie:

  1. 0x01 graphic
    , (3.5)

  2. dla każdego 0x01 graphic
    albo 0x01 graphic
    albo 0x01 graphic
    (0x01 graphic
    nie zmienia znaku w przedziale 0x01 graphic
    ), (3.6)

  3. dla każdego 0x01 graphic
    albo 0x01 graphic
    albo 0x01 graphic
    (0x01 graphic
    nie zmienia znaku w przedziale 0x01 graphic
    ). (3.7)

Algorytm 3.2. Uściślanie pierwiastka funkcji 0x01 graphic
leżącego w przedziale 0x01 graphic
metodą Newtona-Raphsona.

Metoda Newtona-Raphsona(0x01 graphic
)

  1. W charakterze 0x01 graphic
    wybieramy ten kraniec przedziału 0x01 graphic
    (tzn. albo 0x01 graphic
    ,

albo 0x01 graphic
), który spełnia warunek:0x01 graphic
. (3.8)

  1. Wyznaczamy: 0x01 graphic

0x01 graphic
(3.9)

Ciąg wygenerowany według reguł (3.8)÷(3.9) nosi nazwę procesu Newtona-Raphsona. Jego własności zostały sformułowane w poniższym twierdzeniu.

Twierdzenie 3.1. Jeżeli funkcja 0x01 graphic
spełnia założenia (3.5)÷(3.7), to proces Newtona-Raphsona ma następujące własności:

  1. 0x01 graphic
    (proces jest zbieżny do pierwiastka funkcji 0x01 graphic
    leżącego w przedziale 0x01 graphic
    , (3.10)

  2. ciąg (3.8)÷(3.9) jest ściśle monotoniczny, tzn. albo 0x01 graphic
    albo 0x01 graphic
    (3.11)

  3. k-ty wyraz procesu spełnia nierówność:   0x01 graphic
    , (3.12)

gdzie 0x01 graphic
.

Przykład 3.3. Obliczyć ujemny pierwiastek funkcji

0x01 graphic

z dokładnością 0x01 graphic
metodą Newtona-Raphsona.

Rozwiązanie. W przykładzie 3.1 pokazano, że ujemny pierwiastek funkcji (3.3) leży w przedziale 0x01 graphic
. Na początku wykażemy, że funkcja (3.3) spełnia w przedziale 0x01 graphic
warunki (3.5)÷(3.7).

Zatem w przedziale [-0.8 ; -0.7] 0x01 graphic
.

Zatem funkcja (3.3) spełnia w przedziale [-0.8 ; -0.7] warunki (3.5)÷(3.7) i w związku z tym możemy zastosować metodę stycznych do uściślenia przybliżonej wartości pierwiastka.

Wyznaczamy 0x01 graphic
oraz 0x01 graphic
. Z tabeli 3.1 odczytujemy

0x01 graphic
, 0x01 graphic
. Więc 0x01 graphic
, ponieważ 0x01 graphic
. Następnie obliczamy

0x01 graphic
.

Wartości kolejnych iteracji metody stycznych są podane w tabeli 3.3.

Tabela 3.3. Wyznaczanie ujemnego pierwiastka funkcji

0x01 graphic

z dokładnością 10-5 metodą stycznych.

0x01 graphic

-0.800000

0x01 graphic

3.569231

0x01 graphic

1.0E-03

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0

-0.800000

-0.097678

4.033333

-0.024218

2.7E-02

1

-0.775782

-0.001374

3.919977

-0.000350

3.8E-04

2

-0.775432

0.000000

3.918341

0.000000

8.0E-08

3.5. Metoda iteracji prostej

Metoda iteracji prostej jest metodą uściślania przybliżonej wartości pierwiastka. Zakładamy zatem, że wcześniej został zlokalizowany pierwiastek funkcji 0x01 graphic
i leży w przedziale 0x01 graphic
; zatem 0x01 graphic
. Metoda iteracji prostej składa się z dwóch etapów.

  1. Najpierw równanie

0x01 graphic
(3.13)

przekształcamy do równoważnej postaci

0x01 graphic
(3.14)

(takie przekształcenie jest zawsze wykonalne i zazwyczaj można to dokonać kilkoma sposobami).

  1. Wybieramy z przedziału 0x01 graphic
    przybliżenie 0x01 graphic
    . Kolejne iteracje obliczamy ze wzoru

0x01 graphic
   (3.15)

W poniższym twierdzeniu zostały sformułowane warunki wystarczające zbieżności ciągu (3.15) do pierwiastka funkcji (3.13) leżącego w przedziale 0x01 graphic
.

Twierdzenie 3.2. Niech funkcja 0x01 graphic
będzie określona, ciągła i różniczkowalna w przedziale domkniętym 0x01 graphic
oraz 0x01 graphic
dla każdego 0x01 graphic
. Jeśli nierówność

0x01 graphic
zachodzi dla każdego 0x01 graphic
,

to

  1. proces (3.15) jest zbieżny niezależnie od wyboru 0x01 graphic
    oraz 0x01 graphic

  2. zachodzą nierówności

0x01 graphic
0x01 graphic
(3.16)

Algorytm 3.3. Uściślanie pierwiastka funkcji 0x01 graphic
leżącego w przedziale 0x01 graphic
metodą iteracji prostej.

Metoda iteracji prostej(a, b, q, 0x01 graphic
)

  1. Równanie (3.13) przekształcamy do takiej postaci równoważnej (3.14), która spełnia założenia twierdzenia 3.2.

  2. W charakterze przybliżenia zerowego wybieramy dowolny 0x01 graphic
    , np. 0x01 graphic
    .

0x01 graphic

Przykład 3.4. Obliczyć ujemny pierwiastek funkcji

0x01 graphic

z dokładnością 0x01 graphic
metodą iteracji prostej.

Rozwiązanie. W przykładzie 3.1 pokazano, że ujemny pierwiastek funkcji (3.3) leży w przedziale 0x01 graphic
a dodatni w przedziale 0x01 graphic
. Poszukamy obecnie przekształcenia równania

0x01 graphic

do równoważnej postaci typu (3.14), spełniającej założenia twierdzenia 3.2. Równanie możemy przekształcić w następujący sposób

0x01 graphic
.

Dla tego przedstawienia mamy

0x01 graphic
.

Ta funkcja jest:

W obydwu przedziałach 0x01 graphic
, więc utworzony proces (3.15) przez odwzorowanie 0x01 graphic
jest rozbieżny.

Równanie 0x01 graphic
może być przedstawione w równoważnej postaci jako para równań

0x01 graphic
0x01 graphic

Dla obydwu funkcji mamy

0x01 graphic
.

Dla 0x01 graphic
funkcja 0x01 graphic
jest monotonicznie malejąca, zatem

0x01 graphic
.

W związku z tym, w procesie iteracyjnym użyjemy

Za 0x01 graphic
przyjęto:

0x01 graphic
dla pierwiastka z przedziału 0x01 graphic
,

0x01 graphic
dla pierwiastka z przedziału 0x01 graphic
.

Wartości kolejnych iteracji metody iteracji prostej są podane w tabeli 3.4.

Tabela 3.4. Wyznaczanie pierwiastków funkcji

0x01 graphic

metodą iteracji prostej, z dokładnością 10-5.

0x01 graphic

-0.75000

0x01 graphic

1.05000

0x01 graphic

0.27096

0x01 graphic

0.08135

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0

-0.75000

0

1.05000

1

-0.78203

8.6E-02

1

1.02838

5.8E-02

2

-0.77369

2.2E-02

2

1.02665

4.7E-03

3

-0.77589

5.9E-03

3

1.02651

3.7E-04

4

-0.77531

1.6E-03

4

1.02650

3.0E-05

5

-0.77546

4.1E-04

5

1.02650

2.4E-06

6

-0.77542

1.1E-04

7

-0.77543

2.8E-05

8

-0.77543

7.5E-06

3.6. Efektywność metod przybliżonego obliczania pierwiastków funkcji

Obecnie naszym celem jest porównanie metod uściślania przybliżonej wartości jednokrotnego pierwiastka funkcji 0x01 graphic
. Zakładamy, że metoda iteracyjna generuje ciąg 0x01 graphic
kolejnych przybliżeń zbieżny do pierwiastka 0x01 graphic
funkcji 0x01 graphic
. Każdej metodzie można przyporządkować liczbę 0x01 graphic
zwaną wykładnikiem zbieżności metody (lub rzędem metody), oraz stałą 0x01 graphic
, zwaną stałą asymptotyczną błędu metody, które spełniają warunek

0x01 graphic
. (3.17)

Rząd metody i stała 0x01 graphic
charakteryzują szybkość zbieżności metody iteracyjnej: ciąg kolejnych przybliżeń 0x01 graphic
jest tym szybciej zbieżny do pierwiastka, im większy jest rząd metody i im mniejsza jest stała asymptotyczna błędu. Spośród tych dwóch wielkości istotniejszą rolę odgrywa wykładnik zbieżności 0x01 graphic
. Przykładowo,

Dla metody iteracji prostej: 0x01 graphic
oraz 0x01 graphic
,

Dla metody stycznych: 0x01 graphic
oraz 0x01 graphic
.

3.7. Zadania

Zad. 3.1.  Liczba iteracji w metodzie bisekcji

Wykazać, że dla wyznaczenia przybliżonej wartości pierwiastka leżącego w przedziale 0x01 graphic
z dokładnością0x01 graphic
trzeba w metodzie bisekcji wykonać 0x01 graphic
iteracji.

Zad. 3.2.  Kryterium zakończenia obliczeń w metodzie Newtona-Raphsona

Udowodnić, że dla procesu Newtona-Raphsona zachodzi nierówność

0x01 graphic
,

gdzie

0x01 graphic
, 0x01 graphic
.

Nierówność tę można wykorzystać jako kryterium zakończenia obliczeń w metodzie Newtona-Raphsona.

Zad. 3.3.  Kryterium zakończenia obliczeń w metodzie iteracji prostej

Udowodnić, że jeśli proces iteracji prostej jest zbieżny, to zachodzi nierówność

0x01 graphic
,

Nierówność tę można wykorzystać jako kryterium zakończenia obliczeń w metodzie iteracji prostej.

Zad. 3.4.  Podprogram obliczania pierwiastka

Zakładamy, że dysponujemy narzędziem obliczeniowym wykonującym 5 działań zmiennoprzecinkowych: dodawanie, odejmowanie, mnożenie, dzielenie i potęgowanie. Opracować algorytm obliczania 0x01 graphic
dla dowolnej dodatniej liczby rzeczywistej 0x01 graphic
i dowolnego naturalnego 0x01 graphic
.

Wskazówka. Oznaczyć0x01 graphic
. Równość ta jest równoważna równości 0x01 graphic
. Oznacza to, że należy znaleźć pierwiastek funkcji 0x01 graphic
. Dowieść, że do znalezienia pierwiastka tej funkcji można zastosować metodę Newtona-Raphsona.

Zad. 3.5. Stosując metodę bisekcji obliczyć z dokładnością ε rzeczywiste pierwiastki poniższych funkcji

  1. 0x01 graphic

  2. 0x01 graphic

  3. 0x01 graphic

  4. 0x01 graphic

  5. 0x01 graphic
    .

Zad. 3.6. Stosując metodę Newtona-Raphsona obliczyć z dokładnością ε rzeczywiste pierwiastki poniższych funkcji.

  1. 0x01 graphic

  2. 0x01 graphic

  3. 0x01 graphic

  4. 0x01 graphic

  5. 0x01 graphic
    .

Zad. 3.7. Stosując metodę iteracji prostej obliczyć z dokładnością ε rzeczywiste pierwiastki poniższych funkcji.

  1. 0x01 graphic

  2. 0x01 graphic

  3. 0x01 graphic

  4. 0x01 graphic

  5. 0x01 graphic
    .