Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Численные методы. Ч.2. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
15.08.2026
Размер:
1 Мб
Скачать

Лекция 12

Если совершено n итераций, т. е. получен отрезок [an,bn ] , содержащий корень, тогда за приближенное значение этого корня можно взять точку

an +2 bn

середину отрезка [an,bn ] .

Поскольку длина отрезка [an,bn ] равна bn an , то число an +bn

2

отличается от точного значения корня не более чем на

bn 2 an .

Если требуется найти корень с точностью ε , то деление отрезка пополам продолжается до тех пор, пока длина отрезка не станет меньше 2ε . Тогда середина последнего отрезка даст значение корня с требуемой точностью.

В этом методе можно не вычислять значения функции f ( x ) , достаточно лишь определить знак значения функции. Обозна-

чим погрешность на n -ом шаге ε =

 

xn ξ

 

, где ξ – точное значе-

 

 

ние корня; тогда погрешности на

 

 

-ом и

 

(

) -ом шагах связа-

 

n

 

 

 

 

n +1

ны неравенством

εn+1 12 εn (n = 1,2,...) ,

что позволяет метод половинного деления отнести к методам, имеющим линейную скорость сходимости.

Так как метод половинного деления приводит к многократному повторению однотипных вычислительных операций, то он особенно удобен для проведения вычислений на компьютерах.

Пример 12.2. Определить корни уравнения x2 log0,5 (x +1) =1 графически и уточнить один из них методом половинного деле-

ния с точностью до 0.01.

 

 

Решение. Представим

данное уравнение

в виде

log0,5 (x +1) =1 x2 . Обозначив

y1 = log0,5 (x +1), y2 =1 x2

, построим

графики этих функций.

 

 

- 11 -

ЧИСЛЕННЫЕ МЕТОДЫ

Изграфикавидно,чтоуравнениеимеетодинкорень ξ [−1; 0]

. Для уточнения этого корня методом половинного деления выберем промежуток, на концах которого функция

f (x) = x2 log0,5 (x +1) −1

имеет разные знаки. Составим таблицу:

x

-0.5

-0.8

 

 

 

sign f (x)

-

+

 

 

 

Длядальнейшихрасчетовперейдемкдесятичнымлогарифмам:

f (x) = x2 lg(x +1) / lg0.5 −1 = x2 lg(x +1) −1 . −0.301

Вычисления расположим в следующей таблице:

n

an+

bn

xn

=

an + bn

 

f (xn )

 

 

 

 

 

2

 

 

0

-0.8

-0.5

 

-0.65

 

-0.360

1

-0.8

-0.65

 

-0.73

 

0.0067

2

-0.73

-0.65

 

-0.69

 

-0.196

3

-0.73

-0.69

 

-0.71

 

-0.099

4

-0.73

-0.71

 

-0.72

 

-0.048

5

-0.73

-0.72

 

 

 

 

 

Ответ: ξ ≈ −0.72 .

- 12 -

Лекция 12

Пример 12.3. Отделить корни аналитически и уточнить один из них методом половинного деления с точностью до 0.01.

 

 

x4 x3 − 2x2 + 3x − 3 = 0 .

 

Решение. Полагая

f (x) = x4 x3 − 2x2 + 3x − 3 , имеем

 

 

 

f ′(x) = 4x3 − 3x2 − 4x + 3 ,

 

найдем корни производной:

 

 

 

 

 

 

4x3 − 3x2 − 4x + 3 = 0 ;

 

 

 

4x(x2 −1) − 3(x2 −1) = 0 ;

 

 

 

(x2 −1)(4x − 3) = 0 ;

 

 

 

x1 = −1; x2 =1; x3 =

3

.

 

 

 

 

4

 

 

 

 

 

 

 

 

 

Составим таблицу знаков функции

f (x) :

 

 

 

 

 

 

 

 

 

x

-∞

 

-1

 

1

 

 

 

 

 

 

 

 

 

sign f (x)

+

 

-

 

-

 

+

 

 

 

 

 

 

 

 

 

Из таблицы видно, что уравнение имеет два действительных корня:

 

 

1

 

(

 

]

 

2

[

 

 

) .

 

 

 

 

x

 

−∞;−1 , x

 

 

1;

 

 

 

Уменьшим промежутки, в которых находятся корни:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

-2

 

 

 

-1

 

 

 

 

 

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sign f (x)

+

 

 

 

 

-

 

 

 

 

 

 

-

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Следовательно, 1

[

 

 

]

2

[

 

].

 

 

 

 

 

x

 

−2;−1 , x

 

 

1;2

 

 

 

 

 

 

Уточним один из корней, например x1 [−2;−1], методом половинного деления с точностью до 0.01. Все вычисления удобно произвести, используя следующую таблицу:

n

an+

bn

xn

=

an + bn

 

f (xn )

 

 

 

 

 

2

 

 

0

-2

-1

 

-1.5

 

-0.5625

 

 

 

 

 

 

 

 

1

-2

-1.5

 

-1.75

 

0.3633

 

 

 

 

 

 

 

 

2

-1.75

-1.5

 

-1.63

 

-1.8140

 

 

 

 

 

 

 

 

- 13 -

ЧИСЛЕННЫЕ МЕТОДЫ

n

an+

bn

xn

=

an + bn

 

f (xn )

 

 

 

 

 

2

 

 

3

-1.75

-1.63

 

-1.69

 

-0.7981

 

 

 

 

 

 

 

 

4

-1.75

-1.69

 

-1.72

 

-0.2363

 

 

 

 

 

 

 

 

5

-1.75

-1.72

 

-1.73

 

-0.0406

 

 

 

 

 

 

 

 

6

-1.75

-1.73

 

-1.74

 

0.1592

 

 

 

 

 

 

 

 

7

-1.74

-1.73

 

 

 

 

 

 

 

 

 

 

 

 

 

Ответ: x1 ≈ −1.74 .

12.3.2. Метод простых итераций (метод последовательных приближений)

Есликакимлибоспособомполученоприближенноезначение х0 корня произвольногоуравнения f ( x ) = 0 ,тоуточнениекорня можно получить по так называемому методу простых итераций или приближений. Для этого уравнение (12.1) представим в равносильной форме

 

x = ϕ (x ) ,

(12.2)

что всегда можно сделать, и притом многими способами.

 

Пусть число х1

представляет результата подстановки х0

в

правую часть равенства (12.2):

 

 

далее

x1 = ϕ (x0 ) ,

 

 

x2 = ϕ (x1 ) ,

 

 

 

 

 

и, вообще, пусть хn

получается из хn−1

по формуле

 

 

xn = ϕ (xn−1 ) .

(12.3)

Это процесс последовательного

вычисления чисел

хn

(n =1,2,3, ...) по формуле (12.3) называется методом последовательных приближений или методом простых итераций.

Числовая последовательность

x0 , x1, x2 ,...,xn,... (12.3’)

полученная методом (12.3), может быть как сходящейся, так и расходящейся.

- 14 -

Лекция 12

Покажем, что если последовательность (12.3’) сходится, то ее пределом будет именно корень ξ уравнения (12.1) или (12.2). Действительно имеем:

xn = ϕ (xn−1 ) , (n =1,2,3, ...) ;

lim хn

= limϕ(хn−1 );

n→∞

n→∞

lim хn

=ϕ(lim хn−1 );

n→∞

n→∞

так как функция ϕ (x ) непрерывна;

ξ = ϕ (ξ ) ,

то есть число ξ является корнем уравнения (12.2), а следовательно, и уравнения (12.1).

Оказывается, что при выполнении некоторых условий описанный процесс сходится, то есть, увеличивая n , можно получить приближение, сколь угодно мало отличающееся от истинного значения ξ .

Теорема 12.3. Если в интервале (a,b) , содержащем корень ξ уравнения (12.1), а также его последовательные приближения

x0 , x1, x2 ,...,xn,...

 

вычисляемые по методу итераций, выполнено условие

 

 

ϕ '(x ) q <1

 

,

(12.4)

 

 

то lim хn =ξ , то есть процесс итераций сходится независимо от

n→∞

выбора начального приближения x0 [a,b] .

Доказательство.

Так как ξ – корень уравнения (12.1), а следовательно и уравнения (12.2) , то

ξ = ϕ (ξ )

Согласно определению имеем также:

x1 = ϕ (x0 ) .

Вычтем второе равенство из первого и применим теорему Лагранжа. Получим:

ξ x1 = ϕ (ξ ) ϕ (x0 ) = (ξ x0 )ϕ '(c0 ) ,

где c0 (ξ, x0 ) .

- 15 -

ЧИСЛЕННЫЕ МЕТОДЫ

Аналогичные равенства можно получить для следующих приближений:

ξx2 = (ξ x1 )ϕ '(c1 ) ,

ξx3 = (ξ x2 )ϕ '(c2 ),

…………………..

ξ xn = (ξ xn−1 )ϕ '(cn−1 ) ,

где ci (ξ, xi ) .

Перемножив последовательно полученные равенства и произведя сокращения, получим

ξ xn = (ξ x0 )ϕ '(c0 ) ϕ '(c1 ) ... ϕ '(cn−1 ) .

Учитывая условие (12.4), приходим к следующей оценке:

ξ xn = ξ x0 qn .

Этим теорема доказана, так как q <1 .

При практическом нахождении корней по способу итераций нужно стремиться представить уравнение (12.1) в форме (12.2) так, чтобы производная ϕ'(x) вблизи искомого корня по абсолютной величине была возможно меньше. Это обеспечит максимальную скорость сходимости.

Пример 12.4. Найдем вещественный корень уравнения x5 x −1 = 0 .

Решение.

Нетрудно убедиться, что корень ξ [1;2].

Для уточнения корня методом итераций не имеет смысла данное уравнение представлять в виде

так как

x = x5 −1 ,

 

 

 

 

 

 

ϕ(x) = x5 −1

 

 

и

 

при

[

].

ϕ '(x) = 5x4 >1

 

x 1;2

 

Если же это уравнение представить в виде

x = 5 x +1

(ϕ(x) = 5 x +1),

- 16 -

Лекция 12

то

ϕ '(x) =

 

 

 

1

 

<1

при

x 1;2

].

 

 

 

 

 

5

 

(

)

4

 

[

5

 

x +1

 

 

 

 

Пусть x0 =1 , тогда

x1 =1.1654 x2 =1.1670 x3 =1.1673 x4 =1.1673

Все цифры полученного результата ξ x4 =1.1673 верны, в чем можно убедиться, вычислив еще одно приближение.

Оценка погрешности метода итераций

Пусть ξ – корень уравнения

f( x ) = 0 ,

аxn n -ое приближение к корню ξ , то есть

ξ xn .

Тогда разность

ξ xn

называется погрешностью n -го приближения.

Так как xn получено методом итераций, то и речь идет о погрешности метода итераций.

Оценка погрешности метода итераций, это то же самое, что оценка отклонения n -го приближения xn от точного значения корня ξ .

Из равенств

ξ = ϕ (ξ )

и

xk = ϕ (xk −1 )

вытекает равенство

ξ xk = ϕ (ξ ) ϕ (xk −1 ) = (ξ xk −1 ) ϕ '(c) ,

(12.5)

или

ξ xk −1 = xk xk −1 + (ξ xk −1 ) ϕ '(c) .

- 17 -

ЧИСЛЕННЫЕ МЕТОДЫ

Отсюда

ξ xk −1 xk xk −1 + ξ xk −1 q ,

где

q = max ϕ '( x ) .

[a,b]

Из последнего неравенства следует

ξ xk −1 (1 − q) xk xk −1 ,

и так как q (0,1) , то

 

ξ xk −1

 

 

 

xk xk −1

 

 

.

(12.6)

 

 

 

 

 

 

 

 

 

 

1 − q

 

 

 

Из (12.5) имеем

(

 

)

 

 

 

 

 

 

 

 

q ,

(12.7)

 

ξ xk

 

 

ξ xk −1

 

 

 

 

 

Перемножив (12.6) и (12.7) и произведя необходимые сокращения, получим окончательно требуемую оценку погрешности

метода итераций

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ξ xk

 

 

 

q

 

 

xk xk −1

 

,

(12.8)

 

 

 

 

 

 

1

q

где

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ '( x )

 

 

 

 

 

 

 

 

 

q = max

 

 

, и q <1 .

 

 

 

 

 

 

 

 

[a,b]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Неравенство (12.8) позволяет оценить погрешность n-го приближения через разность двух последовательных приближений

xn и xn−1 .

Эта оценка широко используется на практике.

12.3.3. Метод Ньютона

Пусть уравнение

f ( x ) = 0

имеет единственный корень ξ [a,b] .

Сущность метода Ньютона состоит в следующем. Пусть ка-

ким-либо методом получено приближение xn

к корню ξ . В точ-

ке ( xn, f ( xn )) к кривой f ( x ) проведем касательную

y = f (xn ) + f '(xn )(x xn ) .

(12.9)

- 18 -

Лекция 12

От уравнения (12.1) переходим к приближенному уравнению

f (xn ) + f '(xn )(x xn ) = 0 .

(12.10)

Из уравнения (12.10) находим:

 

 

 

x = xn

f

(xn )

.

 

f

'(xn )

 

 

 

 

Полученное решение примем за следующее приближение хn+1 :

xn+1 = xn

f (xn )

, n =0,1,2,...

(12.11)

f '(xn )

 

 

 

f '( xn ) ≠ 0 .

Полученный процесс и есть метод Ньютона или метод касательных. Обоснуем сходимость метода Ньютона. Уравнение (12.1) преобразуем к уравнению

следующим образом:

x = ϕ (x )

(12.12)

f ( x ) = 0 ;

 

 

 

 

f (x )

= 0 , f '( x ) ≠ 0

на [a,b] ;

f '(x )

 

 

 

f (x )

 

 

 

x = x

 

.

(12.13)

 

 

f '(x )

Видим, что метод Ньютона можно рассматривать как частный случай метода итераций.

Здесь

ϕ (x ) = x

f (x )

и ϕ '(ξ ) =

f (ξ ) f ''(ξ )

= 0

f '(x )

f '2 (ξ )

при f '( xn ) ≠ 0 , f ''( xn ) ≠ 0 на [a,b] .

 

 

Последнее означает, что существует такая окрестность точки x = ξ , что

ϕ '(x ) < 1 ,

следовательно, если начальное приближение x0 взято на этой окрестности, то последовательность

- 19 -

ЧИСЛЕННЫЕ МЕТОДЫ

xn+1 = xn

f (xn )

, n =0,1,2,...

f '(xn )

 

 

 

будет сходиться к x = ξ .

 

 

 

 

Начальное приближение x0

надо выбирать так, чтобы было

выполнено условие Фурье:

 

 

 

f ( x0 ) f ''( x0 ) > 0 .

Оценка погрешности приближения xn

Разложим f ( xn ) по формуле Тейлора в окрестности точки xn−1

f(xn ) = f (xn−1 )(xn xn−1 ) =

=f (xn−1 ) + f '(xn−1 )(xn xn−1 ) + 12 f ''(c1 )(xn xn−1 )2 ,

c1 [xn−1, xn ] .

Так как согласно (12.10)

f (xn−1 ) + f '(xn−1 )(xn xn−1 ) = 0

следовательно,

 

 

f (xn )

=

 

1

f ''(c1 )(xn xn−1 )2 .

 

Далее

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (xn ) f (ξ ) =

1

 

f ''(c1 )(xn xn−1 )2 ,

 

( f (ξ ) = 0)

 

 

 

 

 

2

 

 

 

 

 

 

 

 

(xn

ξ ) f '(c2 ) =

1

f ''(c1 )(xn xn−1 )2 , (по теореме Лагранжа)

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xn ξ =

1

 

f ''(c1 )(xn xn−1 )2

.

 

 

 

2

 

f '(c2 )

 

 

 

 

 

 

 

 

 

 

 

Если

M2 = max[ ] f ''( x ) ,

a,b

m1 = min[ ] f '( x ) ,

a,b

то окончательно получим следующую оценку погрешности метода Ньютона:

- 20 -

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]