我具有以下三重积分:
数据为: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或其他功能进行积分有帮助吗?