учет погрешностей вычислений по заданной формуле

Приложение А. Погрешности вычислений

Абсолютная и относительная погрешности

Точность полученного в результате вычисления результата определяется погрешностью вычислений. Различают два вида погрешностей – абсолютную и относительную.

Абсолютная погрешность некоторого числа равна разности между его истинным значением и приближенным значением, полученным в результате вычисления или измерения:

(А.1)

где а – приближенное значение числа х.

Относительная погрешность – это отношение абсолютной погрешности к приближенному значению числа:

(А.2)

Истинное значение величины х обычно неизвестно. Имеется лишь приближенное значение а и нужно найти его предельную погрешность . В дальнейшем значение принимается в качестве абсолютной погрешности приближенного числа а. Тогда истинное значение х находится в интервале .

Источники погрешностей

Рассмотрим различные причины возникновения погрешностей.

Математическая модель задачи является неточной

Погрешность возникает из-за того, что сам численный метод или математическая модель является лишь приближением к точному методу (например, дифференцирование). Кроме того, любая математическая модель или метод могут внести существенные погрешности, если в ней не учтены какие-то особенности рассматриваемой задачи. Модель может прекрасно работать в одних условиях и быть совершенно неприемлемой в других. Такую погрешность называют также методической. Она всегда имеет место, даже при абсолютно точных данных и абсолютно точных вычислениях. В большинстве случаев погрешность численного метода можно уменьшить до требуемого значения за счет изменения параметров метода (например, уменьшением шага дискретизации, или увеличением количества итераций).

Ошибки в исходных данных

Исходные данные задачи часто являются основным источником погрешностей. Ошибки такого типа неизбежны и проявляются в любых реальных задачах, поскольку любое измерение может быть проведено с только какой-то предельной точностью. Вместе с погрешностями, вносимыми математической моделью, их называют неустранимыми погрешностями, поскольку они не могут быть уменьшены ни до начала решения задачи, ни в процессе ее решения.

Следует стремиться к тому, чтобы все исходные данные были примерно одинаковой точности. Сильное уточнение одних исходных данных при наличии больших погрешностей в других не приводит к повышению точности конечных результатов. Если какие-то отдельные точки данных (измерения) явно ошибочные, их можно исключить из вычислений.

Вычислительные ошибки (ошибки округления)

Ошибки этого типа проявляются из-за дискретной (а не непрерывной) формы представления величин в компьютере. Вычислительные ошибки можно свести к минимуму продуманно организовывая алгоритмы.

Вычислительные ошибки

Рассмотрим подробнее вычислительные ошибки. Допустим, исходные данные не имеют погрешности, но поскольку место в памяти компьютера, отведенное на хранение чисел, ограничено, и соответственно ограничена точность представления чисел, возникновение вычислительных ошибок неизбежно.

Представление чисел с плавающей точкой

Для хранения целых чисел (int, long, unsigned int и т.д.) обычно отводится 4 байта памяти, что позволяет представлять целые числа, находящиеся примерно в диапазоне от .

В вычислениях чаще используются вещественные числа (float, double). Такие числа представляются в компьютере в форме с плавающей точкой, и хранятся в логарифмическом виде – мантисса и порядок:

(А.3)

где m – мантисса, p – порядок, а – основание степени.

Например, число 273.9 можно представить в виде или в компьютерном представлении 2.739E+02.

В таблице А.1 приводится диапазон допустимых значений и другие параметры для чисел с плавающей точкой одинарной (float) и двойной (double) точности.

Точность Одинарная Двойная
Размер (байты) 4 8
Наименьшее значение 1.2·10 −38 2.3·10 −308
Наибольшее значение 3.4×10 +38 1.7×10 +308
Размеры степени и мантиссы (биты) 8-23 11-52

Таблица A.1. Диапазон чисел, представимых в формате с плавающей точкой

Для чисел с плавающей точкой существует понятие машинного эпсилон – наименьшего положительного число ε такого, что . Например, для числа с одинарной точностью 1 + 0.00000001 = 1. Для одинарной точности , а для двойной точности .

Погрешность округления

При вычислениях с помощью компьютера неизбежны погрешности округлений, связанные с ограниченностью хранимых разрядов мантиссы. Для приближенного числа, полученного в результате округления, абсолютная погрешность принимается равной половине единицы последнего разряда числа. Например, значение могло быть получено округлением чисел 0.73441, 0.73353 и др. При этом . При простом отбрасывании лишних разрядов эта погрешность увеличивается вдвое.

Перевод чисел из одной системы счисления в другую также может быть источником погрешности из-за того, что основание одной системы счисления не является степенью основания другой (например, 10 и 2). Это может привести к тому, что в новой системе счисления число невозможно представить абсолютно точно, например:

Погрешность арифметических действий над приближенными числами

При выполнении операций над приближенными числами можно оценить предельную погрешность результата в зависимости от выполняемой операции. При умножении или делении чисел друг на друга их относительные погрешности складываются:

, (А.4)

При возведении в степень приближенного числа его относительная погрешность умножается на показатель степени:

(А.5)

При сложении или вычитании чисел их абсолютные погрешности складываются:

(А.6)

Относительная погрешность суммы положительных слагаемых вычисляется как:

. (А.7)

Отсюда следует, что относительная погрешность суммы нескольких чисел одного и того же знака, заключена между наименьшей и наибольшей из относительных погрешностей слагаемых:

. (А.8)

На практике для оценки погрешности при сложении чисел обычно используют максимальную погрешность .

При сложении погрешность будет сильно завесить от абсолютных величин складываемых чисел. Рассмотрим пример сложения двух чисел с одинаковым количеством значащих цифр, но разных по абсолютному значению:

1234 + 0.005678 = 1234.00005678

или в компьютерном представлении:

1.234Е+03 + 5.678Е-03 = 1.234005678Е+03

После сложения количество значащих цифр равно 10. Число с одинарной точностью (float) позволяет хранить только 8 значащих цифр, то есть на самом деле число будет равно 1.2340056Е+03. Две значащие цифры потерялись в процессе сложения. Потеря точности здесь возникает из-за того, что при прибавлении к большому числу малых чисел результат сложения выходит за пределы точности при округлении. Для того чтобы уменьшить погрешность вычислений, нужно складывать числа в порядке возрастания их абсолютной величины. Таким образом можно минимизировать абсолютную величину промежуточной погрешности при каждом сложении.

Рассмотрим теперь вычитание чисел (сложение чисел разного знака, или вычитание чисел одного знака). В соответствии с выражением (А.7) относительная погрешность может быть очень большой в случае, если числа близки между собой, так как даже при малых погрешностях результат их сложения в знаменателе может быть очень малым. Чтобы уменьшить погрешность при вычитании, необходимо строить вычислительные алгоритмы таким образом, чтобы избегать вычитания близких чисел.

Таким образом, можно сделать вывод, что сложение и вычисление являются плохо обусловленными (неустойчивыми) операторами, так как при некоторых данных даже небольшая погрешность в исходных данных может привести к большой погрешности результата. Уменьшить погрешность можно за счет правильной последовательности операций. Из-за погрешности округления в машинной арифметике важен порядок выполнения операций, и известные из алгебры законы коммутативности (и дистрибутивности) здесь не всегда выполняются.

Источник

§1. Учет погрешностей вычислений.

При решении математических задач могут возникнуть погрешности по различным причинам:

При составлении математической модели физического процесса или явления приходится принимать условия, упрощающие постановку задачи. Поэтому математическая модель не отражает реальный процесс, а дает его идеализированную картину. Погрешность, возникающая при этом, называется погрешностью постановки задачи.

Часто приходится для решения задачи применять приближенный метод (интеграл заменяют квадратурной суммой, производную заменяют разностью, функцию – многочленом). Погрешность, возникающая при этом, называется погрешностью метода.

Часто исходные данные заданы не точно, а приближенно. При выполнении вычислений погрешность исходных данных в некоторой степени переходит в погрешность результата. Такая погрешность называется погрешностью действий.

Погрешность, возникающая при округлении бесконечных и конечных десятичных чисел, имеющих большее число десятичных знаков, чем надо в округлении, называется погрешностью округления.

Определение. Пусть х – некоторое число, число а называется его приближенным значением, если а в определенном смысле мало отличается от х и заменяет х в вычислениях, .

Определение. Погрешностью приближенного значения а числа х называется разность , а модуль этой погрешностью называется абсолютной погрешностью.

Если , то а взято с недостатком.

Если , то а взято с избытком.

Определение. Границей погрешности приближенного значения а числа х называется всякое неотрицательное число , которое не меньше модуля погрешности: .

Пример. Пусть а=0,273 – приближенное значение х с точность до 0,001. Указать границы, в которых заключается х.

При округлении чисел считают, что границы погрешности округления равна половине единицы округляемого разряда:

, α – порядок округления разряда.

Определение. Относительной погрешностью приближенного значения а числа х называется отношение

.

Пример. Округлить до десятых число 27,52 и найти погрешность и относительную погрешность округления:

,

,

.

Также как и абсолютная погрешность относительная погрешность не всегда может быть вычислена и приходится оценивать ее модуль. Модуль относительной погрешности выражается в процентах. Чем меньше модуль относительной погрешности, тем выше качество приближения.

Определение. Границей относительной погрешности приближенного значения а числа х называется всякое неотрицательное число , которое не меньше модуля относительной погрешности: .

Установим связь между границами погрешностей абсолютной и относительной:

— граница относительной погрешности;

— граница абсолютной погрешности.

.

§2. Оценка погрешностей результатов действий над приближенными значениями чисел. (Строгий учет погрешности)

Пусть , где – число с заданными своими приближениями с точностью до : .

Обозначим через .

, где — граница погрешности суммы приближенного значения .

Утверждение 1. Сумма границ погрешностей приближенных слагаемых является границей погрешности их алгебраической суммы.

Доказательство: .

Утверждение 2. Среди границ относительной погрешности суммы приближенных слагаемых существует такая, которая не превосходит наибольшей из границ относительной погрешности слагаемых:

Утверждение 3. Сумма границ относительных погрешностей сомножителей является границей относительной погрешности их произведения:

.

Следствие 1. При умножении приближенных значений числа на точный множитель к, граница относительной погрешности не меняется, а граница абсолютной погрешности увеличивается в раз.

Следствие 2. Произведение границы относительной погрешности приближенного значения а числа х на является границей относительной погрешности результата возведения числа а в целую положительную степень n:

.

Следствие 3. Частное границы относительной погрешности приближенного значения а числа х и n является границей относительной погрешности корня n-й степени из а:

.

Следствие 4. Сумма границ относительных погрешностей приближенных значений делимого и делителя является границей относительной погрешности частного.

Источник

Лекционный материал «Погрешности арифметических действий» по дисциплине ОП.10.Численные методы

Ищем педагогов в команду «Инфоурок»

БИК Курс лекций по дисциплине ОП.10.Численные методы

Учет погрешности в арифметических действиях

Правила записи приближенных чисел

Формулы приближенных вычислений

1. Учет погрешности в арифметических действиях

и, следовательно, в качестве следует взять

Таким образом, при сложении и вычитании двух приближенных чисел их предельные абсолютные погрешности складываются.

то есть, абсолютные погрешности произведения двух приближенных чисел a * и b * удовлетворяет неравенству

.

Аналогично, при условии, что и, следовательно, b 0, получаем

или

Относительные погрешности произведения, частного:

,

.

В качестве предельных абсолютные погрешностей и предельных относительных погрешностей можно взять следующие величины: ,

, , .

Итак, при сложении и вычитании приближенных чисел складывают предельные абсолютные погрешности, а при умножении и делении приближенных чисел складывают их предельные относительные погрешности.

Пример 1. Вычислите сумму и разность приближённых чисел 0,123 и 0,526.

Решение

Сложение даёт 0,649. Абсолютная погрешность каждого слагаемого равна 0,0005, значит, абсолютная погрешность суммы 2 ∙ 0,0005 = 0,001. Следовательно, в найденной сумме возможна ошибка на 1 единицу в третьем знаке после запятой. Вычитание данных чисел даёт: 0,123 – 0,526 = –0,403. Абсолютная погрешность разности также равна 0,001.

Относительные погрешности при сложении и вычитании складывать нельзя. Рассмотрим поучительный пример.

Измерения цилиндрической полой изнутри трубы показали, что ее внешний радиус равен 100 см, а внутренний радиус – 98 см. Чему равна толщина стенок трубы?

Решение

Если R1 = 100 см, R2 = 98 см, то h = 2 см.

Абсолютные погрешности при определении радиусов одинаковы и равны Δ (R1) = Δ (R2) = 0,5 см (если в условии задачи не уточнено, то абсолютная погрешность измерения принимается равной половине последнего знака величины). Абсолютная погрешность расчёта толщины стенки определяется формулой Δ (h) = Δ (R1) + Δ (R2) = 1 см.

Рассчитаем теперь относительные погрешности всех трёх величин:

Если оба радиуса были измерены с погрешностью порядка 0,5 %, то погрешность при вычислении их разности – толщины стенок трубы – возросла в 100 раз и составила 50 %!

2. Правила записи приближенных чисел

Пусть приближенное число a * задано в виде конечной позиционной записи: или a * =±, где j десятичные цифры.

Первая слева цифра данного числа, отличная от нуля, и все расположенные за ней цифры называются значащими.

Например, числа 25,047 и –0,00259 имеют соответственно 5 и 3 значащих цифры.

Цифра a j называется верной, если , т.е. абсолютная погрешность числа a * не превосходит одной единицы соответствующего разряда десятичного числа. ( a * =0,03045 ( a * )=0,000003).

Если приближенное число записывается без указания его абсолютной, точнее говоря, предельной абсолютной погрешности, то выписываются только его верные цифры. При этом верные нули на правом конце не отбрасываются.

При этом величина a * выписывается с одной или двумя значащими цифрами, а младший разряд в a * соответствует младшему разряду в ( a * ). Например: a =2,730±0,017.

Число, для которого указывают допустимое отклонение, должно иметь последнюю значащую цифру того же разряда, как и последняя значащая цифра отклонения.

а) Правильно: 17,0 + 0,2. Неправильно: 17 + 0,2 или 17,00 + 0,2.

б) Правильно: 12,13 + 0,17. Неправильно: 12,13 + 0,2.

в) Правильно: 46,40 + 0,15. Неправильно: 46,4 + 0,15 или 46,402 + 0,15.

При вычислениях часто возникает необходимость округления чисел, т.е. представления их с меньшим числом разрядов.

Правило округления чисел: Если в старшем из отбрасываемых разрядов стоит цифра меньше пяти, то содержимое сохраняемых разрядов числа не изменяется. В противном случае в младший разряд добавляется единица. Это простое правило применяется и в ЭВМ.

При промежуточных вычислениях целесообразно, чтобы используемые числа содержали на одну значащую цифру больше, чем будет в окончательном результате. Это позволяет уменьшить погрешность от округления.

Пример 5. Взвесить деталь, масса которой равна 54,12705г., на весах с ценой деления шкалы 0,1г., получили приближенное значение массы 54,1. Найти абсолютную и относительную погрешности.

(а * )=|54,12705-54,1|=0,02705

(а * )=*100%=0,05%

var a, a1, abspogr, otnpogr:real;

writeln (abspogr:1:5, otnpogr:1:5); readkey;

Пример 6. Найти приближенное значение числа а с точностью до 0,01, а=2471,05624, а * =2471,06.

(а * )==0,00376 * =2471,06 – приближенное значение числа.

3. Формулы приближенных вычислений

, при х00, где = f ’( x 0)

( x+x) k x л + kx k-1 x

f(x) f(x 0 )+ f’(x 0 ) x

a=

а * =1+0,03=1

a=

а * =6+1=6

а * =3 200 +200*3 199 (-0,02)=3 200 *

Источник

Операционные системы и программное обеспечение