24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 161  |  回复: 0
当前主题已经存档。
【有奖交流】积极回复本帖子,参与交流,就有机会分得作者 只做陌生人 的 40 个金币

只做陌生人

铁虫 (初入文坛)

[交流] 【求助】新手求帮助解答 动力学方程的参数估计方面的问题

小弟最近在做动力学方面的模拟,即用经验型的方程式,里面有8个参数需要估计,前阵子抢了有好多数据了,然后最近在急着写程序,由于是新手,做得比较慢,希望高手帮忙,话正题:
该动力学是两个反应,A+B=C,C+A=D,现在要得到A和B的反应速率,我在程序中是用f1和f2表示的,嗯,我附上我的程序吧,希望高手帮忙指导调试一下,不胜感谢啊。
function mykinetics
clc
global T,obj,g,w,x
g0=[300,30000,0.9,0.8,400,15000,0.6,0.86];
[g,obj]=fminsearch(wlq_obj,g0);
%Cc=0;
T=[438.1500  443.1500  448.1500  453.1500  458.1500  463.1500];
C_e1=[ 8.2209 0.4252
        8.2327 0.4370
        7.9779 0.1650
        8.1535 0.3579
        8.1660 0.3760
        8.1419 0.3528 ];
C_e2=[  8.4981 0.2077
        8.5034 0.2095
        8.5025 0.2060
        8.4996 0.2148
        8.5019 0.2275
        8.4710 0.1872 ];
C_e3=[  8.8011 0.1389
        8.7987 0.1389
        8.7816 0.1233
        8.7770 0.1158
        8.7783 0.1165
        8.7570 0.0959 ];
C_e4=[ 9.0110 0.0577
       8.9832 0.0319
       8.9843 0.0336
       8.9669 0.0189
       8.9732 0.0258
       8.9644 0.0186 ];
plot(T,Cc1,'*',T,C_e1,'+')
ru=1-(nansum((Cc1-C_e1).^2)+nansum((Cc2-C_e2).^2)+nansum((Cc3-C_e3).^2)+nansum((Cc4-C_e4).^2)+nansum((Cc5-C_e5).^2))/(nansum(C_e1.^2)+nansum(C_e2.^2)+nansum(C_e3.^2));
error1=nansum((C_e1-Cc1).^2);
s1=nansum(C_e1.^2)-error1;
error2=nansum((C_e2-Cc2).^2);
s2=nansum(C_e2.^2)-error2;
error3=nansum((C_e3-Cc3).^2);
s3=nansum(C_e3.^2)-error3;
error4=nansum((C_e4-Cc4).^2);
s4=nansum(C_e4.^2)-error4;
s=s1+s2+s3+s4;
error=error1+error2+error3+error4;
f=s*(24-8-1)/(error*8);
result
Cc1
C_e1
ru
s
error
f
%--------------------------------------------------------------------------
function obj=wlq_obj(g)
global T,obj,g
T=[438.1500  443.1500  448.1500  453.1500  458.1500  463.1500];
C_e1=[ 8.2209 0.4252
        8.2327 0.4370
        7.9779 0.1650
        8.1535 0.3579
        8.1660 0.3760
        8.1419 0.3528 ];
C_e2=[  8.4981 0.2077
        8.5034 0.2095
        8.5025 0.2060
        8.4996 0.2148
        8.5019 0.2275
        8.4710 0.1872 ];
C_e3=[  8.8011 0.1389
        8.7987 0.1389
        8.7816 0.1233
        8.7770 0.1158
        8.7783 0.1165
        8.7570 0.0959 ];
C_e4=[ 9.0110 0.0577
       8.9832 0.0319
       8.9843 0.0336
       8.9669 0.0189
       8.9732 0.0258
       8.9644 0.0186 ];
obj1=sum((C_e1-wlq_dynamic_equation1(T,g)).^2);
obj2=sum((C_e2-wlq_dynamic_equation2(T,g)).^2);
obj3=sum((C_e3-wlq_dynamic_equation3(T,g)).^2);
obj4=sum((C_e4-wlq_dynamic_equation4(T,g)).^2);
obj=obj1+obj2+obj3+obj4
%--------------------------------------------------------------------------
function C=wlq_dynamic_equation1(T,g)
global  k01,k02,E1,E2,m1,n1,m1,n2,w,x,Cc1
k01=g(1);
k02=g(5);
E1=g(2);
E2=g(6);
m1=g(3);
n1=g(4);
m2=g(7);
n2=g(8);
[w,x]=ode45(@wlq_f1,[0,0.222],[9.5074 1.9007]);
for i=1:length(T)
Cc1(i,=wlq_dynamic_equation1(T(i),result);
end
%--------------------------------------------------------------------------
function C=wlq_dynamic_equation2(T,g)
global  k01,k02,E1,E2,m1,n1,m1,n2,w,x,Cc2
k01=g(1);
k02=g(5);
E1=g(2);
E2=g(6);
m1=g(3);
n1=g(4);
m2=g(7);
n2=g(8);
[w,x]=ode45(@wlq_f2,[0,0.222],[9.7582 1.6262]);
for i=1:length(T)
Cc2(i,=wlq_dynamic_equation1(T(i),result);
end
%--------------------------------------------------------------------------
function C=wlq_dynamic_equation3(T,g)
global  k01,k02,E1,E2,m1,n1,m1,n2,w,x,Cc3
k01=g(1);
k02=g(5);
E1=g(2);
E2=g(6);
m1=g(3);
n1=g(4);
m2=g(7);
n2=g(8);
[w,x]=ode45(@wlq_f3,[0,0.222],[9.9463 1.4203]);
for i=1:length(T)
Cc3(i,=wlq_dynamic_equation1(T(i),result);
end
%--------------------------------------------------------------------------
function C=wlq_dynamic_equation4(T,g)
global  k01,k02,E1,E2,m1,n1,m1,n2,w,x,Cc4
k01=g(1);
k02=g(5);
E1=g(2);
E2=g(6);
m1=g(3);
n1=g(4);
m2=g(7);
n2=g(8);
[w,x]=ode45(@wlq_f4,[0,0.222],[10.0904 1.2625]);
for i=1:length(T)
Cc4(i,=wlq_dynamic_equation1(T(i),result);
end
%--------------------------------------------------------------------------
function f=wlq_f1(w,x)
global  k01,k02,E1,E2,m1,n1,m1,n2,k1,k2,x01,x02,R,f1,f2,x1,x2
%Cb=x1,Cpr=x2
R=8.314; % (单位J?mol-1?K-1)
x01=9.5074; % (单位mol?L-1)
x02=1.9007;% (单位mol?L-1)
k1=k01.*exp(-(E1./(R.*T)));
k2=k02.*exp(-(E2./(R.*T)));
f1=k1.*x1.^m1.*x2.^n1+k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;
f2=k1.*x1.^m1.*x2.^n1+2*k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;
%--------------------------------------------------------------------------
function f=wlq_f2(w,x)
global  k01,k02,E1,E2,m1,n1,m1,n2,k1,k2,x01,x02,R,f1,f2,x1,x2
%Cb=x1,Cpr=x2
R=8.314; % (单位J?mol-1?K-1)
x01=9.7582; % (单位mol?L-1)
x02=1.6262;% (单位mol?L-1)
k1=k01.*exp(-(E1./(R.*T)));
k2=k02.*exp(-(E2./(R.*T)));
f1=k1.*x1.^m1.*x2.^n1+k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;
f2=k1.*x1.^m1.*x2.^n1+2*k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;
%--------------------------------------------------------------------------
function f=wlq_f3(w,x)
global  k01,k02,E1,E2,m1,n1,m1,n2,k1,k2,x01,x02,R,f1,f2,x1,x2
%Cb=x1,Cpr=x2
R=8.314; % (单位J?mol-1?K-1)
x01=9.9463; % (单位mol?L-1)
x02=1.4203;% (单位mol?L-1)
k1=k01.*exp(-(E1./(R.*T)));
k2=k02.*exp(-(E2./(R.*T)));
f1=k1.*x1.^m1.*x2.^n1+k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;
f2=k1.*x1.^m1.*x2.^n1+2*k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;
%--------------------------------------------------------------------------
function f=wlq_f4(w,x)
global  k01,k02,E1,E2,m1,n1,m1,n2,k1,k2,x01,x02,R,f1,f2,x1,x2
%Cb=x1,Cpr=x2
R=8.314; % (单位J/mol-1/K-1)
x01=10.0904; % (单位mol/L-1)
x02=1.2625;% (单位mol/L-1)
k1=k01.*exp(-(E1./(R.*T)));
k2=k02.*exp(-(E2./(R.*T)));
f1=k1.*x1.^m1.*x2.^n1+k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;
f2=k1.*x1.^m1.*x2.^n1+2*k2.*(2*(x01-x1)-(x02-x2)).^m2.*x2.^n2;

我运行的时候,总提示我变量没有定义,但是前面明明已经定义过了的啊,不明白~~~

[ Last edited by kuhailangyu on 2010-3-24 at 21:48 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 只做陌生人 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 271分求调剂学校 +10 zph158488! 2026-04-02 10/500 2026-04-03 14:31 by 1753564080
[考研] 求调剂 +9 akdhjs 2026-03-31 11/550 2026-04-03 13:32 by akdhjs
[考研] 生物学硕341求调剂 +4 你笑起来像云朵 2026-04-03 4/200 2026-04-03 10:32 by macy2011
[考研] 316求调剂 +14 舟自梗 2026-04-01 18/900 2026-04-03 10:28 by linyelide
[考研] 325分化学调剂 +5 15771691647 2026-04-02 5/250 2026-04-03 09:58 by ChemPharm
[考研] 286求调剂 +4 lim0922 2026-04-02 4/200 2026-04-03 09:46 by JourneyLucky
[考研] 一志愿厦门大学材料工程专硕354找调剂!!! +8 贝呗钡钡 2026-03-30 8/400 2026-04-03 09:41 by hypershenger
[考研] 309分085801求调剂 +10 学员Gtwj7W 2026-03-31 10/500 2026-04-02 22:42 by yunlongyang
[考研] 一志愿华中农业071010,总分320求调剂 +6 困困困困坤坤 2026-04-02 6/300 2026-04-02 21:28 by dongzh2009
[考研] 环境科学与工程334分求调剂 +7 王一一依依 2026-03-30 9/450 2026-04-02 21:15 by 1104338198
[考研] 求调剂求调剂 +7 121. 2026-04-02 7/350 2026-04-02 19:15 by dick_runner
[考研] 362求调剂 +14 西南交材料专硕3 2026-03-31 14/700 2026-04-02 17:50 by yunlongyang
[考研] 337求调剂 +11 《树》 2026-03-29 11/550 2026-04-02 10:20 by 不吃魚的貓
[考研] 材料求调剂 +10 呢呢妮妮 2026-04-01 13/650 2026-04-02 09:17 by olim
[考研] 材料调剂 +12 一样YWY 2026-04-01 12/600 2026-04-02 00:21 by 百秒光年
[考研] 材料科学与工程339求调剂 +11 hyz0119 2026-03-31 12/600 2026-04-01 18:40 by 伟大河北
[考研] 0703求调剂 +4 zizimo 2026-03-31 4/200 2026-04-01 16:04 by yanflower7133
[考研] 一志愿中海洋320化学工程与技术学硕求调剂 +8 披星河 2026-03-30 8/400 2026-03-31 08:53 by lbsjt
[考研] 福建理工大学材料学院先进合金团队招收考研调剂学生 +3 大华金商都 2026-03-30 4/200 2026-03-31 01:04 by 方英俊602
[考研] 331环境科学与工程求调剂 +3 熠然好运气 2026-03-27 3/150 2026-03-28 04:11 by fmesaito
信息提示
请填处理意见