Floating point 相对误差和摆动
以下内容的完整上下文见的第8页。在下文中,说明“一般来说,当基准为b时,以ulps表示的固定相对误差可能会摆动高达b的系数。” 有人能详细证明这一点吗?“以ulps表示的固定相对误差可以摆动高达b的因数”到底意味着什么;如果相对误差是固定的,那么它如何摆动或改变 相对误差总是以e为界,称为机器ε 来说明两者之间的区别 ULPS和相对误差,考虑真实 数字x=12.35。它是近似的 乘=1.24 x 10^1。误差为0.5 ulps;这个 相对误差为0.8e。下一步考虑 计算 8x。精确值为8 x= 98.8,而计算值为8 =9.92 x 10^1。错误现在为4.0 ulps, 但是相对的 误差仍然是0.8 e。这个 在ulps中测量的误差为8倍 更大,即使相对误差为 相同的。一般来说,当基数为b时, 固定亲属 以ulps表示的错误 可以摆动高达b的系数。相反,如式(2)所示,固定误差为 1/2 ulps会导致相对误差 可以摆动bFloating point 相对误差和摆动,floating-point,Floating Point,以下内容的完整上下文见的第8页。在下文中,说明“一般来说,当基准为b时,以ulps表示的固定相对误差可能会摆动高达b的系数。” 有人能详细证明这一点吗?“以ulps表示的固定相对误差可以摆动高达b的因数”到底意味着什么;如果相对误差是固定的,那么它如何摆动或改变 相对误差总是以e为界,称为机器ε 来说明两者之间的区别 ULPS和相对误差,考虑真实 数字x=12.35。它是近似的 乘=1.24 x 10^1。误差为0.5 ulps;这个 相对误差为0.8e。下一步考虑 计算 8x。精确值为8 x
它与您在“一般情况下,当基准为b时,以ulps表示的固定相对误差可能会摆动高达b的因数”之前的段落中给出的引用在同一页上进行了演示 该段解释了从1.0000…0•be到d.dddd…d•be的数字,其中d是数字b-1,具有相同的ULP,因为ULP是最后一个数字的值,最后一个数字的值由b的指数决定(以及有效位中的位数,对于格式是固定的) 这些数字跨越了(几乎)b的比率,因为d.dddd…d几乎是b,所以d.dddd…d/1几乎是b。但是他们有相同的ULP。因此,一个ULP相对与该数字的比值为b 2013年10月30日,编辑: “以ulps表示的固定相对误差可以摆动高达b的因数”到底意味着什么;如果相对误差是固定的,那么它如何摆动或改变 该错误被称为固定数量的ULP。但是ULP的值不是固定的或恒定的,而是相对于浮点值而言真正固定的或恒定的 这里只是一个语言问题。将ULP称为“固定相对误差”是不准确的。然而,人们有时在ULP中表示错误界限或错误量,因为浮点的本质是量化值,而这些量子是ULP ULP大约是一个相对误差。在浮点格式的整个范围内,它保持在相同的范围内。考虑三位十进制格式:
- 在1.00到9.99之间的时间间隔内,ULP的绝对值为.005。其值相对于区间中的数字的范围为.005到(几乎为.0005)
- 在1000000到9990000之间,ULP的绝对值为5000。其值相对于区间中的数字的范围为.005到(几乎为.0005)
- 在1.00•10-100到9.99•10-100的时间间隔内,ULP的绝对值为0.005•10-100。其值相对于区间中的数字的范围为.005到(几乎为.0005)
- 当您使用浮点运算并计算或推导可能发生的错误的证明时,您会发现自己以ULP为单位表示错误,因为浮点格式的量化会导致边界以ULP或半ULP为单位
- 对于浮点值x,ULP x除以x的值随x在浮点格式的单个指数间隔内的变化而变化。当指数改变时,值ULP(x)/x重置