24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1275  |  回复: 3

liqiang0915

木虫 (初入文坛)

[求助] 哪位大神帮忙看一下MATLAB求解微分方程的问题? 已有1人参与

clear all
clc
global  L Ct Ac rhoB Cp H1 H2 U dt TJ U TJ  us E1 E2 R us
L = 4;                  % 反应管长, m
rhoB = 770;             % 催化剂堆积密度, kg/m3
rhog =691.82            % 液体混合物密度, kg/m3
CA0=4.136              % 2M1B摩尔流率, moles/hr
CB0=37.22             % 2M2B摩尔流率, moles/hr
CC0 = 41.36;                  % MeOH摩尔流率, moles/hr
Cp = 131.33;                  % 比热, kJ/kmol K
U = 0.105;                         % 传热系数, kJ/m2 hr K
dt = 0.025;                    % 管径, m  
TJ = 333.15;                      % 冷却温度, K
T0 = 343.15;                 % 物料进口温度(初始温度), K
H1 = 33600;                  % 反应2M1B→T的反应热, kJ/kmol
H2 = 26800;             % 反应2M2B→T的反应热, kJ/kmol
us = 3.11               % 空速,h-1

% 活化能, kJ/kmol
E1 =89830  ;           
E2 =120010 ;                                      

R = 8.314;                      % 理想气体常数, kJ/kmol K

Ac = pi*(dt/2)^2;       % 反应管的横截面积, m2


[z, y] = ode45(@Equations, [0 L], [CA0 CB0 CC0 T0])
CA = y(:, 1);
CB = y(:, 2);
CC = y(:, 3);
xA = (CA0-CA)./CA0;                        % A的转化率
xB = (CB0-CB)./CB0;                    % B的转化率
xB = [0; xB]
xC = (CC0-CC)./CC0;                    % C的转化率
xC = [0; xC]

% 图形输出
plot(z, y(:, 4))        % 温度分布
xlabel('z')
ylabel('T (K)')
figure
plot(z, xA, 'r-')       % 转化率分布
xlabel('z')
ylabel('x_A')
figure
plot(z, CA, 'r-', z, CB, 'k--', z, CC, 'b:')    % 浓度分布
xlabel('z')
ylabel('C_A, C_B, C_C')
legend('C_A', 'C_B', 'C_C')

function [rA, rB, rC, k1, k2,K1,K2] = Rates(y(1), y(2), y(3), T)    % 反应动力学
global E1 E2 R CC0

% 速度常数, kmol/kg catalyst hr
k1 = exp(-E1/(R*T) + 35.35);
k2 = exp(-E2/(R*T) + 42.47);
% 反应平衡常数
K1= exp(-8.3881+4041.2/T);
K2= exp(-8.2473+3225.3/T);

% 反应速度, kmol/kg catalyst hr
     
rA = -k1*CA*CC + k1/K1*(CC0-CC)         % 2M1B的消耗速率
rB = -k2*CB*CC + k2/K2*(CC0-CC);        % 2M2B的消耗速率
rC = -k1*CA*CC + k1/K1*(CC0-CC)-k2*CB*CC + k2/K2*(CC0-CC);   % 甲醇的总反应速度

function dydz = Equations(z, y)                         % 模型方程组
global   Ct Ac rhoB Cp H1 H2 U dt TJ U
CA = y(1);                                    % A---2M1B
CB = y(2);                                    % B---2M2B
CC = y(3);                                    % C---MeOH
T = y(4);

% 反应速度
[rA, rB, rC, k1, k2,K1,K2] = Rates(y(1), y(2), y(3), T)

% 物料平衡
dCAdz = rhoB*rA/us;
dCBdz = rhoB*rB/us;
dCCdz = rhoB*rC/us;

% 热量衡算
dTdz = ( rhoB*((-H1*k1*y(1)*y(3))-(-H2*k2*y(2)*y(3)))-4*U*(T-TJ)/dt )/(us*rhog*Cp);
dydz = [dCAdz; dCBdz; dCCdz; dTdz];
回复此楼

» 猜你喜欢

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

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

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
图形如附图1。
CODE:
function test33
clear all;clc
L = 4;                  % 反应管长, m
CA0=4.136;              % 2M1B摩尔流率, moles/hr
CB0=37.22  ;           % 2M2B摩尔流率, moles/hr
CC0 = 41.36;                  % MeOH摩尔流率, moles/hr
Cp = 131.33;                  % 比热, kJ/kmol K
U = 0.105;                         % 传热系数, kJ/m2 hr K
dt = 0.025;                    % 管径, m  
TJ = 333.15;                      % 冷却温度, K
T0 = 343.15;  
[z, y] = ode45(@Equations,[0 L],[CA0 CB0 CC0 T0]);
[z y(:,1) y(:,2) y(:,3) ]
CA = y(:, 1);
CB = y(:, 2);
CC = y(:, 3);
xA = (CA0-CA)./CA0;                        % A的转化率
xB = (CB0-CB)./CB0;                    % B的转化率
xB = [0; xB];
xC = (CC0-CC)./CC0;                    % C的转化率
xC = [0; xC];

% 图形输出
figure(1)
plot(z, y(:, 4))        % 温度分布
xlabel('z')
ylabel('T (K)')
figure(2)
plot(z, xA, 'r-')       % 转化率分布
xlabel('z')
ylabel('x_A')
figure(3)
plot(z, CA, 'ro-', z, CB, 'm>-', z, CC, 'b*-')    % 浓度分布
xlabel('z')
ylabel('C_A, C_B, C_C')
legend('C_A', 'C_B', 'C_C')



function dydz = Equations(z, y)

rhoB = 770;             % 催化剂堆积密度, kg/m3
rhog =691.82   ;         % 液体混合物密度, kg/m3
CA0=4.136;              % 2M1B摩尔流率, moles/hr
CB0=37.22  ;           % 2M2B摩尔流率, moles/hr
CC0 = 41.36;                  % MeOH摩尔流率, moles/hr
Cp = 131.33;                  % 比热, kJ/kmol K
U = 0.105;                         % 传热系数, kJ/m2 hr K
dt = 0.025;                    % 管径, m  
TJ = 333.15;                      % 冷却温度, K
T0 = 343.15;                 % 物料进口温度(初始温度), K
H1 = 33600;                  % 反应2M1B→T的反应热, kJ/kmol
H2 = 26800;             % 反应2M2B→T的反应热, kJ/kmol
us = 3.11   ;            % 空速,h-1

% 活化能, kJ/kmol
E1 =89830  ;           
E2 =120010 ;                                       

R = 8.314;                      % 理想气体常数, kJ/kmol K

Ac = pi*(dt/2)^2;       % 反应管的横截面积, m2



CA = y(1);                                    % A---2M1B
CB = y(2);                                    % B---2M2B
CC = y(3);                                    % C---MeOH
T = y(4);
% 速度常数, kmol/kg catalyst hr
k1 = exp(-E1/(R*T) + 35.35);
k2 = exp(-E2/(R*T) + 42.47);
% 反应平衡常数
K1= exp(-8.3881+4041.2/T);
K2= exp(-8.2473+3225.3/T);
% 反应速度, kmol/kg catalyst hr   
rA = -k1*CA*CC + k1/K1*(CC0-CC)  ;       % 2M1B的消耗速率
rB = -k2*CB*CC + k2/K2*(CC0-CC);        % 2M2B的消耗速率
rC = -k1*CA*CC + k1/K1*(CC0-CC)-k2*CB*CC + k2/K2*(CC0-CC);   % 甲醇的总反应速度

                         % 模型方程组


% 反应速度


% 物料平衡
dCAdz = rhoB*rA/us;
dCBdz = rhoB*rB/us;
dCCdz = rhoB*rC/us;

% 热量衡算
dTdz = ( rhoB*((-H1*k1*y(1)*y(3))-(-H2*k2*y(2)*y(3)))-4*U*(T-TJ)/dt )/(us*rhog*Cp);
dydz = [dCAdz; dCBdz; dCCdz; dTdz];

哪位大神帮忙看一下MATLAB求解微分方程的问题?
附图1.jpg

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2014-02-17 21:02:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liqiang0915

木虫 (初入文坛)

引用回帖:
2楼: Originally posted by 月只蓝 at 2014-02-17 21:02:13
图形如附图1。


function test33
clear all;clc
L = 4;                  % 反应管长, m
CA0=4.136;              % 2M1B摩尔流率, moles/hr
CB0=37.22  ;           % 2M2B摩尔流率, moles/hr
CC0 = 41.3 ...

算的时候还是出现错误,烦劳您再看看。
??? Error using ==> feval
Undefined function or method 'Equations' for input arguments of type 'double'.

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

Error in ==> ode45 at 173
[neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ...
3楼2014-02-18 10:30:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
liqiang0915: 金币+50, ★★★★★最佳答案, 3Q 2014-02-18 15:18:45
引用回帖:
3楼: Originally posted by liqiang0915 at 2014-02-18 10:30:35
算的时候还是出现错误,烦劳您再看看。
??? Error using ==> feval
Undefined function or method 'Equations' for input arguments of type 'double'.

Error in ==> odearguments at 110
f0 = feval( ...

我在二楼贴出的代码,整体复制,粘贴进一个m文件中,运行。
我在上午11点左右测试,无错误。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
4楼2014-02-18 11:07:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 liqiang0915 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料0856 英一数二 323 求调剂 +14 袁sy 2026-04-01 14/700 2026-04-05 18:18 by cql1109
[考研] 318求调剂 +11 ykyhsa 2026-04-05 13/650 2026-04-05 12:44 by aidndnjck
[考研] 一志愿江南大学085501机械工程专硕326分,本科佳木斯大学 +5 顾若浮生 2026-04-03 9/450 2026-04-05 09:57 by 1753564080
[考研] 301求调剂 +18 骆驼男人 2026-04-02 18/900 2026-04-04 20:33 by 蓝云思雨
[考研] 334求调剂 +8 曾仰之 2026-04-03 8/400 2026-04-04 11:16 by w_xuqing
[考研] 一志愿南昌大学324求调剂 +9 hanamiko 2026-03-30 9/450 2026-04-04 11:04 by 猪会飞
[考研] 材料科学与工程考研 +10 拯救皮特托先生 2026-04-02 10/500 2026-04-03 23:57 by userper
[考研] 兽医调剂 +3 wh119216 2026-04-02 3/150 2026-04-03 19:34 by zrongyan
[考研] 材料科学与工程339求调剂 +12 hyz0119 2026-03-31 13/650 2026-04-03 18:33 by ls刘帅
[考研] 机械专硕297 +3 Afksy 2026-04-03 3/150 2026-04-03 14:24 by 1753564080
[考研] 366求调剂 +7 sbdnd 2026-04-03 7/350 2026-04-03 12:40 by cymywx
[考研] 土木水利328分求调剂 +6 疾风知劲草666 2026-04-02 6/300 2026-04-03 11:38 by znian
[考研] 生物学求调剂 +3 15064154688 2026-04-03 3/150 2026-04-03 10:28 by macy2011
[考研] 081200-11408-276学硕求调剂 +3 崔wj 2026-04-02 3/150 2026-04-02 15:06 by cal0306
[考研] 材料求调剂 +10 呢呢妮妮 2026-04-01 13/650 2026-04-02 09:17 by olim
[考研] 11408 321分求调剂 +3 huchun12138 2026-03-30 4/200 2026-04-01 22:48 by guanxin1001
[考研] 304求调剂 +12 素年祭语 2026-03-31 15/750 2026-04-01 22:41 by peike
[考研] 298求调剂 +4 什么是胖头鱼 2026-03-30 6/300 2026-04-01 22:06 by 客尔美德
[考研] 0817化工学硕调剂 +11 努力上岸中! 2026-03-31 11/550 2026-04-01 20:30 by 赖春艳
[考研] 本2一志愿C9-333分,材料科学与工程,求调剂 +9 升升不降 2026-03-31 9/450 2026-03-31 18:01 by 无际的草原
信息提示
请填处理意见