24小时热门版块排行榜    

Znn3bq.jpeg
查看: 1000  |  回复: 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的回帖

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的回帖
查看全部 9 个回答

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的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 291求调剂 +7 关忆北. 2026-04-11 7/350 2026-04-11 23:48 by baobaoye
[考研] 一志愿厦大0856,306求调剂 +15 Bblinging 2026-04-11 15/750 2026-04-11 22:53 by 314126402
[考研] 291分调剂 +5 上岸小莹加油 2026-04-09 6/300 2026-04-11 21:06 by 逆水乘风
[考研] 电子信息279求调剂,有书读就行 +8 wwwooden 2026-04-08 11/550 2026-04-11 20:22 by cq2548
[考研] 求调剂 +13 张番茄不炒蛋 2026-04-10 14/700 2026-04-11 16:02 by vgtyfty
[基金申请] 山东省基金2026 +4 jerry681 2026-04-08 5/250 2026-04-11 13:59 by laobibibi
[考研] 一志愿085502,267分求调剂 +11 再忙也要吃饭啊 2026-04-08 12/600 2026-04-11 11:08 by zhq0425
[考研] 考研调剂 +26 硕星赴 2026-04-09 27/1350 2026-04-10 22:24 by 猪会飞
[考研] 生物与医药调剂 +5 十七sa 2026-04-05 5/250 2026-04-10 08:14 by kangsm
[考研] 材料化工总分334求调剂 +16 Riot2025 2026-04-08 17/850 2026-04-09 20:19 by maddjdld
[考研] 本科郑州大学,一志愿华东师范大学282求调剂 +23 熊哥xtk 2026-04-07 26/1300 2026-04-09 17:17 by 18446523
[考研] 085600材料与化工专硕329 求调剂 +24 额cc 2026-04-06 25/1250 2026-04-09 16:01 by wp06
[考研] 265求调剂 +4 风说她早忘了 2026-04-07 4/200 2026-04-09 13:59 by only周
[考研] 材料307分求大佬组收留 +17 Hll胡 2026-04-07 17/850 2026-04-09 10:53 by liuhuiying09
[考研] 求调剂 +8 吃口冰激凌 2026-04-07 8/400 2026-04-09 08:03 by 5268321
[考研] 085602调剂 初试总分335 +10 19123253302 2026-04-05 10/500 2026-04-07 15:23 by 小乔同学ya
[考研] 331求调剂 +8 于征yz 2026-04-05 8/400 2026-04-06 00:54 by fmesaito
[考研] 315求调剂 +5 &123456789 2026-04-05 5/250 2026-04-05 19:55 by nepu_uu
[考研] 考研调剂生寻找导师 +3 顾瞻考研啊 2026-04-05 3/150 2026-04-05 18:18 by 啵啵啵0119
[考研] 一志愿北交大材料工程总分358求调剂 +6 cs0106 2026-04-05 6/300 2026-04-05 16:34 by imissbao
信息提示
请填处理意见