繁体   English   中英

为什么 Scipy 和 EXCEL 中的 Bessel function 给出不同的结果?

[英]Why does Bessel function in Scipy and EXCEL give different results?

我尝试使用 Scipy 和 EXCEL 来计算贝塞尔 function,但它们给出了不同的结果。 你知道为什么吗? 提前致谢。

Python代码:

import scipy.special as ss


result = ss.k1(0.2155481626213)
print(result)

EXCEL(我使用的是今天版本的 OneDrive Excel web 应用程序)

=BESSELK(0,2155481626213; 1)

Python 的结果是4.405746469429914
Excel 的结果是4,405746474969860

由于结果的误差很小,数值计算的复杂性和误差传播会导致差异。

旁注:即使是 Wolfram Alpha 也有不同的值:4.405746469430。

正如@HubertusKaiser 所说; 误差非常小,我们可以将其分配给舍入误差/浮点数。

对于大多数计算机,这里有一个很好的解释为什么0.1+0.2.= 0.3 现在想象做很多那些“错误”的浮点计算,你最终会看到你看到的误差差异

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM