24小时热门版块排行榜    

查看: 621  |  回复: 2

zhang66163

银虫 (正式写手)

[求助] matlab程序编写 已有2人参与

按照教程编写了一个程序:如下
function Batchreactor
clear all;clc
T=224.6+273
R=8.314
k0=[5.78052E+10, 3.92317E+12, 1.64254E+4, 6.264E+8]
Ea=[124670, 150386, 77954, 111528]
C0=[1, 0, 0, 0]
tspan=[0, 1E+4]

[t,C]=ode45(@Massequations,tspan,C0,[],k0,Ea,T,R);
plot(t,C(:,1),'r-',t,C(:,2),'O-',t,C(:,3),'b-',t,C(:,4),'g-');



function dCdt=Massequations(t,C,k0,Ea,T,R);
k=k0*exp(-Ea/(R*T)); k(5)=2.1667E-4;

rA=-(k(1)+k(2))*C(1); rB=k(1)*C(1)-k(3)*C(2); rC=k(2)*C(1)-k(4)*C(3);
rD=k(3)*C(2)-k(5)*C(4); rE=k(4)*C(3)+k(5)*C(4);
可是运行后,出现了错误;哪位大侠可以帮忙解释一下。谢谢
Error using  *
Inner matrix dimensions must agree.

Error in concentration>Massequations (line 16)
k=k0*exp(-Ea/(R*T)); k(5)=2.1667E-4;

Error in odearguments (line 88)
f0 = feval(ode,t0,y0,args{:});   % ODE15I sets args{1} to yp0.

Error in ode45 (line 114)
[neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ...

Error in concentration (line 10)
[t,C]=ode45(@Massequations,tspan,C0,[],k0,Ea,T,R);


dCdt=[rA;rB;rC;rD;rE]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
zhang66163: 金币+20, 有帮助 2015-08-11 11:01:46
k0*exp  ——> k0.*exp
showmethemoney
2楼2015-08-11 09:08:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
zhang66163: 金币+40, ★★★很有帮助 2015-08-11 11:02:11
少一个初值条件,由C0=[1, 0, 0, 0]改为:C0=[1, 0, 0, 0,0],即默认组分E初始浓度为0;如果初值条件不是这样的,请自行需要改,须填满5个,因为有5个方程。
CODE:
function Batchreactor
clear all;clc
global T R

T=224.6+273;
R=8.314;

C0=[1, 0, 0, 0,0];

tspan=[0, 1E+4];

[t,C]=ode45(@Massequations,tspan,C0);
[t C]

figure(1)
plot(t,C(:,1),'r-',t,C(:,2),'O-',t,C(:,3),'b-',t,C(:,4),'g-')




function dCdt=Massequations(t,C)
global T R


k0=[5.78052E+10, 3.92317E+12, 1.64254E+4, 6.264E+8];
Ea=[124670, 150386, 77954, 111528];
k=k0.*exp(-Ea/(R*T));
k(5)=2.1667E-4;


rA=-(k(1)+k(2))*C(1);
rB=k(1)*C(1)-k(3)*C(2);
rC=k(2)*C(1)-k(4)*C(3);
rD=k(3)*C(2)-k(5)*C(4);
rE=k(4)*C(3)+k(5)*C(4);
dCdt=[rA;rB;rC;rD;rE];

matlab程序编写
附图1.png

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2015-08-11 09:27:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhang66163 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 投票:  有多少人是今天查系统知道结果的? +17 爱看书的可乐 2026-08-26 19/950 2026-08-30 22:24 by xiangy672
[基金申请] 面上意见出来了 +9 黄鸟于飞Chao 2026-08-29 18/900 2026-08-30 16:47 by 黄鸟于飞Chao
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +6 gdd2018 2026-08-28 11/550 2026-08-30 08:58 by 超级无敌华子
[基金申请] 中青基了要发朋友圈吗? +4 349506619 2026-08-28 4/200 2026-08-29 22:41 by alongwaytogo
[基金申请] 国自然面上复盘~欢迎讨论 (金币+15) +15 晴天加油 2026-08-26 16/800 2026-08-29 18:28 by symmetry
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +12 Kittylucky 2026-08-27 13/650 2026-08-29 00:04 by superceng
[基金申请] 基金不中,共勉 +11 eulota 2026-08-26 11/550 2026-08-28 14:22 by 火星超人xi
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 9/450 2026-08-28 11:06 by maolC
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 哪位高人中了,把查询到的截图贴出来让我看看,让我长长见识 +5 yuleib84 2026-08-26 6/300 2026-08-28 00:02 by yudaoqian88
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 国际合作可查了,中了面上 (EPI+1)(金币+50) +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 系统进不去 +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[基金申请] 牛来!米来!面来! +8 beefly 2026-08-26 8/400 2026-08-26 08:37 by xuzhipiao
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[基金申请] 某些机构,以效率低为荣,以效率低作为存在感 +9 yuleib84 2026-08-25 10/500 2026-08-25 17:14 by alexon
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +8 scalable 2026-08-24 8/400 2026-08-25 12:52 by jnhyjjm
信息提示
请填处理意见