| 查看: 2216 | 回复: 1 | ||
[求助]
为什么增加了迭代次数MaxFunEvals,还是提示超过原来的默认值
|
|
用最小二乘法拟合2个参数 >> x0=[0.16,2.3]; >> [x,resnorm] = lsqcurvefit(@diffusionfunction,x0,xdata,ydata) Solver stopped prematurely. lsqcurvefit stopped because it exceeded the function evaluation limit, options.MaxFunEvals = 200 (the default value). x = 4.4899 0.1350 resnorm = 3.3061 于是我更改了'MaxfunEvals'的默认值 options= optimset('MaxfunEvals',1000000);在workspace里看,MaxfunEvals的值也确实改成了1000000。再次拟合 >> x0=[0.16,2.3]; >> [x,resnorm] = lsqcurvefit(@diffusionfunction,x0,xdata,ydata)Solver stopped prematurely. lsqcurvefit stopped because it exceeded the function evaluation limit, options.MaxFunEvals = 200 (the default value). x = 4.4899 0.1350 resnorm = 3.3061 还是出来同样的结果,不是已经改了默认值了吗?怎么这里出来的options.MaxFunEvals 还是200??我是新手,向大侠求助啊! |
2楼2014-07-16 12:49:41













回复此楼