24小时热门版块排行榜    

查看: 811  |  回复: 5
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

qcz2002

新虫 (小有名气)

[交流] 【求助】对于特定的函数用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 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qcz2002

新虫 (小有名气)

还是不行呢 可不可以帮我设计然后运行出来呀
3楼2009-11-19 15:55:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

zjliu1265

至尊木虫 (正式写手)

★ ★ ★ ★
小木虫(金币+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
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qcz2002

新虫 (小有名气)

Data=[435.8 1.5563;486.1 1.5504;546.1 1.5496;589.3 1.5471;656.3 1.542;667.8 1.5417]; 函数为n^2=x(1)+x(2)/[r^2-x(3)]-x(4)/[x(5)-r^2]
其中n 和r为已知的两组数据,x为5个参数值

谢谢帮帮我吧

[ Last edited by qcz2002 on 2009-11-19 at 16:01 ]
4楼2009-11-19 15:59:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qcz2002

新虫 (小有名气)

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
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 国自然结果 +3 Vierhys 2026-08-10 5/250 2026-08-10 12:53 by lliang1209
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] FileCode能看出啥? +3 要乐观耀哥 2026-08-10 6/300 2026-08-10 12:33 by 要乐观耀哥
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +12 Lanmanbaby 2026-08-09 20/1000 2026-08-10 11:51 by 要乐观耀哥
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 好奇怪的filecode +3 布布和一二 2026-08-08 4/200 2026-08-08 17:46 by zhanghaozhu
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] 化学口download_prp&fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
信息提示
请填处理意见