【发布时间】:2017-08-11 20:31:51
【问题描述】:
我正在尝试让一个 lambda 函数同时与 scipy 的 quad 和 dblquad 命令一起使用。在我正在做的事情的上下文中,积分将始终是单个变量,但具有变量界限。
这是我得到的:
import scipy.integrate as inte
df1 = lambda x: x
df2 = lambda x,y: x
inte.quad(df1,0,10)[0]
inte.dblquad(df2,0,10,lambda x: 0, lambda x: x)[0]
在上面的代码中,df1 和 df2 实际上是相同的东西,但是要使代码正常工作,需要表面的第二个参数。理想情况下,我希望 quad 和 dblquad 都只使用一个 lambda 函数,但无论如何我都不知道要让它工作。有人知道解决方案吗?
【问题讨论】:
-
嗨。我意识到这个问题已经有几年了,但我也有同样的问题。您是否找到了解决方案,如何对具有单个变量的函数执行双重积分(两次积分)?
-
嘿,我从来没有真正找到一个好的答案,我不认为。如果我没记错的话,我创建了一个函数,它有一个
try, catch块,首先使用单个变量运行该函数,然后如果它出错,将尝试使用未使用的第二个变量。这满足了我的需要,但写起来仍然感觉很糟糕......
标签: python python-2.7 lambda scipy