Загрузил Aleksej K.

Погрешность численных расчетов: источники, классификация и правила

1 Погрешность результатов численных расчетов
1.1 Источники и классификация погрешностей
Погрешность
численных
расчетов
обуславливается
следующими
причинами:
1) математическое описание задачи является неточным: неточно заданы
исходные данные задачи, либо используются приближенные расчетные формулы;
2) применяемый метод решения не является точным: получение точного
решения математической задачи требует неограниченного или неприемлемо
большого числа арифметических операций, поэтому вместо точного решения
задачи приходится прибегать к приближенному;
3) при вводе/выводе данных в ЭВМ и при выполнении арифметических
операций
производятся
округления,
первое
связано
с
особенностями
представления данных для пользователя, второе с особенностями архитектуры
процессора.
Погрешности, соответствующие этим причинам, называют:
1) неустранимой погрешностью;
2) погрешностью метода;
3) вычислительной погрешностью.
Неустранимая погрешность вызвана следующими причинами:
a) неточность задания числовых данных, входящих в математическое
описание задачи;
b) несоответствие
математического
описания
задачи
реальности
(погрешность математической модели).
Как правило, для каждого типа погрешностей заранее известна ее
абсолютная либо относительная величина, зная которую можно рассчитать
общую погрешность расчета.
Дадим пояснение этих определений. Пусть имеется реальный маятник,
совершающий затухающие колебания, начинающий движение в момент t = t0.
Требуется найти угол отклонения φ от вертикали в момент t1. Движение маятника
мы можем описать следующим дифференциальным уравнением:
1
d2 φ
dφ
l 2 + g sin(φ)+ μ
=0
dt
dt
где l – длина маятника, g – ускорение силы тяжести, μ – коэффициент
трения.
К погрешности исходных данных относятся погрешности задания l, g и μ,
которые заданы с некоторой точностью.
К погрешности модели относится принятие линейной зависимости силы
трения от скорости движения (третье слагаемое уравнения), что лишь
приближенно описывает реальную зависимость.
К погрешности метода относится погрешность численного решения
дифференциального уравнения.
Вычислительной погрешностью будет погрешность округления чисел в
памяти ЭВМ.
На современном уровне развития ЭВМ вычислительная погрешность
является самой малой.
Погрешность метода пытаются установить такой, чтобы она была ниже
неустранимой погрешности, но выше погрешности вычислений.
1.2 Формы записи погрешностей
Пусть
дана
некоторая
величина,
точное
значение
которой
A,
и
приближенной значение a. Тогда можно ввести 2 типа записи погрешностей.
Абсолютная, имеющая размерность величины A, и вычисляемая по
формуле:
Δ≥∣A−a∣
(1.1)
И относительная, безразмерная, либо в процентах:
A−a
⋅100 %
либо ε=∣
∣ A−a
∣
a
a ∣
ε=
(1.2)
Точное значение величины записывается через приближенное по формулам:
A=a± Δ
(1.3)
A=a⋅( 1±ε )
(1.4)
2
1.3 Правила расчета погрешности округления
1.3.1 Сложение и вычитание приближенных чисел
Пусть даны приближенные значения (a и b) величин (A и B) известных с
абсолютными погрешностями ±Δa и ±Δb. Знаки этих погрешностей нам
неизвестны, следовательно для обеспечения достоверности конечного результата
мы должны взять наихудший случай, когда погрешности складываются. Таким
образом формулируются следующие правила:
1) абсолютная погрешность суммы приближенных чисел равна сумме
абсолютных погрешностей слагаемых;
2) абсолютная погрешность разности приближенных чисел равна сумме
абсолютных погрешностей слагаемых.
Относительная погрешность суммы приближенных чисел a и b тогда равна:
∣
ε a+b⩽
Δa + Δb
a+b
∣
(1.5)
Относительная погрешность разности приближенных чисел:
∣
ε a−b⩽
∣
Δ a+ Δb
a−b
(1.6)
Для сложения и вычитания приближенных чисел справедливы следующие
правила:
1) относительная погрешность суммы слагаемых одного знака заключена
между наименьшей и наибольшей относительными погрешностями слагаемых:
ε min⩽ε a+ b⩽ε mzx .
2) для разности двух приближенных чисел одного знака величина
относительной погрешности может быть сколь угодно большой.
1.3.2 Умножение и деление приближенных чисел
Для произведения двух приближенных чисел справедливо правило:
c=C ( 1±ε ab )=a b= A B ( 1±ε a )( 1±ε b )= A B ( 1±(ε a +ε b )+ε a⋅εb )
(1.7)
Т.к. относительная погрешность всегда меньше единицы, то последнее
слагаемое в формуле (1.7) всегда меньше остальных, и если хотя бы одна из
относительных погрешностей достаточно мала, то последним слагаемым можно
пренебречь.
3
В этом случае можно сформулировать следующее правило: относительная
погрешность произведения приближенных чисел равна сумме относительных
погрешностей множителей δ ab=δ a+δ b .
Так как деление на число b равнозначно умножению на 1/b, то справедливо
утверждение: относительная погрешность частного приближенных чисел равна
сумме относительных погрешностей делимого и делителя.
Следовательно,
необходимо
при
принимать
умножении
во
и
делении
внимание
приближенных
количество
значащих
чисел
цифр,
характеризующих относительную точность числа, а не количество десятичных
знаков, обуславливающих его абсолютную погрешность.
Совершенно очевидно, что при большом количестве действий такого сорта
правила нельзя считать удовлетворительными, так как погрешности будут иметь
разные знаки и компенсировать друг друга. Статистическая оценка показывает,
что при N одинаковых действиях среднее значение суммарной ошибки больше
единичной в
√ N раз, если нет систематических причин для накопления
погрешности. Систематические причины возникают, если, например в алгоритме
вычитаются близкие по величине числа.
При любых расчетах надо устанавливать такую точность вычислений,
чтобы погрешность округления была существенно меньше всех остальных
погрешностей.
1.4 Особенности вычислительной погрешности
Ограничение на порядки чисел в ЭВМ иногда приводит к прекращению
вычислений; в других случаях относительно небольшая разрядность чисел в ЭВМ
приводит
к
недопустимому
искажению
результата
вычислительной
погрешностью. Такие алгоритмы, где вследствие ограниченности порядка числа
или
малой
разрядности
возникают
подобные
эффекты,
называют
«неустойчивыми».
Построение
«устойчивых»
алгоритмов, при использовании
которых
искажение окончательного результата вычислительной погрешностью находится
в допустимых пределах, составляют существенную часть теории численных
методов.
4
Рассмотрим пример, показывающий, что повышение точности иногда
может быть достигнуто за счет несложного алгебраического преобразования.
Пусть
отыскивается
наименьший
корень
квадратного
уравнения
y2 + 140 y + 1 = 0. Для определенности условимся о следующих правилах
округления. Вычисления производятся в десятичной системе счисления, причем в
мантиссе числа после округлений удерживается 4 разряда. Имеем:
y=70− √ 4899 ,
√ 4899≈69.992856778
после округления получаем:
√ 4899≈69.99 , y≈70−69.99=0.01
То же самое значение можно, «избавившись от иррациональности в
числителе», представить в виде:
y=
1
70+ √ 4899
Последовательно производя вычисления, получаем:
70+69.99≈140.0
1/ 140.0=0.00714285
y=0.007143
Производя вычисления с дополнительными разрядами, можно проверить,
что в обоих случаях все значащие цифры результатов верные; однако во втором
случае точность результата существенно выше. Дело в том, что в первом случае
пришлось вычитать близкие большие числа; так как эти числа были большие, то
они были округлены с большой абсолютной погрешностью, в результате и ответ
получился с большой абсолютной погрешностью.
Здесь имеет место явление потери значащих цифр при вычитании близких
величин; это явление, например, довольно часто приводит к существенному
искажению результата при решении систем линейных алгебраических уравнений.
Список литературы
1. Бахвалов Н.С. Численные методы / Н.С. Бахвалов, Н.П. Жидков, Г.М.
Кобельков. – М.: Бином, 2004. – 634 с.
5