24小时热门版块排行榜    

CyRhmU.jpeg
查看: 23364  |  回复: 73
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

dshuanger

木虫 (小有名气)

[求助] matlab非线性拟合模型参数,大神你在哪!

本人非计算模拟专业,小白一枚,但最近需要模拟参数,不知如何运用matlab求参数,顾求助各位大神。     
        模型表达式:
      y=a/E1 +a/E2[1-exp(-x/t)]+a*x/E3            
      其中:x=[2,5,10,15,30,60,120,200,300,550,700];
                 y=[8.66667,10,10.66667,12.66667,13.33333,15,15.33333, 16.66667,17.33333,18.33333,20];
                 a=2
       未知参数:E1,E2,t,E3     
不知道能否通过matlab拟合参数
请各位大神能鼎力相助,最好能给出代码或者计算方法,谢谢大家!

[ Last edited by dshuanger on 2013-11-5 at 11:06 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

梦落在草地上

新虫 (小有名气)

送红花一朵
引用回帖:
41楼: Originally posted by 月只蓝 at 2015-01-22 10:20:36
Y本身是目标函数,限定Y在,又求Y的最大值,那Y最大值不就是100么?
那么,不就等于是 求
Y=355.45-38.35*X1-13.99*X2-85.78*X3+0.825*X1*X2+6.234*X1*X3+1.959*X2*X3+1.278*X1^2+0.272*X2^2+6.59*X3^2=100
这个 ...

您好,感激您一直给我回帖,也帮我增加了matlab语言对化学数据的非线性拟合的认识。然而,化学数据处理不是纯粹的数学计算,有很多条件限制,所以似乎目前为止,还没有真正解决我自己的问题。现想最后求助下您:
1.对于Parameters b0,b1,b2,b3,b4,b5,b6,b7,b8,b9;
Variable X1,X2,X3,Y;
Function Y=b0+b1*X1+b2*X2+b3*X3+b4*X1*X2+b5*X1*X3+b6*X2*X3+b7*X1^2+b8*X2^2+b9*X3^2;
Data;
    1          2        4       76.84
    1          4        7        77.85
    2          6        3        62.19
    2          1        7        70.77
    3          3        3        73.30
    3          5        6        66.23
    4          7        2        10.66
    4          1        6        79.36
    5          3        2        79.87
    5          5        5        77.34
    6          7         1        21.77
    6          2        5        74.82
    7          4        1        74.31
    7          6        4        58.65
所拟合的方程前,可不可以再限制下区间X1[1,7]X2[1,7]X3[1,7]Y[0,100],使得最后直接最优化值是落在各个区间的某个极小值,且不是边界值。比如高中数学学过,极值不一定不等于最值。
44楼2015-01-22 21:52:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 74 个回答

jerkwin

专家顾问 (正式写手)

不劳matlab, origin, 1stopt足矣
matlab非线性拟合模型参数,大神你在哪!
2013-11-04_212307.png

2楼2013-11-05 11:23:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主


dingd: 金币+1, 谢谢分享。 2013-11-05 16:37:58
y=2/e1 +2/e2/(1-exp(-x/t))+a*x/3;    // a=2
x=[2,5,10,15,30,60,120,200,300,550,700];
y=[8.66667,10,10.66667,12.66667,13.33333,15,15.33333, 16.66667,17.33333,18.33333,20];

相关系数(R): 1
相关系数之平方(R^2): 1
决定系数(DC): 0.999999999996653
卡方系数(Chi-Square): 1.64243431014082E-11

参数          最佳估算
----------        --------------
e1  =1.2090897803241
e2  =3.11591327892529
t   =0.00209072546506921

====== 输出结果 =====
No.         Observed y        Calculated y
1        8.66667            8.66666365993411
2        10        9.99999365993411
3        10.66667        10.6666636599341
4        12.66667        12.6666636599341
5        13.33333        13.3333236599341
6        15        14.9999936599341
7        15.33333        15.3333236599341
8        16.66667        16.6666636599341
9        17.33333        17.3333236599341
10        18.33333        18.3333236599341
11        20        19.9999936599341
3楼2013-11-05 11:54:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主

你的 “+a/E2[1-exp(-x/t)]” 再明确一下为好。
4楼2013-11-05 11:56:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见