abspackedheight.m

来自「本代码为黄华江编著《实用化工计算机模拟—MATLAB在化学工程中的应用》的配套车」· M 代码 · 共 41 行

M
41
字号
function AbsPackedHeight
% Gas Absorption in Packed Towers
% 计算填料吸收塔的总传质单元数NOG
%
% 采用自适应Lobatto求积(Adaptive Lobatto quadrature)函数quadl()进行数值积分
% 
%   Author: HUANG Huajiang
%   Copyright 2003 UNILAB Research Center, 
%   East China University of Science and Technology, Shanghai, PRC
%   $Revision: 1.0 $  $Date: 2003/02/23 $

clear all
clc

% 离散平衡数据
xi = 1e-3*[1.96  1.40	0.846	0.562	0.422	0.281   0.141   0.056];
yi = 1e-3*[51.3	 34.2	18.6	11.2	7.63	4.21    1.58    0.658];

G2L = 1/40;     % 气液比   
x2 = 0;         % 塔顶液相摩尔分率    
y2 = 0.005;     % 塔顶气相摩尔分率
y1 = 0.055;     % 塔底气相摩尔分率
HOG = 0.69;     % 传质单元高度(m)

sp = csaps(xi,yi,1);    % 与sp = spline(xi,yi)等效

% 画拟合曲线,直观地检查拟合效果是否良好
fnplt(sp); hold on,plot(xi,yi,'ok'), hold off

NOG = quadl(@func,y2,y1,[],[],sp,G2L,x2,y2);  % 总传质单元数NOG

disp('计算结果:')
fprintf('\n   总传质单元数为:%.2f\n',NOG)
fprintf('\n   填料塔高度为:%.2f %s\n',NOG * HOG,'(m)')

% ------------------------------------------------------------------
function f = func(y,sp,G2L,x2,y2)    % 定义被积函数
var = x2/(1-x2) + G2L*(y./(1-y)-y2/(1-y2));
x = var./(1+var);           % 操作方程
yeq = fnval(sp,x);          % 平衡关系
f = 1./(y - yeq);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?