使用 sympy 对 sin 和 cos 进行积分时,输出必须相同,但 cos 的积分给出 -16 阶值

While integrating sin and cos using sympy the output must be same, but integration of cos gives a value of order -16

虽然使用 sympy 对 sin 和 cos 进行积分,但输出必须相同,但 cos 的积分给出了 -16 阶的值,四舍五入后基本上为 0。为什么它给出如此低的 cos 值和直接 0 的 sin 值?

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

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

例如0.1 + 0.2会给出0.30000000000000004

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