воскресенье, 16 июня 2019 г.

1

Пример работы команды
Этап 1. "Ахиллесова пята"
Нужно проверить равенство
 Проблема кроется в округлении, при больших числах происходит накопление при умножении и равенства не происходит. http://ru.exploringcomputerarithmetic.org/articles/fp/IEEE-754/basics/unexpected-effects/

Принципиальной особенностью компьютерной арифметики, вызванной дискретностью множества машинных чисел и наличием округлений, является невыполнение некоторых общеизвестных свойств вещественной арифметики. Например, сложение чисел с плавающей точкой неассоциативно, т. е. в общем случае неверно, что (a + b) + c = a + (b + c). В арифметике  двойной точности при округлении «к ближайшему»

   Левая часть этого соотношения равна 1, тогда как правая — ближайшему к единице справа машинно-представимому числу. Эта ситуация имеет место в любых приближённых вычислениях, которые сопровождаются округлениями, а не только при расчётах.

Ещё один аналогичный по духу пример пример остутствия ассоциативности в компьютерной арифметике (1020 − 1020) + 1 6= 1020 + (−1020 + 1). Из отсутствия ассоциативности следует, что результат суммирования длинных сумм вида x1+x2+. . .+xn зависит от порядка, в котором выполняется попарное суммирование слагаемых, или, как говорят, от расстановки скобок в сумме. Каким образом следует организовывать такое суммирование в компьютерной арифметике, чтобы получать наиболее точные результаты? Ответ на этот вопрос существенно зависит от значений слагаемых, но в случае суммирования уменьшающихся по абсолютной величине величин суммировать нужно «с конца». Именно так, к примеру, лучше всего находить суммы большинства рядов.http://www.ict.nsc.ru/matmod/files/textbooks/SharyNuMeth.pdf

Комментариев нет:

Отправить комментарий