使用symphy积分sin和cos时,输出必须相同,但cos的积分值为16阶

2024-06-01 05:13:07 发布

您现在位置:Python中文网/ 问答频道 /正文

当使用symphy积分sin和cos时,输出必须相同,但cos的积分给出的值为-16阶,四舍五入后基本上为0。为什么cos的值这么低,sin的值直接为0

i/p: f=(sp.integrate(sp.cos(x),(x,-np.pi,np.pi)))
o/p: 2.44929359829471e-16
i/p: f=(sp.integrate(sp.sin(x),(x,-np.pi,np.pi)))
o/p: 0

Tags: nppisincosspintegratesymphy
1条回答
网友
1楼 · 发布于 2024-06-01 05:13:07

浮点数(基本上是十进制数)的精度有限,有时会导致一些奇怪的事情

例如0.1 + 0.2将给出0.30000000000000004

在您的示例中,e-16非常小,基本上如您所说为零,但在计算过程中,余弦值可能存在舍入误差,但正弦值恰好不是这样。你可以尝试不同的sin积分范围,可能会发现同样的事情发生

相关问题 更多 >