Численные методы. Ч.2. Учебное пособие
.pdf
Лекция 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 -
