Python 2.7 使用integrate.quad进行集成时出现无效浮点错误
我有一份清单:Python 2.7 使用integrate.quad进行集成时出现无效浮点错误,python-2.7,scipy,integration,Python 2.7,Scipy,Integration,我有一份清单: q1 = [0,1.9488e-06,1.5473e-05,5.1829e-05,0.00012192,0.00023633,0.00040526,0.00063862,0.00094596,0.0013365,0.0018192,0.0024025,0.0030949,0.0039041,0.0048379,0.0059036] 我正试图将其整合。 我已经做了以下工作: def f(x): if (np.abs(x)<1e-10): res =
q1 = [0,1.9488e-06,1.5473e-05,5.1829e-05,0.00012192,0.00023633,0.00040526,0.00063862,0.00094596,0.0013365,0.0018192,0.0024025,0.0030949,0.0039041,0.0048379,0.0059036]
我正试图将其整合。
我已经做了以下工作:
def f(x):
if (np.abs(x)<1e-10):
res = x
else:
res = q2[:10]
return res
x = np.arange(0,10,0.001)
def F(x):
res = np.zeros_like(x)
for i,val in enumerate (x):
y,err = integrate.quad(f,0,val)
res[i] = y
return res
plt.plot(F(x))
def(x):
如果(np.abs(x)您由于f
中的这两行而出现此错误:
else:
res = q2[:10]
这里,您将从函数返回列表的一部分。quad
不喜欢这样;根据,它希望函数返回一个double(即Python float),而不是列表
虽然您的问题中没有给出您的预期输出,但将该行更改为
res = q2[0]
或者q2
中的任何其他任意索引可以更正错误。您的问题是否得到了充分解决?如果是,您可以通过在左侧复选框中标记正确答案来帮助您、我和社区的每个人。否则,可以澄清什么?
res = q2[0]