如何将一个变量的函数与两个实例集成

时间:2015-11-15 23:06:33

标签: python scipy

我正在尝试集成以下功能但没有成功。我知道它不正确,因为当我检查Wolfram alpha上的值时它不匹配。它应该在0.7762左右

amp = 0.413
freq = 4
phi = 20 * np.pi / 180
offset = 0.587
lower_bound = 0
upper_bound = 2 * np.pi

def integrandC(theta, amp, freq, phi, offset):
    return (2/np.pi)*(amp * np.cos(freq*(theta - phi)) + offset) * np.cos(4*theta)

C = integrate.quad(integrandC, lower_bound, upper_bound, args=(amp, freq, phi, offset) )

print C[0] #gives 0.143433

我正在使用通过Anaconda安装的Scipy for python 2.x.x

我知道有很多文档参考集成函数,但只有一次在积分中提到的变量。在我的例子中,我有两次提到过。我怀疑的原因      np.cos(4*theta) 错误的根源是因为当我这样做时:

 def integrandA(theta, amp, freq, phi, offset):
     return (1/np.pi)*(amp * np.cos(freq*(theta - phi)) + offset)
 A = integrate.quad(integrandA, lower_bound, upper_bound, args=(amp, freq, phi, offset) )

我得到1.174的正确答案 为什么整合变量的第二个实例会导致问题?

0 个答案:

没有答案