在Python中使用dblquad集成函数的正弦

时间:2019-01-03 14:49:14

标签: python-3.x numpy

我想使用sin(f(x,y,a,b)) dx dy集成Int dblquad,其中a和b是两个参数。

下面显示了一个示例,其中x和y都从0到10,并且a = 0,b = 1。

dblquad(f*np.sin(f),0,10,0,10,args=(0,1))

但是,这将导致输出

Traceback (most recent call last):
  File "./update.py", line 60, in <module>
    dblquad(f*np.sin(f),0,10,0,10,args=(0,1))
AttributeError: 'function' object has no attribute 'sin'

为什么会这样?尝试像这样的积分时,将np.sin应用于fnp.log得到相同的结果)是否存在问题?

使用dblquad进行此操作的正确方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

您的代码有两个问题:

首先是python无法计算函数的正弦,它需要计算数字的正弦(当然这可以是其他函数的结果):这就是您的AttributeError

第二个是dblquad中的语法错误。根据{{​​1}} documentation

,根据y设置x限制

工作示例:

dblquad