scipy算积分有bug

import scipy as sp
import numpy as np
from sympy import *
import matplotlib.pyplot as plt
def fun(x):
    return [np.sin(el)/el for el in x]
end = 100
trap = 10000
x = np.linspace(0.001, end, trap)

y = fun(x)

#分割近似求积分
print sum(y)*end/trap*2

print scipy.integrate.quad(lambda x:np.sin(x)/x, 0.001,np.inf)
print scipy.integrate.quad(lambda x:np.exp(-x), 0,np.inf)
z = symbols('z')
print sympy.integrate(sin(z)/z, (z, 0, oo))

plt.plot(x,y)
plt.show()

scipy sin(x)/x算出来积分误差很大,即使近似值已经很接近pi了,注意我乘2了

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 定点小数运算 来自:http://www.eepw.com.cn/article/17893.htm 在DSP世界...
    郝宇峰阅读 13,238评论 0 2
  • PID控制器是一种常用的控制技术,常用于多种机械装置(如车辆、机器人、火箭)中。用数学方式来描述PID控制器是非常...
    云淡天空阅读 11,562评论 0 11
  • Scipy scipy包含致力于科学计算中常见问题的各个工具箱。它的不同子模块相应于不同的应用。像插值,积分,优化...
    Aieru阅读 34,915评论 3 59
  • 独旅.....从想念出发....... 一盏明灯下,请容许我脆弱,不坚强…… 真的好想念.......好想念......
    顾姐姐阅读 1,801评论 0 0
  • 家教叔叔如果坠入编程的状态,那是很恐怖的。 一年5.20,别人家男朋友都是鲜花、口红、红包轮番上阵,他这一点动静没...
    家教叔叔的小九九阅读 1,846评论 0 1

友情链接更多精彩内容