| 查看: 729 | 回复: 5 | |||
| 当前主题已经存档。 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
【求助】对于特定的函数用matlab做最小二乘法的曲线拟合
|
|||
|
函数为n^2=x(1)+x(2)/[r^2-x(3)]-x(4)/[x(5)-r^2] 其中n 和r为已知的两组数据,我想得到其最小二乘法的拟合曲线以及5个参数x的值 我是这样弄得 结果老是无法运行 m文件 function f^2=f01(x,Data); Data=[4358 2.42207;4861 2.40374;5461 2.40126;5893 2.39352;6563 2.37776;6678 2.37684]; r=Data(:,1); n=Data(:,2); z^2=x(1)+x(2)/[r^2-x(3)]-x(4)/[x(5)-r^2]; f^2=z^2-n^2; 输入命令 Data=[4358 2.42207;4861 2.40374;5461 2.40126;5893 2.39352;6563 2.37776;6678 2.37684]; r=Data(:,1); n=Data(:,2); x0=[1 0]'; x=lsqnonlin('f01',x0); 到这一步就出问题了,哪位好心的大侠帮帮我吧 应该怎么建m文件 程序错哪了 我刚刚接触matlab,我看了书上的例子,不过那个例子是一次的 [ Last edited by kuhailangyu on 2009-11-18 at 20:53 ] |
» 猜你喜欢
282求调剂
已经有22人回复
283求调剂
已经有5人回复
265求调剂
已经有21人回复
288求调剂 一志愿哈工大 材料与化工
已经有10人回复
调剂0855-288
已经有5人回复
电子信息调剂交叉学科有推荐吗
已经有6人回复
266求调剂
已经有6人回复
材料科学与工程考研
已经有10人回复
283分材料与化工求调剂
已经有29人回复
一志愿哈尔滨工业大学085600英一数二337分求调剂
已经有4人回复
3楼2009-11-19 15:55:49
zjliu1265
至尊木虫 (正式写手)
- 应助: 18 (小学生)
- 金币: 12063.2
- 散金: 200
- 帖子: 642
- 在线: 679.9小时
- 虫号: 585320
- 注册: 2008-08-08
- 性别: GG
- 专业: 光学
★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
nono2009(金币+3,VIP+0):谢谢应助!可能还需要进一步指导。 11-19 20:21
小木虫(金币+0.5):给个红包,谢谢回帖交流
nono2009(金币+3,VIP+0):谢谢应助!可能还需要进一步指导。 11-19 20:21
|
我来援助一下吧! x0应该是含5个元素的向量,而你只写了2个。 我随意加了3个元素,不一定对,完全是为了 程序能运行。 另外: 1. 符号"^"是运算符,不要用于变量名字中; 2. 符号"^"和"/"在计算表达式中如果不是方矩阵,它们一般 需分别改写为".^"和"./"表示元素之间的乘除运算。 改后的程序是: m文件 function f2=f01(x,Data); Data=[4358 2.42207;4861 2.40374;5461 2.40126;5893 2.39352;6563 2.37776;6678 2.37684]; r=Data(:,1); n=Data(:,2); z2=x(1)+x(2)./[r.^2-x(3)]-x(4)./[x(5)-r.^2]; f2=z2-n.^2; 输入命令 Data=[4358 2.42207;4861 2.40374;5461 2.40126;5893 2.39352;6563 2.37776;6678 2.37684]; r=Data(:,1); n=Data(:,2); x0=[1 0 1 1 1]'; x=lsqnonlin('f01',x0); |
2楼2009-11-19 09:23:14
4楼2009-11-19 15:59:56
nono2009(金币+0,VIP+0):建议通过PM或“引用回复该帖”,以便别人及时收到你的message. 11-19 20:20
|
运行情况>> Data=[435.8 1.5563;486.1 1.5504;546.1 1.5496;589.3 1.5471;656.3 1.5420;667.8 1.5417]; >> r=Data(:,1); >> n=Data(:,2); >> x0=[1 0 1 1 1]'; >> x=lsqnonlin('f01',x0); Optimization terminated: first-order optimality less than OPTIONS.TolFun, and no negative/zero curvature detected in trust region model. >> n2=x(1)+x(2)./[r.^2-x(3)]-x(4)./[x(5)-r.^2]; >> plot(r,n,'bol-'); ??? Error using ==> plot Error in color/linetype argument. |
5楼2009-11-19 16:42:28














回复此楼