Java - 具有正确舍入的自然日志

时间:2017-10-16 18:35:52

标签: java floating-accuracy

谢天谢地,documentation of the SE Math library对于舍入错误非常透明:

  

如果方法的错误总是小于0.5 ulps,则该方法始终返回最接近精确结果的浮点数;这样的方法是正确舍入的。正确舍入的方法通常是浮点近似的最佳方法;但是,对于许多浮点方法来说,正确舍入是不切实际的。相反,对于Math类,某些方法允许使用1或2 ulps的较大误差范围。非正式地,当1 ulp错误界限时,如果确切结果是可表示的数字,则应将精确结果作为计算结果返回;否则,可以返回包含确切结果的两个浮点值中的任何一个。

每个浮点方法都提到了ulps中的错误界限。特别是Math.log()

  

返回double值的自然对数(基数e)...计算结果必须在精确结果的1 ulp

因此,Math.log()可能会在错误的方向上舍入到最接近的可表示值。

我需要正确舍入实现base- e 日志。我在哪里找到一个?

0 个答案:

没有答案