import numpy
import matplotlib.pyplot as plt
from scipy import integrate
def f(x,y):
return x*y + x**2
def integral(x,y):
I = integrate.quad(f, 0, x, args=(y,))[0]
return I
def gau(x,y):
return (1+x)*integral(x,y)
xlist = numpy.linspace(-3.0, 3.0, 100)
ylist = numpy.linspace(-3.0, 3.0, 100)
X, Y = numpy.meshgrid(xlist, ylist)
Z = gau(2, Y)
print(Z)
我一直收到錯誤消息「提供的函數不返回有效的浮點數。」,我認爲問題是我嘗試將數組傳遞給四元函數。我想過用類似的方式評估陣列的每個條目的積分:Python:評估數組的積分
yi=numpy.linspace(-3.0,3.0,100)
for i, item in enumerate(yi):
return integral[i]=integrate.quad(f,0,x,args=(yi,))[0]
它不起作用,但它是正確的方式?任何其他/更好的建議?
適用於此問題,謝謝! – user7248647