
- •Глава 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
- •Правило Симпсона.
- •Метод Гаусса
- •Методы прогноза и коррекции
- •Анализ ошибок при использовании метода прогноза и коррекции
8.5. Влияние погрешностей коэффициентов. Достижимая точность решения
Зададимся вопросом: если aij и ci являются экспериментальными данными или вычисленными величинами, то каково будет влияние погрешностей этих величин на решение системы уравнений?
Чтобы получить ответ на этот важный вопрос, мы воспользуемся тем же методом, что и в гл. 5. Пусть истинные значения коэффициентов равны aij +wij и ci + bi, причем wij и bi, малы по сравнению с aij и ci. Иначе говоря, мы хотим в действительности получить решение системы
(a11+w11)x1+ ... +(a1n+w1n)xn=b1+c1
................................................................
(ai1+wi1)x1+ ... +(ain+win)xn=bi+ci (8.28)
..............................................................
(an1+wn1)x1+ ... +(ann+wnn)xn=bn+cn
Конечно, если бы мы точно знали значения wij и bi, то мы просто решили бы уравнения (8.28) вместо исходных. Однако обычно мы знаем только верхнюю границу возможной величины wij и bi. Например, если aij и ci являются экспериментальными данными, известными с точностью до g знаков после запятой, то
IwijI<=0.5*10^-g; IbI<=0.5*10^-g .
Предположим, что x1, x2, x3, ...,xn—решение исходной системы (8.13), и обозначим через
xi+ái
решение системы (8.28). Предположим также, что
16i1 <=IxiI, i=l, 2,..., n.
Подставляя xi + 6i в (8.28) и используя равенства (8.13), находим, что
(a1161+...+a1n6n) +(w11x1+...+w1nxn) = b1,
.......................................................................
(ai161+...+ain6n) +(wi1x1+...+winxn) = bi,
.......................................................................
(an161+...+ann6n) +(wn1x1+...+wnnxn) = bn,
где мы пренебрегаем произведениями wij на 6i, из-за их малости. Теперь бi, можно получить из системы уравнений
(a1161+...+a1n6n) = b1 - (w11x1+...+w1nxn)
.......................................................................
(ai161+...+ain6n) = bi - (wi1x1+...+winxn) (8.29)
.......................................................................
(an161+...+ann6n) = bn - (wn1x1+...+wnnxn)
Рассмотрим четыре возможных случая:
1. Все aij известны точно, а все ci заданы с точностью g знаков после запятой, т. е.
wij= 0,
IbiI<=0.5*10^-d .
Тогда из (8.29) следует
a11611 +...+a1n61n<=0.5*10^-d
.....................................................
ai1611 +...+ain61n<=0.5*10^-d (8.30)
.....................................................
ai1611 +...+ain61n<=0.5*10^-d
Эти неравенства можно решить (ниже мы покажем как это делается).«Решение» неравенств производится одновременно с решением исходных уравнений (8.13), и в результате получается прямая оценка влияния погрешности правых частей уравнений результата.
Заметим сначала, что если набор значений A;(i= 1, 2, . . ., n) удовлетворяет неравенствам (8.30), где все правые части равны +1, то
можно написать
6i=(0.5*10^-g)di , i=1,2, ... ,n .
Таким образом, для оценки влияния погрешности коэффициентов необходимо одновременно с основной решать еще одну систему, где все правые части равны +1. Процесс ее решения тот же, что и для системы, с одной разницей: в правой части производится не вычитание, а сложение абсолютных значений. Причина этого видоизменения состоит в том, что формулы (8.30) представляют собой неравенства и, преобразовывая их, нельзя допускать уменьшения правых частей.
Рассмотрим пример. Возьмем уравнения (8.12) и предположим, что их правые части известны с точностью до двух знаков после запятой, т. е.
IbiI<=0.5*10^-2 .
При исключении x из второго уравнения получим
(2 - 2*1) х+(3 - 2*1)y+(1 - 2*l)z = 9 - 2*4/1+2*1
или y - z = 1/3 .
Число после вертикальной черты является соответствующим элементом дополнительного столбца. Заметим, что 2-1 было прибавлено, а не вычтено из правой части второго уравнения, так как при вычислении ошибки всегда необходимо складывать абсолютные значения. Аналогично преобразовываем третье уравнение
(1 - 1*1)х+(-1-1*1)y+(-1-1*1)z = -2 - 1*4/1+1*1
или -2y - 2z = - 6/2 .
Окончательная треугольная система уравнений запишется так:
x+y+z = 4/1 ,
y - z = 1/3 ,
- 4z = - 4/8 .
При решении этой треугольной системы с помощью обратной подстановки также необходимо складывать абсолютные значения. В результате получаем
dz = 2 ,
dy = 3 + dz = 5
dx = 1 + dy + dz = 8 ,
так что
6x <= 4*10^-2
6y <= 2.5*10^-2
6z <= 10^-2
где
x = 1
y = 2
z = 1 .
2. Все ci заданы точно, но aij заданы с точностью до g знаков после запятой, т. е.
IwijI <= 0.5*10^-g
bi = 0 .
Тогда из (8.29) и из неравенства треугольника следует
a1161 + ... +a1n6n <= 0.5*10^-g*(Ix1I+ ... +IxnI)
...................................................................................
ai161 + ... +ain6n <= 0.5*10^-g*(Ix1I+ ... +IxnI)
...................................................................................
an161 + ... +ann6n <= 0.5*10^-g*(Ix1I+ ... +IxnI)
И снова если di—решения системы при правых частях, равных +1, то можно написать
6i = 0.5*10^-g(Iõ1I+. ..+IxnI)di ..
В качестве примера рассмотрим снова систему (8.1: но на этот раз предположим, что коэффициенты в лев части известны с точностью до двух знаков после запятой . Тогда, учитывая, что
IxI + IyI + IzI = 4 ,
можно написать на основании формулы (8.31)
6x <= 1.6*10^-1
6y <= 10^-1
6z <= 4*10^-2
3. Предположим, что все aij и все ci известны с точностью до п знаков после запятой. Вычисления, аналогичные случаям 1 и 2, дают результаты
6i = 0.5*10^-g(1 + Ix1I + ... + IxnI)* di .
Если предположить, что все числа в системе (8.12) известны с точностью до двух знаков после запятой, то
6x <= 2*10^-1
6y <= 1.25*10^-1
6z <= 5*10^-2
4. Наконец, рассмотрим случай, когда aij и ci известны с точностью до t значащих цифр. Тогда
Iwij/aijI <= 5*10^-t и Ibi/ciI <= 5*10^-t .
Тогда вычисление максимально возможной ошибки приводит к следующему результату:
6i = k*di*5*10^-t ,
где
k = max (I ci I +Iai1x1I + . . . +IainxnI)
и отыскивается максимальное значение для всех i от 1 до n.
Снова обратимся к примеру (8.12) и предположим, что все числа известны с точностью до четырех значащих цифр, т.е. t = 4. Тогда
Ib1I+Ia11xI+Ia12yI+Ia13zI = 8 ,
Ib2I+Ia21xI+Ia22yI+Ia23zI = 18 ,
Ib3I+Ia31xI+Ia32yI+Ia33zI = 6 .
Максимальное значение равно 18, так что
6x <= 7.2*10^-2
6y <= 4.5*10^-2
6z <= 1.8*10^-2
Все вычисленные здесь верхние пределы для ошибок являются обычно слишком грубыми оценками; как правило, фактические ошибки много меньше этих верхних пределов. Можно найти более точные оценки верхних пределов — они окажутся меньше, чем найденные в этом параграфе, — но нахождение таких верхних пределов требует основательного знакомства с матричной алгеброй, в частности с правилами обращения матриц. Интересующимся читателям можно рекомендовать книгу Гильде-бранда, стр. 436—437.