我有在不同厚度下测量给定材料电阻率的方法,我必须使用Fuchs-Sondheimer模型拟合这些点。我这样定义了拟合函数:
def ff(x, aa, p):
return aa/(1-(3/(2*x))*integrate.quad(lambda t: (1/t**3 - 1/t**5)*(1-numpy.exp(-x*t))/(1-p*numpy.exp(-x*t)), 1, 1000))
其中t是积分变量,x是材料厚度,因此它是自变量,而aa和p是两个拟合参数。当我运行代码时,它在整数定义中给出了一个错误:
TypeError: only size-1 arrays can be converted to Python scalars
我想产生误差的原因是,x和p出现在积分函数中,积分变量t也出现在其中,所以它说我试图把一个向量传递给积分。事实上,如果我试图从积分中消除x和p,代码就会运行。 如何修改代码使其正常工作
看看这个
相关问题 更多 >
编程相关推荐