如何解决使用sympy积分sin和cos时,输出必须相同,但是cos积分给出的值为-16
使用sympy对sin和cos进行积分时,输出必须相同,但是cos的积分给出的数值为-16,在四舍五入时基本上为0。为什么给它如此低的cos值和直接为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),np.pi))) o/p: 0
解决方法
浮点数(基本上是十进制数)的精度有限,有时会导致一些奇怪的事情。
例如0.1 + 0.2
将给出0.30000000000000004
在您的示例中,e-16非常小,并且如您所说基本上为零,但是在计算中的某个位置可能存在余弦值的舍入误差,但是正弦波并非如此价值观。您可以为罪的积分尝试不同的范围,并可能发现同样的事情。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。