- •Глава 2
- •2.1. Введение
- •Относительные и абсолютные ошибки
- •2.3. Ошибки, содержащиеся в исходной информации
- •2.4. Ошибки ограничения
- •2.5. Ошибки округления
- •2.6. Распространение ошибок
- •2 .7. Графы вычислительных процессов
- •Пример 1
- •2.9. Памятка программисту
- •Упражнения
- •Численное решение уравнений
- •5.1. Введение
- •5.2. Метод последовательных приближений
- •5.3.Усовершенствованный метод последовательных приближений
- •5.4. Метод ньютона — рафсона
- •5.5. Случай почти равных корней
- •5.6. Сравнение методов и их ошибок округления
- •5.7. Корни многочленов
- •5.8. Влияние неточности коэффициентов многочлена
- •5.9. Системы уравнений
- •5.10. Комплексные корни
- •5.11. Нахождение исходного приближения
- •Упражнения
- •Глава 8
- •8.1. Введение
- •8.3. Ошибки округления
- •8.5. Влияние погрешностей коэффициентов. Достижимая точность решения
- •8.6. Итерационные методы решения систем линейных уравнений
- •8.7. Сравнение методов
- •8.8. Практический пример 10: проведение кривой методом наименьших квадратов
- •Лекция №1 Численное интегрирование
- •Лекция №2
- •Правило Симпсона.
- •Метод Гаусса
- •Методы прогноза и коррекции
- •Анализ ошибок при использовании метода прогноза и коррекции
Численное решение уравнений
5.1. Введение
Нахождение корней уравнения — это одна из древнейших математических проблем, которая не потеряла своей остроты и в наши дни: она часто встречается в самых разнообразных областях науки и техники. Рассмотрим общеизвестное квадратное уравнение
aх2+Ьх+с = 0.
Говорят, что значения
являются корнями этого уравнения, потому что для этих значений х уравнение удовлетворяется. В более общем случае, если имеется некоторая функция F{x), то бывает необходимо найти такие значения аргумента х, для которых
F (х) = 0. (5.1)
Функция F{x) может быть алгебраической или трансцедент-ной; мы обычно будем предполагать, что она дифференцируема.
В общем случае функции, которые мы будем рассматривать, не имеют аналитических формул для своих корней в противоположность, например, квадратному уравнению. Поэтому приходится пользоваться приближенными методами нахождения корней, которые в основном состоят из двух этапов:
1. Отыскание приближенного значения корня.
2. Уточнение приближенного значения до некоторой заданной степени точности.
Мы не будем заниматься первым этапом и лишь кратко расскажем о нем в разд. 5.11. Очень часто приближенное
значение корня бывает известно из физических соображений, в других случаях можно использовать графические методы. Кроме того, существуют специальные методы нахождения приближенного корня для того практически важного случая, когда F(x) является полиномом.
В этой главе будут в основном рассмотрены различные методы, относящиеся ко второму этапу — уточнению первоначального приближения. Численный метод, в котором производится последовательное, шаг за шагом, уточнение первоначального грубого приближения, называется методом итераций. Каждый шаг в таком методе называется итерацией. Если при последовательных итерациях получаются значения, которые все ближе и ближе приближаются к истинному значению корня, то говорят, что метод итераций сходится.
Сейчас мы рассмотрим несколько различных методов итераций для решения уравнений и исследуем, при каких условиях эти методы сходятся.
5.2. Метод последовательных приближений
Предположим, что (5.1) переписано в виде
x=f(x) . (5.2)
Это преобразование можно сделать различными путями. Например, если
F(x) = x2 – с = 0,
где с 0, то можно прибавить к правой и к левой частям х
х = х2 + х — с (5.3)
или можно разделить все выражение на х и получить
X=c/x. (5.4)
Н
аконец,
можно преобразовать уравнение к
следующему
Очевидно, что значения х, являющиеся корнями этого
уравнения, равны c
Пусть x0 будет исходным приближенным значением корня уравнения (5.2). Тогда в качестве следующего приближения примем
x1 =f (x0).
В качестве следующего приближения возьмем
x2 =f (x1).
Продолжая этот процесс дальше, в качестве п-го приближения необходимо положить
xn
=
f
(xn-1).
Основной вопрос, который необходимо выяснить при пользовании этим методом, — сходится ли xn к решению уравнения (5.2) при возрастании n?
Мы выведем сейчас достаточные условия для сходимости метода; иными словами, выведем условия, которые являются гарантией того, что последовательные значения xn будут приближаться к решению уравнения (5.2). Необходимо отметить, что эти условия не являются необходимыми, так как существуют функции, для которых эти условия не выполняются, но для которых тем не менее с помощью (5.6) можно найти их решения.
Рассмотрим сначала геометрическое представление процесса. При решении уравнения (5.2) отыскивается точка пересечения кривой у = f(x) и прямой у = х. Рассмотрим рис. 5.1, на котором изображена некоторая кривая у = f{x). Кривая эта может представлять собой какую угодно функцию, но для нас сейчас важно то обстоятельство, что производная этой кривой положительна и меньше 1, т.е. 0 <. f’(x) < 1. Пусть
х = а.— значение х в точке пересечения; тогда а является корнем этого уравнения. Естественно, приступая к решению задачи, мы не знаем значения корня.
Зададимся некоторым x0. Значение x1 равно f(x0). Так как ОА на рис. 5.1 равно f(x0), то найти x1 можно следующим образом: проведем через точку А горизонтальную линию до пересечения с прямой у = х в точке В, как показано на рисунке. Значение
х2 = f(x1) можно найти, проведя через точку В вертикальную линию до пересечения с кривой у == f(х). При этом мы получаем отрезок ОС, равный.
f(x1), и проводя через точку С горизонтальную линию до пересечения с прямой у = х, получаем х2. Процесс продолжается в том же порядке и дальше; на рисунке последовательность операций показана стрелками.
На рисунке видно, как последовательные значения х сходятся к х = а. Важно помнить, что для рассмотрения мы взяли кривую, производная которой положительна и меньше 1.
Рис. 5.1. Геометрическое представление метода последовательных приближений для 0 <f ‘(x) < 1.
Рассмотрим теперь другую кривую у = f(x), производная которой отрицательна, но меньше 1 по абсолютной величине. Этот случай изображен на рис. 5.2. Последовательные операции вычисления решения этого уравнения снова изображены стрелками; приближения опять сходятся к решению х = а. В противоположность тому, что имело место для функции с положительной производной (см. рис. 5.1), на этот раз каждое последующее приближение находится с противоположной стороны от х = а. Для функции с положительной производной все последовательные приближения находились с одной стороны от истинного значения корня.
Наконец, рассмотрим случаи, когда производная функции больше 1 (рис. 5.3) и меньше —1 (рис. 5.4). В обоих случаях метод расходится. Каждое последующее значение х отстоит дальше от истинного значения корня, чем предшествующее. Поэтому кажется обоснованным предположение, что итерации по формуле (5.6) сходятся при условии,
Р
и с.
5.2.
Геометрическое представление метода
последовательных приближений
для
0 > f
'(x)
>
—1.
что производная f '(x) меньше 1 по абсолютной величине. Действительно, именно так и обстоит дело, и сейчас мы в этом убедимся с помощью элементарных выкладок. Заметим, что
а = f(a),
xn = f (xn-1 )
так что
xn-a = f(xn-1) – f(a).
Умножая правую часть на (xn-1 — a)/(xn-1 — а) и используя теорему о среднем значении
(
теорема о
среднем значении утверждает , что если
производная функци y=f(x)
непрерывна
на некотором интервале a
, b , то
тангенс угла наклона хорды , проведённой
между a
и b
, т.е.
равен производной функции в некоторой промежуточной точке , лежащей между a и b.)
, получаем
xn— а = f '() (xn-1— а),
где лежит между xn-1 и а.
Р и с. 5.3. Геометрическое представление метода последовательных приближений для f '(x) > 1.
Теперь пусть т будет максимальным значением f'(x) во всем рассматриваемом интервале, т. е. в интервале. включающем в себя x0 , x1 , x2 ..., xn, а. Тогда
| xn-1 – a | m*| xn-2 –a |.
Таким же образом получаем
| xn – a | m2*| xn-2 – a |.
Р и с. 5.4. Геометрическое представление метода последовательных приближений для f'(x) < —1.
Продолжая те же выкладки, получаем
| xn – a | mn*| x0 – a |. (5.7)
Очевидно, что, если во всем интервале т < 1, то независимо от выбора начального значения x0 с возрастанием п правая часть неравенства становится малой и xn сходится к а.
С другой стороны, для случая | f '(x) | > 1 величина | xn—а | неограниченно возрастает с ростом п. Доказательство этого мы предоставляем читателям.
Таким образом, если | f'(x)| < 1, то процесс сходится, если же | f'(x)| > 1, то процесс расходится. Обратите внимание, что неравенства должны выполняться при всех значениях xn, вычисляемых в ходе решения задачи.
Что произойдет в случае, когда производная f'(x) в некоторых точках xi меньше, а в других точках хj больше 1 по абсолютной величине? Точного ответа на этот вопрос не существует, процесс иногда сходится, иногда расходится. Вернемся к примеру, рассмотренному в начале раздела
где коонями уравнения являются ± с. В формуле (5.3)
f(x) = x2 + x – c ,
так что | f '(х) | < 1, если —1 < х < 0. В этом случае если число с меньше 1, то процесс сходится к отрицательному значению корня.
С другой стороны, если воспользоваться формулой (5.4), то
f ’(x) = -c/x2
и при х, близких к с (как и должно быть при отыскании корня уравнения), | f'(x) | становится почти равным 1; можно проверить, что процесс расходится.
Наконец, применяя формулу (5.5), получаем выражение для f'(x) в виде
В этом случае когда x с, то f'(x) 0 и процесс очень быстро сходится.
Вообще говоря, хотя для всякого уравнения можно найти большое количество соответствующих ему функций f(х) в выражении (5.2), нужно с большой осторожностью подходить к их конкретному выбору, так как от него зависит сходимость метода итераций.
