我正在寻求更多了解numpy浮点数的“resolution”参数(我猜任何计算机定义的浮点数)。
考虑以下脚本:
import numpy as np
a = np.finfo(10.1)
print a
我得到一个输出,其中包括打印输出:
precision=15 resolution= 1.0000000000000001e-15
max= 1.797(...)e+308
min= -max
numpy文档指定:“resolution :(适当类型的浮点数)此类型的近似小数分辨率,即10 ** - 精度。” source
分辨率是从精度得出的,但遗憾的是这个定义有点圆“precision(int):这种浮点精确的小数位数。” source
我知道浮点数只是实数的有限表示,因此它们的表示有误差,并且精度可能是这种偏差的量度。但实际上,如果我使用小于分辨率的数字执行操作,是否意味着我应该期望结果是错误的?如果给出精度,我怎样才能量化两个浮点数的误差?如果分辨率与1e-15一样“大”,为什么最小允许数量大约为1e-308?
提前谢谢!