- •1. Интерполяция функций с помощью формул Ньютона
- •1.1. Постановка задачи
- •1.2. Конечные разности
- •1.5. Интерполяционный многочлен Лагранжа
- •2. Приближенное интегрирование функций
- •2.1. Метод прямоугольников
- •2.2. Метод трапеций
- •2.3. Метод парабол (Симпсона)
- •3. Решение дифференциальных уравнений
- •4. Приближенное вычисление корней уравнения
- •4.1. Отделение корней
- •4.2. Методы уточнения корней
- •5. Ответы
- •6. Индивидуальные задания
Задав шаг табулирования функции меньше, можно получить более точные интервалы отделения корней.
Функция f(x) меняет знаки на отрезках [-3, -2], [0, 1], [2, 3], следовательно, на этих отрезках отделены корни уравнения. На каждом из них отделено по одному корню уравнения, так как на отрезке [-3, -2] и f '(x), и f''(x) не меняют знак; на отрезке [0, 1 ] f '(x) не меняет знак; на отрезке [2, 3] и f '(x), и f''(x) не меняют знак.
Пример 4.2. Отделить все действительные корни уравнения
f(x) = x5 - 6x - 4 = 0
на отрезке [-2, 2]. |
|
|
Решение. |
|
|
f'(x) = |
, f''(x) = |
. |
Разделите отрезок [-2, 2] на четыре части, вычислите значения функции и производных на концах полученных отрезков и запишите полученные значения в таблице по форме 4.1.
Форма 4.1
Функция f(x) меняет знаки на отрезках [ , ], [ , ], [ , ], следовательно, на этих отрезках отделены корни уравнения. На каждом из них отделено по одному корню уравнения, так как ………………………………………………….
4.2. Методы уточнения корней
Уточнение корней – это доведение их до заданной степени точности. Существует несколько методов уточнения корней: метод половинного деления, метод хорд, метод касательных, комбинированный метод хорд и касательных, метод итераций. Мы рассмотрим уточнение корней методом касательных.
В дальнейшем будем считать, что функция f(x) непрерывна на промежутке [a, b], искомый корень х* отделен на этом промежутке и является единственным.
Метод касательных (Ньютона)
Суть метода заключается в том, что на промежутке [a, b] дуга кривой y = f(x) заменяется касательной к этой кривой. За приближенное значение корня принимается точка пересечения касательной с осью х (рис. 4.7, 4.8).Возможны следующие варианты:
Вариант 1. f(a) < 0, f(b) > 0, f'(x) > 0, f''(x) > 0, т.е. функция монотонновозрастающая, график функции – выпуклый вниз (рис. 4.7). Касательная к кривой в точке b пересекает ось х в точке с1, которая и принимается за первое приближение корня х1. Уравнение касательной к кривой в точке b есть
|
y f (b) |
|
|
|
f (b) |
|
. |
(4.2) |
|
x b |
||||
|
|
|
Найдем значение x = x1, для которого y = 0.
x b |
f (b) |
. |
|
||
1 |
|
|
|
f (b) |
|
Эта формула носит название формулы метода касательных.
f(a) < 0, f(b) >
0,
f(a) > 0, f(b) <
0,
f'(x) < 0 f''(x)<
Рис. 4.7 |
Рис. 4.8 |
Теперь корень (первое приближение) находится внутри отрезка [a, c1]. Если значение корня не устраивает, его можно уточнить, применяя метод касательных к отрезку [a, c1]: построим касательную к кривой в точке с. Она пересекает ось х в точке с2. Точка пересечения касательной с осью х, принимается за второе приближение корня − х2.
x |
x |
|
f (x1) |
. |
|
||||
2 |
1 |
|
|
|
|
|
|
f (x1) |
|
Продолжая этот процесс, находим |
|
|
|
|
x |
x |
|
f (xn ) |
. |
(4.3) |
|
|
||||||
n 1 |
n |
|
f |
|
||
|
|
|
(xn ) |
|
||
Процесс уточнения продолжается до тех пор, пока не будет получен приближенный корень с заданной точностью ε, т.е. до тех пор, пока корень не будет отделен на отрезке [xn-1 - xn], для которого выполняется условие
|xn-1 - xn | < ε.
По формуле (4.2) корни вычисляются и для случая, когда f(a) > 0, f(b) < 0, f'(x) < 0, f''(x) < 0, т.е. функция монотонно-убывающая, а график функции – выпуклый вверх (рис. 4.8).
Вариант 2. f(a) > 0, f(b) < 0, f'(x) < 0, f''(x) > 0, т.е. функция монотонноубывающая, а график функции – выпуклый вниз (рис. 4.9).
Касательная к кривой в точке f(а) пересекает ось х в точке с1, которая принимается за первое приближение корня х1. Уравнение хорды есть
|
|
|
|
|
y f (a) |
|
|
|
|
|
|
f |
(a) |
|
|
(4.4) |
|
x a |
||||||||
f(a) > 0, f(b) < |
|
|
|
|
|
|
|
|
0, |
|
|
|
|
|
f(a) < 0, f(b) > |
|
|
f'(x) < 0, f''(x) |
|
|
|
|
|
0, |
|
|
|
|
|
f'(x) > 0 f''(x) < |
|
||||
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 4.9 |
Рис. 4.10 |
Найдем значение x = x1, для которого y = 0. |
|
x a |
f (a) |
, |
|
|
|
||
1 |
f |
|
|
|
(a) |
|
|
x |
x |
|
f (x1) |
, |
|||
|
|
||||||
2 |
1 |
|
|
f |
|
|
|
|
|
|
|
(x1) |
|
||
или в общем виде |
|
|
|
f (xn ) |
|
|
|
x |
x |
|
|
|
(4.5). |
||
|
|
||||||
n 1 |
n |
|
|
f |
|
||
|
|
|
|
(xn ) |
|
||
Процесс уточнения продолжается до тех пор, пока не будет получено приближенное значение корня с заданной точностью ε.
По формуле (4.2) корни вычисляются и для случая, когда f(a) < 0, f(b) > 0, f'(x) > 0, f''(x) < 0, т.е. функция монотонно-возрастающая, график функции – выпуклый вверх (рис. 4.10).
На основании полученных выражений можно сформулировать правило: за исходную точку следует выбирать тот конец отрезка, для которого знак функции совпадает со знаком второй производной. В первом случае f(b)· f''(x) > 0, в качестве начального приближения берем точку b = x0 и используем формулу (4.3); во втором случае – f(a)· f''(x) > 0, в качестве начального приближения берем точку a = x0 и используем формулу (4.5).
Пример 4.1. (продолжение (см. стр. 47)). Уточнить корни уравнения f(x) = x3 -
8x + 2, отделенные на отрезках [-3, -2], [0, 1], [2, 3] методом касательных с точно-
стью ε = 0,005.
Решение.
1) Уточним корень уравнения f(x) = x3 -8x + 2, отделенный на отрезке [-3, -2]. f(a) = f(-3) = -1, f(b) = f(-2) = 10, f'(x) > 0, f''(x) < 0 (см. табл. 4.3 и рис. 4.11), по-
этому в качестве начального приближения возьмем точку a = -3 и используем для вычислений формулы (4.4) и (4.5), вспомогательные вычисления выполним в таблице (табл. 4.3).
Таблица 4.3
f ( 3) y f ( 3) . x ( 3)
x1 |
a |
|
|
f |
(a) |
3 |
1 |
2,947, |-2,947 – (-3)| = 0,053; |
||||
|
f |
|
|
19 |
||||||||
|
|
|
|
(a) |
|
|
|
|
|
|||
|
|
|
|
f (x ) |
|
|
|
0,025 |
|
0,053 > 0,005. |
||
x2 |
x1 |
|
|
2,947 |
2,946, |
|
||||||
|
|
1 |
|
|-2,946 – (-2,947)| = 0,001; |
||||||||
|
f |
|
18,061 |
|||||||||
|
|
|
|
(x1 ) |
|
|
|
|
|
|||
0,001 < 0,005,
следовательно, x = -2,946 − первый искомый корень уравнения f(x) = x3 -8x + 2, вычисленный методом касательных с точностью ε = 0,005.
2) Уточним корень уравнения f(x) = x3 -8x + 2, отделенный на отрезке [0, 1].
f(a) = f( ) = , f(b) = f( ) = |
, f'(x) 0, f''(x) 0, поэтому в качестве начального |
приближения возьмем точку |
и используем для вычислений формулы ( ) и |
( ), вспомогательные вычисления выполним в таблице по форме 4.2.
Форма 4.2
x a |
f (a) |
|
|
|
|||
1 |
|
||
|
f (a) |
|
x |
|
x |
|
f (x1 ) |
|
|
|
||||
|
2 |
1 |
|
|
|
|
|
|
|
f (x1 ) |
|
следовательно, x = – второй искомый корень уравнения f(x) = x3 -8x + 2, вычисленный с точностью ε = 0,005.
3) Уточним корень уравнения f(x) = x3 - 8x + |
2, отделенный на отрезке [2, 3]. |
|
f(a) = f( ) = , f(b) = f( ) = |
, f'(x) 0, f''(x) |
0, поэтому в качестве начального |
приближения возьмем точку |
= и используем для вычислений формулы (4.2) |
|
и (4.3), вспомогательные вычисления выполним в таблице по форме 4.3.
Форма 4.3
x |
b |
|
|
|
f (b) |
|
|
|
|
|||||
|
|
|
|
|
|
|
||||||||
1 |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
f (b) |
|
|
|
|
|
|
|||
x |
|
x |
|
f (x1 ) |
|
|
|
|
||||||
|
|
|
|
|
|
|||||||||
|
2 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f (x1 ) |
|
|
|
|
||||
x3 |
x2 |
|
|
f (x |
2 |
) |
|
|
|
|||||
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
f (x2 ) |
|
|
|||||
|
|
Следовательно, x = |
– третий искомый корень уравнения f(x) = x3 - |
|||||||||||
8x + 2, вычисленный с точностью ε = 0,005.
Метод половинного деления
Пусть на отрезке [a0, b0] имеется один корень. Разделим отрезок [a0, b0] пополам. Получим два отрезка [a0, с0] и [с0, b0], с0 = (a0 + b0)/2. За первое приближение корня х* принимается значение с0.
Для дальнейшего рассмотрения возьмем ту половину отрезка, где содержится корень, т.е. новый отрезок определяется соотношением:
[a1, b1 |
[a |
0 |
, c |
0 |
], |
если f (a |
0 |
) (c |
0 |
) 0, |
|
] |
|
], |
|
|
|
(4.6) |
|||||
|
[c0 |
, b0 |
если f (c0 ) (b0 ) 0. |
|
|||||||
Процесс деления отрезков пополам продолжается до тех пор, пока длина очередного отрезка не станет меньше заданной точности ε. После выполнения n таких делений получим последовательность вложенных отрезков [a0, b0], [a1, b1], …, [an, bn], каждый из которых содержит корень х* в два раза меньше предыдущего.
f(a0)·f(c)
b
a Рис. 4.11
Пример 4.3. Уточнить корень уравнения x2 - 0,6 = 0, отделенный на отрезке
[0, 1] с точностью ε = 0,1.
Решение.
1) Вычислим значения функции f(х) = x2 - 0,6 на концах отрезка [0, 1]: f(0) = 0 – 0,6 = -0,6; f(1) = 1- 0,62 = 0,4.
Найдем середину отрезка: с0 = (a0 + b0)/2 = (0 + 1)/2 = 0,5. Поделим отрезок
[0, 1] пополам на два отрезка [0; 0,5] и [0,5; 1] (рис. 4.12).
Рис. 4.12
Вычислим значение функции при х = 0,5: f(0,5) = 0,52 - 0,6 = -0,35. Найдем произведение значений функции на концах каждого из полученных отрезков:
f(0)·f(0,5) = 0,21 > 0; f(0,5)·f(1) = -0,14 < 0.
Произведение значений функции меньше нуля на концах отрезка [0,5; 1], значит, на этом отрезке находится корень. Поэтому для дальнейшего рассмотрения возьмем отрезок [0,5; 1].
|1- 0,5| = 0,5 > ε =
Продолжим процесс вычислений.
2) Найдем середину отрезка: [0,5; 1]; с1 = (a1 + b1)/2 = (0,5 + 1)/2 = 0,75 (рис. 4.13).
Рис. 4.13
Вычислим значение функции при х = 0,75: f(0,75) = 0,752 - 0,6 = -0,038. Найдем произведение значений функции на концах каждого из полученных отрезков:
f(0,5)·f(0,75) = 0,013 > 0; f(0,75)·f(1) = -0,015 < 0.
Произведение значений функции меньше нуля на концах отрезка [0,75; 1], значит, на этом отрезке находится корень. Поэтому для дальнейшего рассмотрения возьмем отрезок [0,75; 1].
|1- 0,75| = 0,25 > ε =
Продолжим процесс вычислений.
3) Найдем середину отрезка: [0,75; 1]: с2 = (a2 + b2)/2 = (0,75 + 1)/2 = 0,875 (рис. 4.14). Вычислим значение функции при х = 0,875: f(0,875) = 0,166.
Рис. 4.14
Найдем произведение значений функции на концах каждого из полученных отрезков:
f(0,75)·f(0,875) = -0,006 < 0; f(0,875)·f(1) = 0,066 > 0.
Произведение значений функции меньше нуля на концах отрезка [0,75; 0,875], значит, на этом отрезке находится корень. Поэтому для дальнейшего рассмотрения возьмем отрезок [0,75; 0,875].
|0,875 - 0,75| = 0,13 > ε =
Продолжим процесс вычислений.
4) Найдем середину отрезка: [0,75; 0,875]: с3 = (a3 + b3)/2 = (0,75 + 0,875)/2 = 0,813
(рис. 4.15). Вычислим значение функции при х = 0,813: f(0,813) = 0,06.
Рис. 4.15
Найдем произведение значений функции на концах каждого из полученных отрезков:
f(0,75)·f(0,813) = -0,002 < 0; f(0,813)·f(0,875) = 0,166 > 0.
Произведение значений функции меньше нуля на концах отрезка [0,75; 0,813], значит, на этом отрезке находится корень.
|0,813 - 0,75| = 0,06 < ε =
Поэтому процесс вычислений закончен. Приближенное значение корня x* = (0,75+0,813)/2 ≈ 0,78.
Вычисления удобно выполнять в таблице (табл. 4.4), а лучше в таблице Excel.
Таблица. 4.4
Окончание табл. 4.4
Пример 4.4. Уточнить корень уравнения x2 – 5x - 5 = 0, отделенный на отрез-
ке
[5, 7] с точностью ε = 0,1. Решение выполните самостоятельно в таблице по форме 4.4.
Форма 4.4
Окончание формы 4.4
