数组python的三重集成

时间:2018-10-22 16:16:01

标签: python numpy scipy integration quad

我具有以下三重积分:

the integral

数据为:t 1D数组(大小124),pr 1D数组(大小10),lat 1D数组(241)和lon 1D数组(大小480) V 4D阵列(124、10、241、480)

我想在每个纬度上对v,t,pr和lon进行积分,因此,我使用了以下代码:

def M(T, lam, P, V, phi):

    return integrate.tplquad(V*R*np.cos(phi), 0, T,
                         lambda T: 0, lambda T: lam,
                         lambda T,lam: 0, lambda T,lam: P)[0]

for i in range(lat.shape[0]):
    a = M(t, lon, pr, v[:, :, i, :], lat[i])

但是我得到了错误:

  

ValueError:具有多个元素的数组的真值不明确。使用a.any()或a.all()

tplquad的工作方式仍然让我感到困惑。对tplquad或其他功能进行积分有帮助吗?

0 个答案:

没有答案