擅长:python、mysql、java
<p>这个错误的原因是,尽管您不希望这些边界依赖于变量,<code>nquad</code>仍然将变量传递给您提供给它的函数。因此,绑定函数必须采用正确数量的变量:</p>
<pre><code>def wbound():
return [1.23*10**10,3.1*10**16]
def zbound(w_foo):
return [10**(-10),pi-10**(-10)]
def ybound(z, w_foo):
return [0,bmax(z)-10**(-10)]
def xbound(z,y,w):
return [thetal(z,y,w),pi-thetal(z,y,w)]
</code></pre>
<p>现在函数<code>zbound</code>和<code>ybound</code>接受额外的变量,但忽略它们。在</p>
<p>我不确定最后一个边界<code>xbound(...)</code>:你想让变量<code>y</code>和{<cd6>}翻转吗?根据<a href="https://docs.scipy.org/doc/scipy-0.18.1/reference/generated/scipy.integrate.nquad.html" rel="nofollow noreferrer">^{<cd7>}</a>的定义,假定正确的顺序是</p>
^{pr2}$
<p>编辑:正如kazemakase所指出的,函数<code>f</code>应该返回一个<code>float</code>,而不是一个列表,因此应该删除return语句中的方括号<code>[...]</code>。在</p>