24小时热门版块排行榜    

CyRhmU.jpeg
查看: 998  |  回复: 2

jkr09

铜虫 (小有名气)

[交流] 用Matlab求反应速率常数已有1人参与

[kopt fopt]=fminsearch(@calmin,[0,0,0],[],inicon1,t,aobs1);
----------------------------------------
function s=calmin(k,inicon1,t,aobs1)
[T,D]=ode45(@kinect,t,inicon1,[],k);
s=((D(:,1)-aobs1).^2);
---------------------------------------
%动力学方程目的就是求k1、k2、k3%
function z=kinect(t,d,k)
A=d(1);B=d(2);C=d(3);D=d(4);E=d(5);
k1=k(1);k2=k(2);k3=k(3);
z=[-k1*A*B-k2*A*C-k3*A*D;
-k1*A*B;
k1*A*B-k2*A*C;
k2*A*C-k3*A*D;
k3*A*D;];
-------------------------------
代码的意义是:通过已知条件,初始浓度,若干个时间内物质A的浓度和反应的方程来求得反应速率常数k1、k2、k3,我运行了一下 报错如下:
??? Subscripted assignment dimension mismatch.

Error in ==> fminsearch at 195
fv(:,1) = funfcn(x,varargin{:});

Error in ==> zqm1 at 1
[kopt fopt]=fminsearch(@calmin,[0,0,0],[],inicon1,t,aobs1);

[ Last edited by sddtc888 on 2014-4-10 at 13:31 ]
回复此楼

» 猜你喜欢

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

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

komae

铁虫 (小有名气)

矩阵不匹配??
搅拌铸造,铝合金轻金属铸造和复合材料、力学讨论Q群:208608603,欢迎各位一起学习,共同进步
2楼2014-04-10 14:23:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

komae

铁虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
楼主提供一下初始数据,我运行代码检测下
搅拌铸造,铝合金轻金属铸造和复合材料、力学讨论Q群:208608603,欢迎各位一起学习,共同进步
3楼2014-04-10 14:25:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 jkr09 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见