Приближенное решение алгебраических уравнений
Отделение корнейПусть дано уравнение
f(x)=0, (1)
где f(x) определено и непрерывно в некотором конечном или бесконечном интервале a≤x≤b.
Всякое значение ξ, обращающее функцию f(x) в нуль, то есть такое, что f(ξ)=0 называется корнем уравнения (1) или нулем функции f(x).
Число ξ называется корнем k-ой кратности, если при x= ξ вместе с функцией f(x) обращаются в нуль ее производные до (k-1) порядка включительно
f(ξ) = f’(ξ) = … = fk-1(ξ) = 0
Однократный корень называется простым.
Приближенное нахождение корней уравнения (1) обычно складывается из двух этапов:
1. Отделение корней, то есть установление интервалов [αi,βi], в которых содержится один корень уравнения (1).
2. Уточнение приближенных корней, то есть доведение их до заданной точности.
Для отделения корней полезна след. теорема:
Теорема 1. Если непрерывная функция f(x) принимает значения разных знаков на концах отрезка [a,b], то есть f(a)f(b)<0, то внутри этого отрезка содержится, по меньшей мере, один корень уравнения f(x)=0, то есть найдется хотя бы одно число ξ∈(a,b), такое, что f(ξ)=0.
Корень заведомо единственный, если f ‘(x) существует и сохраняет постоянный знак внутри интервала [a,b].
Доказательство: Пусть для определенности f(a)<0, f(b)>0. Тогда на интервале [a,b] найдется, по крайней мере, одна точка ξ в интервале (ξ1, ξ2) (a< ξ1< ξ< ξ2<b), на границах которого выполняется
f(ξ1)<0, f(ξ2)>0. (2)
В силу непрерывности функции для каждого сколь угодно малого δ>0 всегда найдется число ε>0 такое, что при | ξ 1- ξ 2|<ε выполняется |f1 – f2|<δ, где fi=f(ξi); i=1,2. Из условия (3.2) и условия |f1 – f2|<δ следует, что |f1|<δ и |f2|<δ. Поскольку f1<0, а f2>0 и f(x) непрерывна, то следовательно существует предел или f(ξ)=0 и таким образом, первая часть теоремы доказана.
Далее, если f ‘(x) сохраняет знак на [a,b] то она будет монотонна, то есть для любых x1<x2 будет выполняться f(x1)<f(x2) (если f ‘(x)>0) либо f(x1) > f(x2) (если f ‘(x)<0). В силу условия f(a)f(b)<0, монотонности и непрерывности корень будет единственный. Доказательство закончено.
Рассмотрим графический или табличный способ отделения корней. В заданном интервале [a,b] задается сетка a=x1<x2<…<xn=b и вычисляют значения функции f(xi) (достаточно определить лишь знаки в узлах xi). Если окажется, что f(xi)f(xi+1)<0, то в силу теоремы 1 в интервале (xi, xi+1) имеется корень уравнения. Если за корень взять , то точность нахождения корня будет равна половине интервала . Нужно еще убедится, является ли найденный корень единственным. Для этого достаточно провести процесс половинного деления, деля интервал [xi, xi+1] на две, четыре и т.д. равных частей и определить знаки функции f(x) в точках деления. При делении мы повышаем точность определения корня.
Пример №1. Определить корни уравнения f(x) = x3 – 6x +2 = 0
Решение: Составляем приблизительную схему.
x | -∞ | -3 | -1 | 0 | 1 | 3 | ∞ |
f(x) | - | - | + | + | - | + | + |
Для графического решения уравнения (3.3) удобно заменить (3.3) эквивалентным уравнением
f1(x) = f2(x) или x3 = 6x-2, то есть
f(x1) = x3,
f2(x) = 6x-2.
То значение x=ξ, при которых f1(ξ ) = f2(ξ ) и будет являться корнем уравнения (3.3).
Пример №2. x*lg(x)=1.
Решение: ,
ξ ≈ 2.5.
Итак, мы выделили интервалы, в которых содержится единственный корень. Рассмотрим теперь методы уточнения корней.
Прежде чем перейти к методам уточнения корней, дадим определение сходимости последовательности чисел (или сходимости итерационного процесса).
Определение 1. Если выполняется неравенство
, (4)
то говорят, что последовательность {xk} линейно сходится к пределу ξ. Здесь α - коэффициент сходимости. Если α → 0, то имеем суперлинейную сходимость.
Определение 2. Если существует такое r>1 (r=2,3,…), что , (5)
то последовательность {xk} имеет сходимость порядка r. Здесь c = const
.
Максимум в (4) и (5) берется по всем последовательностям {xk}.
Пример №3. Отделить корни уравнения f(x)=(x-1)2*log(3x)
, используя графико-аналитический метод. Найти корни уравнения с заданной точностью методами бисекций, Ньютона или простых итераций. Выполнить проверку правильности найденных решений, вычислив невязки.
Решение:
Графически определим приблизительные границы нахождения корней функции.
.
Таким образом, имеются два корня в интервалах [0.2;0.4] и [0.8;1.2].
Для проверки решения используем этот калькулятор. Если задать слишком большие границы интервала [-10;10], то решение не получим, поскольку в интервале [-10;0) функция не определена. Можно, либо увеличить количество интервалов разбиения, либо уточнить границы интервала. Если выбрать количество разбиений n=10 , то решение снова не получится, поскольку шаг разбиения будет h=2 и затронет область определения функции:
f(0)= NaN;f (2)= 0.77815
Уточним границы следующим образом: [0;10] при n=40, h= (10-0)/40 = 0.25
Получаем ответ (два корня):
- Поскольку F(0.25)*F(0.5)<0 (т.е. значения функции на его концах имеют противоположные знаки), то корень лежит в пределах [0.25;0.5].
- Поскольку F(1) = 0, то корень x = 1