24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1190  |  回复: 6

amenboss

铁虫 (初入文坛)

[交流] 求高手相助!matlab求反应动力学模型参数已有2人参与

我通过实验有了x-t的实验数据,我现在想用matlab的函数求解模型中的参数,我的思路大概步骤是:首先假设参数的初值,并给其他参数赋值(已知),求出dx/dt,然后调用ODE函数求出Xsim的值,最后求所有参数点的Xsim和Xexp的差平方,以这个差平方和最小为优化目标求两个参数。
模型大致如图所示
求大神帮忙啊

求高手相助!matlab求反应动力学模型参数
1%D`%00ZJ3MRNB{N2)[N%HD.png
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

dingd

铁杆木虫 (职业作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
数据一起放上来看看。
2楼2014-12-14 13:54:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
2楼的大神是我们版块求解你提出问题的最强者,给出数据吧。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2014-12-14 14:39:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

amenboss

铁虫 (初入文坛)

引用回帖:
2楼: Originally posted by dingd at 2014-12-14 13:54:09
数据一起放上来看看。

求大神帮忙!
我的数据是如下:
t        x
0        2054.794521
300        1102.499315
600        695.659589
900        406.4431507
1200        198.1123288
1500        121.0650685
2100        72.21986301
2700        60.43630137
3300        44.2869863
3900        31.69109589
4500        26.82808219
5100        22.52260274


m,n,t,s的初值大致为
314.5833333,  0.328315976,  110.2308769,  2064.86589

初值可能会有出入,我也是大致估算的,没有准确数据。毕业论文遇到这个不熟悉的领域真是太难受了,希望大神能帮忙,感激涕零啊!!
4楼2014-12-15 16:42:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
公式中t是积分区间不是参数吧?
CODE:
Variable t,x;
ODEFunction x'=-(m+n*x)/(t+1/s/x^2);
Data;
t        x
0        2054.794521
300        1102.499315
600        695.659589
900        406.4431507
1200        198.1123288
1500        121.0650685
2100        72.21986301
2700        60.43630137
3300        44.2869863
3900        31.69109589
4500        26.82808219
5100        22.52260274

均方差(RMSE):13.8458076348104
残差平方和(SSE):2108.77027966193
相关系数(R): 0.999300935915745
相关系数之平方(R^2): 0.998602360522083
确定系数(DC): 0.998282949539454
F统计(F-Statistic): 2329.57626576002

参数                  最佳估算
--------------------        -------------
m        1228.02989306005
n        -0.52012529093965
s        1.39532314291721E-8

====== 结果输出 ======

文件: 数据文件-1
No        t        目标 x        计算 x
1        300        1102.499315        1113.41240644706
2        600        695.659589        680.535799025786
3        900        406.4431507        396.054156426377
4        1200        198.1123288        222.256063923777
5        1500        121.0650685        131.838213629664
6        2100        72.21986301        63.2589003819102
7        2700        60.43630137        39.8381649979752
8        3300        44.2869863        28.7549628853483
9        3900        31.69109589        22.4061726126003
10        4500        26.82808219        18.3200101730951
11        5100        22.52260274        15.4790969702342
求高手相助!matlab求反应动力学模型参数-1
c1.jpg

5楼2014-12-15 16:58:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

amenboss

铁虫 (初入文坛)

引用回帖:
5楼: Originally posted by dingd at 2014-12-15 16:58:26
公式中t是积分区间不是参数吧?

Variable t,x;
ODEFunction x'=-(m+n*x)/(t+1/s/x^2);
Data;
t        x
0        2054.794521
300        1102.499315
600        695.659589
900        406.4431507
1 ...

谢谢大神!
忘了说了,t不是变量,是参数。
这个拟合是用什么软件做的啊?
6楼2014-12-15 23:03:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
你的定义:Variable t,x;

t怎么又成了待求参数?如果是参数你的公式就过拟合了,可以化简去掉一个。
7楼2014-12-16 09:49:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 amenboss 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见