如何在Python中集成信号

1 投票
1 回答
7448 浏览
提问于 2025-04-17 14:56

我需要把一个信号整合到我指定的范围内。

我使用了这个方法:

def integrand(x,y):
    return y[x]

result=scipy.integrate.quad(integrand,t0,t1,args=(y))*0.2E-6

y是一个包含2500个点的数组,这些点的时间间隔是500微秒。比如说,t0是700,t1是1500。

0.2E-6是信号中两个值之间的步长。

这样做对吗?

1 个回答

2

其实不是这样。要对一个取样的函数进行积分,你可以使用 scipy.integrate.simps 或者 scipy.integrate.trapz 这两个工具:

result_simps = scipy.integrate.simps(y[t0:t1+1], dx=0.2E-6)
result_trapz = scipy.integrate.trapz(y[t0:t1+1], dx=0.2E-6)

撰写回答