scipy.optimize中python中curve_fit和leastsq之间的区别

时间:2014-01-18 14:32:53

标签: python scipy curve-fitting

我有一个功能包含: 自变量X, 因变量Y
两个固定参数a和b。

使用相同的实验数据,curve_fitleastsq函数都可以适用于具有类似结果的函数。

使用curve_fit我有: [ 2.50110215e-04 , 7.80730380e-05]用于固定参数a和b。

使用leastsq我有: [ 2.50110267e-04 , 7.80730843e-05]用于固定参数a和b。

我想知道两者是否有任何差异,如果是,我应该使用curve_fit的情况是什么,我应该使用leastsq的情况?

1 个答案:

答案 0 :(得分:5)

curve-fit正在使用leastsq进行计算,因此他们应始终给出相同的结果。你看到的微不足道的差异可能是某处的舍入错误的结果。直接调用leastsq应该消除它。

来自curve_fit的文档:

  

该算法通过leastsq使用Levenberg-Marquardt算法。   其他关键字参数将直接传递给该算法。