Что именно является параметром «разрешения» numpy float
Я ищу больше понимания о параметре «разрешения» для numpy float (я думаю, что любой компьютер определил float по этому вопросу).
Рассмотрим следующий скрипт:
import numpy as np
a = np.finfo(10.1)
print a
Я получаю вывод, который среди прочего распечатывает:
precision=15 resolution= 1.0000000000000001e-15
max= 1.797(...)e+308
min= -max
В пустой документации указывается: «resolution: (число с плавающей запятой соответствующего типа) Приблизительное десятичное разрешение этого типа, т. Е. 10 ** - точность».источник
разрешение получается из точности, но, к сожалению, это определение является несколько круглым: «точность (целое число): приблизительное число десятичных цифр, для которых этот тип с плавающей точкой является точным».источник
Я понимаю, что числа с плавающей точкой являются просто конечными представлениями действительных чисел и, следовательно, имеют ошибку в их представлении, и что точность, вероятно, является мерой этого отклонения. Но практически означает ли это, что я должен ожидать, что результаты будут ошибочными, если я буду выполнять операции с числами, меньшими, чем разрешение? Как я могу количественно оценить ошибку, скажем, сложение двух чисел с плавающей запятой, учитывая их точность? Если разрешение столь же велико, как 1e-15, почему наименьшее допустимое число должно быть порядка 1e-308?
Заранее спасибо!