注册 登录
编程论坛 Matlab

小女子求救!哪位高手帮帮我啊。问题不解决,放假回不了家。5555

wydhhu 发布于 2008-01-24 21:09, 1896 次点击
x=[0.2 0.4 0.6 0.8];
y=[0.779 0.695 0.637 0.633];
y=1/sqrt(-kx^n+0.45x^2+k+1)

需要用matlab的非线性参数lsqcurvefit 或 nlinfit 拟合出k和n的值,
最好把代码也告诉我吧,论文里需要。
论文的第三章就差它了,找了好多例子都调不通。
我对matlab一点都不了解。急死啦!
哪位能帮我,感激不尽。
7 回复
#2
皮卡丘2008-01-25 13:38
等我来瞧下
#3
皮卡丘2008-01-25 14:06
>> x=[0.2 0.4 0.6 0.8]';
y=[0.779 0.695 0.637 0.633]';
y1=1./y;
y2=y1.^2;
myfunc=inline('-beta(1)*x.^beta(2)+0.45*x.^2+beta(1)+1','beta','x');
beta=nlinfit(x,y2,myfunc,[-0.0001 0.5]);
k=beta(1)

k =

  1.2757e-007

>> n=beta(2)

n =

 -7.8266e-004

搞定 呵呵


关键是初值很难猜

[[italic] 本帖最后由 皮卡丘 于 2008-1-25 18:20 编辑 [/italic]]
#4
皮卡丘2008-01-25 14:19
哪个哥们把 nlinfit.m函数发出来的话 感激不尽 我matlab没装完整

thanks
#5
涛涛大海2008-01-26 14:46
matlab     做高速车道线检测,用到susan,
#6
wydhhu2008-01-26 21:13
原帖由 [bold][underline]皮卡丘[/underline][/bold] 于 2008-1-25 14:06 发表 [url=http://bbs.bccn.net/redirect.php?goto=findpost&pid=1187730&ptid=198631][/url]
>> x=[0.2 0.4 0.6 0.8]';
y=[0.779 0.695 0.637 0.633]';
y1=1./y;
y2=y1.^2;
myfunc=inline('-beta(1)*x.^beta(2)+0.45*x.^2+beta(1)+1','beta','x');
beta=nlinfit(x,y2,myfunc,[-0.0001 0.5]);
k=beta(1)

k  ...


含泪拜谢……
如果可以,真想请你吃饭。
#7
皮卡丘2008-01-27 17:33
hehe 不用谢

希望对你有帮助
#8
zhxllhy2008-03-13 21:53
急:matlab解常微分方程组
论文急用,请高手指点,小女子不胜感激!!!
把程序发给我,我的邮箱是xiaolishuxue2005@
1