查看单个帖子
旧 2009-04-04, 19:54   #2
huenzhu
初级会员
 
注册日期: 2008-10-04
年龄: 40
帖子: 16
声望力: 17
huenzhu 正向着好的方向发展
默认 回复: [求助]matlab中lsqnonlin函数的用法,帮帮忙

最后一句画图的时候横纵坐标填反了。应该是
plot(tt,yy,'-rp')

非线性拟合问题的初值选取我也非常头疼,我一直用的都是最笨的方法,
先给公式中的参数随便赋值,使得函数的变化趋势与数据相符,但实在是非常浪费时间。
建议你采用曲线拟合工具箱——cftool
里面提供了许多的常用函数,还可以自定义函数,可以通过修改初值随时观察曲线的变化,非常方便,很直观。
用法也很简单,先把U和I两个变量装入内存;
然后在命令栏键入cftool
然后点击Data建立数据集
点击fiting进行拟合,选择power function,选a*x^b,点击apply,OK!

General model Power1:
f(x) = a*x^b
Coefficients (with 95% confidence bounds):
a = 0.0001363 (-6.545e-005, 0.000338)
b = 2.278 (1.88, 2.676)

Goodness of fit:
SSE: 0.003728
R-square: 0.9912
Adjusted R-square: 0.9894
RMSE: 0.0273
上传的图像
文件类型: jpg untitled.jpg (14.7 KB, 7 次查看)
__________________
相信未来,热爱生命
huenzhu 当前离线   回复时引用此帖