Python错误:函数不返回有效的float

时间:2016-04-22 21:49:06

标签: python-2.7 data-fitting quad

font_size=100

我正在定义这个voigt模型函数以适应曲线,但我收到一条错误,指出“提供的函数不返回有效的浮点数”。以下是拟合例程,然后是错误。任何人都可以帮助找到错误?提前致谢

   def voigt_PD(x,y0,xc,A,wG,wL):

       def integconvo(t,x1,xc1,wG1,wL1):
           return exp(-t**2)/((sqrt(log(2))*wL1/wG1)**2+ ((sqrt(4*log(2))*(x1-   xc1)/wG1)-t)**2) 

       return y0+(A*(2*log(2)/pi**1.5)*(wL/wG**2)* quad(integconvo,-inf,inf,args=(x,xc,wG,wL)))

然后它给出了

 import pylab
 from lmfit import Model

 from readdatafile import readdatafile
 from voigt_PD import voigt_PD

 X,Y = readdatafile('data.dat')

 gmod = Model(voigt_PD)
 result = gmod.fit(Y, x=X,y0=0,xc=0,A=0.1,wG=0.5,wL=0.5) 

 print(result.fit_report())

 pylab.plot(X, Y,         'bo')
 pylab.plot(X, result.best_fit, 'r-')
 pylab.show()

0 个答案:

没有答案