24小时热门版块排行榜    

Znn3bq.jpeg
查看: 1005  |  回复: 8

zhw921116

新虫 (初入文坛)

[求助] MATLAB拟合 已有2人参与

我用下面的数据和公式进行拟合,出现错误,麻烦大神解答
clear all
x1=[10,20,30,40,50,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40]';
x2=[8,8,8,8,8,4,6,8,10,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8]';
x3=[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1,2,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]';
x4=[0,0,0,0,0,0,0,0,0,0,0,0,0,0.25,0.5,0.75,0.8,0.9,1,1.2,1.3,1.4,1.5,2]';
x=[x1,x2,x3,x4];
S=[2,2.8,3.5,4.5,4.8,3,3.3,4.5,6.8,4.5,3,2.6,4.5,6,6.5,7.6,6.8,6.2,5,3.5,3.4,1.1,0,0]';
a0=[3.208,0.073,3.265,-0.431,0.069,0.417,11,1.076,0.565]';
fun=inline('a(1)+a(2)*x1+a(3)*x2.^a(4)+a(5)*exp(a(6)*x3)+a(7)/a(8)/sqrt(pi./2)*exp(-2*(x4-a(9)).^2/a(8)/a(8))','a','x');
[a,r,j]=nlinfit(x,S,fun,a0)

MATLAB拟合
错误.png
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wurongjun

专家顾问 (职业作家)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
zhw921116: 金币+2, ★★★很有帮助 2016-03-22 23:36:41
把fun改一下就行啦!
fun=inline('a(1)+a(2)*x(1)+a(3)*x(2).^a(4)+a(5)*exp(a(6)*x(3))+a(7)/a(8)/sqrt(pi./2)*exp(-2*(x(4)-a(9)).^2/a(8)/a(8))','a','x');
运行结果:
>>
a =

    3.2080
    0.0730
    3.2650
   -0.4310
   -0.0000
    0.3309
   11.0000
    1.0760
    0.5650


r =

   -1.9958
   -1.1958
   -0.4958
    0.5042
    0.8042
   -0.9958
   -0.6958
    0.5042
    2.8042
    0.5042
   -0.9958
   -1.3958
    0.5042
    2.0042
    2.5042
    3.6042
    2.8042
    2.2042
    1.0042
   -0.4958
   -0.5958
   -2.8958
   -3.9958
   -3.9958


j =

  1.0e+004 *

  Columns 1 through 7

    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0
    0.0001    0.0010    0.0000    0.0003    2.0452   -0.0025         0

  Columns 8 through 9

         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
         0         0
善恶到头终有报,人间正道是沧桑.
2楼2016-03-22 11:08:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
zhw921116: 金币+3, ★★★很有帮助 2016-03-22 23:37:08
1stOpt拟合结果:
均方差(RMSE): 0.43390091962119
残差平方和(SSE): 4.51848019315474
相关系数(R): 0.976560633341951
相关系数之平方(R^2): 0.953670670593233
确定系数(DC): 0.953670670593233
卡方系数(Chi-Square): 1.05109921892536
F统计(F-Statistic): 40.4711232389677

参数        最佳估算
----------        -------------
a1        -6.72233963538864
a2        0.0736026176846468
a3        5.69457619273679E-5
a4        4.82855796950308
a5        6.728128434041
a6        -2.75700141028568
a7        11.4573837792192
a8        1.11137672190465
a9        0.549488798892685
3楼2016-03-22 11:36:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhw921116

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by wurongjun at 2016-03-22 11:08:52
把fun改一下就行啦!
fun=inline('a(1)+a(2)*x(1)+a(3)*x(2).^a(4)+a(5)*exp(a(6)*x(3))+a(7)/a(8)/sqrt(pi./2)*exp(-2*(x(4)-a(9)).^2/a(8)/a(8))','a','x');
运行结果:
>>
a =

    3.2080
    0.07 ...

多谢,虽然用inline还是没有算出来,但是用@(a,x)代替算出来了,但是计算结果不满意,MATLAB能不能给参数加约束,比如a(3)<0等
4楼2016-03-22 23:23:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhw921116

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by dingd at 2016-03-22 11:36:08
1stOpt拟合结果:
均方差(RMSE): 0.43390091962119
残差平方和(SSE): 4.51848019315474
相关系数(R): 0.976560633341951
相关系数之平方(R^2): 0.953670670593233
确定系数(DC): 0.953670670593233
卡方系数( ...

多谢,我查了一下,1stopt可以给参数加约束,能不能帮忙再计算一下,如果方便的话可不可以传一下破解的1stopt,可以用钱买。
x1=[10,20,30,40,50,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40]';
x2=[8,8,8,8,8,4,6,8,10,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8]';
x3=[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1,2,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]';
x4=[0,0,0,0,0,0,0,0,0,0,0,0,0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8]';
x=[x1,x2,x3,x4];
S=[2,2.8,3.5,4.5,4.8,3,3.3,4.5,6.8,4.5,3,2,4.5,5,5.7,6,6.3,6.5,7.5,7.2,6.8,6.2,5,4.2,3.5,3.4,1.1,0,0,0,0]';
a0=[8.758,0.073,-1.571,0.069,0.412,13.128,1.195,0.566]';
fun=@(a,x)a(1)+a(2)*x1+a(3)*x2+a(4)*exp(a(5)*x3)+a(6)/a(7)/sqrt(pi./2)*exp(-2.*(x4-a(8)).^2/a(8)/a(8));
[a,r,j]=nlinfit(x,S,fun,a0)
y1=fun(a,x)
a(2)>0;a(3)<0;a(4)>0;a(5)>0;a(6)>0;0.8<a(7)<1.2;0.5<a(8)<0.8;
5楼2016-03-22 23:34:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wurongjun

专家顾问 (职业作家)

引用回帖:
4楼: Originally posted by zhw921116 at 2016-03-22 23:23:24
多谢,虽然用inline还是没有算出来,但是用@(a,x)代替算出来了,但是计算结果不满意,MATLAB能不能给参数加约束,比如a(3)<0等...

这个是局部最优解!
对初值敏感,你调整一下初值!
善恶到头终有报,人间正道是沧桑.
6楼2016-03-23 08:49:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

引用回帖:
5楼: Originally posted by zhw921116 at 2016-03-22 23:34:53
多谢,我查了一下,1stopt可以给参数加约束,能不能帮忙再计算一下,如果方便的话可不可以传一下破解的1stopt,可以用钱买。
x1=';
x2=';
x3=';
x4=';
x=;
S=';
a0=';
fun=@(a,x)a(1)+a(2)*x1+a(3)*x2+a(4 ...

加上范围约束效果要差很多:

均方差(RMSE): 1.61053742610384
残差平方和(SSE): 62.2519392211486
相关系数(R): 0.66010864388827
相关系数之平方(R^2): 0.435743421736011
确定系数(DC): 0.361712240598978
卡方系数(Chi-Square): 11.6676158900251
F统计(F-Statistic): 2.93754654132726

参数        最佳估算
----------        -------------
a2        0.0582049752085602
a3        -0.0125717520993565
a4        5.86780867771737E-13
a5        0.164109863974198
a6        2.89442959624235E-14
a7        1.2
a8        0.500000000000001
a1        1.28000885876465
a9        0.681914828028697

用钱买盗版?不值吧,盗版本来就“免费”,正版才值得花钱。
7楼2016-03-23 09:50:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhw921116

新虫 (初入文坛)

内容已删除
8楼2016-03-23 11:43:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

均方差(RMSE): 0.786006701903222
残差平方和(SSE): 19.1520025985402
相关系数(R): 0.934123874070345
相关系数之平方(R^2): 0.872587412108189
确定系数(DC): 0.872587412108189
卡方系数(Chi-Square): 2.82861233469515
F统计(F-Statistic): 25.7879879851766

参数        最佳估算
----------        -------------
a2        0.0644163727838743
a3        -1.91118384935733E-16
a4        1.22839069041116E-12
a5        6.51673289707249E-11
a6        13.1414143445168
a7        1.19543637850916
a8        0.566009585348225
a1        -4.18607760247816
9楼2016-03-23 17:53:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhw921116 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 211本科材料化工求调剂 +13 YHLAH 2026-04-11 14/700 2026-04-11 23:13 by 幸免 ..
[考研] 284求调剂 +11 archer.. 2026-04-09 12/600 2026-04-11 20:23 by 蓝云思雨
[考研] 一志愿211生物学280分 求调剂 +7 李rien 2026-04-05 7/350 2026-04-11 11:16 by 逆水乘风
[考研] 一志愿085502,267分求调剂 +11 再忙也要吃饭啊 2026-04-08 12/600 2026-04-11 11:08 by zhq0425
[考研] 300分求调剂 (085501机械专硕,本科扬大) +8 xu@841019 2026-04-11 8/400 2026-04-11 10:46 by qingpingzhu
[考研] 复试调剂 +9 积极向上; 2026-04-10 11/550 2026-04-11 09:25 by 猪会飞
[考研] 326求调剂 +5 Shansyn 2026-04-10 5/250 2026-04-10 22:23 by 猪会飞
[考研] 计算机类求调剂,22408-274分 +7 上岸de小虫 2026-04-09 8/400 2026-04-10 19:56 by fxue1114
[考研] 一志愿京区985,085401电子信息,本科电子信息 +3 阳光开朗的男孩 2026-04-10 3/150 2026-04-10 16:29 by sophia_93
[考研] 一志愿中国科学院上海有机所,有机化学356分找调剂 +11 Nadiums 2026-04-09 11/550 2026-04-09 18:04 by lijunpoly
[考研] 085400电子信息类(川大控制工程)求调剂可跨专业 求老师联系 +3 626776879 2026-04-08 3/150 2026-04-09 16:05 by 猪会飞
[考研] 考研求调剂 +4 雯??? 2026-04-08 4/200 2026-04-08 21:44 by 土木硕士招生
[考研] 一志愿南京航空航天大学 材料与化工329分求调剂 +11 Mr. Z 2026-04-05 12/600 2026-04-08 16:15 by luoyongfeng
[考研] 化工学硕 285求调剂 +26 Wisjxn 2026-04-07 26/1300 2026-04-08 14:42 by screening
[考研] 263分B区求调剂 +6 李nihao 2026-04-08 6/300 2026-04-08 09:38 by 南开小綦
[考研] 259求调剂 +5 就爱吃土豆呀呀 2026-04-07 5/250 2026-04-07 22:40 by JourneyLucky
[考研] 一志愿南科大生物学297分,求调剂推荐 +8 Y-yyusx 2026-04-06 9/450 2026-04-07 19:38 by biomichael
[考研] 085100建筑学 寻求跨专业调剂 一志愿南大294分 校级省级国家级奖项若干 踏实肯干 +3 1021075758 2026-04-06 4/200 2026-04-07 09:23 by 蓝云思雨
[考研] 304求调剂 +4 luoye0105 2026-04-05 4/200 2026-04-06 21:05 by 木子君1218
[考研] 332求调剂 +17 小小孟... 2026-04-05 18/900 2026-04-06 09:51 by 蓝云思雨
信息提示
请填处理意见