1、化反化学反应器理论 二氧化硫转化器最优化班 级 学 号 姓 名 二氧化硫转化率最优化一、题目1.反应原理及条件:SO21/2O2=SO3,四段绝热反应器,级间间接换热。2.基础数据:混合物恒压热容Cp0.2549kcal/kgK-H =23135kcal/kmol床层空隙率y554kg/m3进口SO2浓度8.0%,O2浓度9.0%,其余为氮气。处理量131kmol SO2/hr,要求最终转化率98。3.动力学方程:式中:4.基本要求:(1)在TX图上,做出平衡线,至少4条等速率线;(2)以一维拟均相平推流模型为基础,在催化剂用量最少的前提下,总的及各段的催化剂装量;进出口温度、转化率;并在T-
2、X图上标出折线;(3)要求的最终转化率从98变化到99对催化剂用量的影响;(4)如果有关系:YO2YSO221,SO2进口浓度在79之间变化,对催化剂装量的影响;(5)对最优化结果进行校核。二、计算过程1平衡线和等速率线的分析计算由于反应速率的表达式是温度和转化率的函数,所以在入口浓度一定的条件下,当反应速率等于零的时候,不同的温度对应不同的转化率。根据这些数据就可以作出此反应的平衡线。改变反应速率的大小,分别可以得到不同反应速率下的等速率线。平衡线和等速率线数据的计算程序如下:#include#include#define R 1.987#define h 0.0001double r(do
3、uble x, double t, double xso2) double r,r1,r2,r3, B,keff,K, Kp,Pso2,Pso3,Po2; if(t=693.15 & t=748.15 & t=873.15) keff = 1.5128*pow(10,7)*exp(-35992 / (R*t); K = 2.3*pow(10,-8)*exp(27200/(R*t); Kp=2.26203*pow(10,-5)*exp(11295.3 / t); Pso2=(xso2-xso2*x) / (1-xso2*x/2); Pso3=xso2*x / (1-xso2*x/2); Po2=
4、(0.17-xso2-xso2*x/2) / (1-xso2*x/2); r1 =Po2*Pso2/Pso3; r2 =Pso3/(Pso2*sqrt(Po2)*Kp); B =48148*exp(-7355.5/t); r3 =sqrt(B+(B-1)*(1-x)/x)+sqrt(K*(1-x)/x); r =keff*K*r1*(1-r2*r2)/(r3*r3); return(r);void main() double xso2=0.08,x,t,r0=0,y; int i; for(i=0;i5;i+) printf(R%d=%en,i+1,r0); for(t=693.15;t=1)
5、 break; y=fabs(pow(10,5)*r(x,t,xso2)-pow(10,5)*r0); while(y0.001); printf(%5.2f %5.4fn,t,x); t=t+5; r0=r0+pow(10,-6); 运行上述程序后,获得的数据见下表:温度T/k反应速率r1060.0 1.0 2.0 3.0 4.0 693.150.9809 698.150.9797 703.150.9782 0.0117 708.150.9762 0.2719 713.150.9740 0.4750 718.150.9715 0.6205 0.1844 723.150.9686 0.7214
6、 0.3863 0.0784 728.150.9655 0.7901 0.5373 0.2903 0.0638 733.150.9620 0.8365 0.6473 0.4536 0.2689 738.150.9582 0.8674 0.7265 0.5761 0.4285 743.150.9541 0.8873 0.7828 0.6669 0.5500 748.150.9496 0.8995 0.8224 0.7336 0.6416 753.150.9447 0.8964 0.8237 0.7398 0.6529 758.150.9394 0.8927 0.8239 0.7444 0.661
7、7 763.150.9338 0.8885 0.8231 0.7474 0.6685 768.150.9278 0.8837 0.8214 0.7491 0.6736 773.150.9213 0.8784 0.8188 0.7497 0.6772 778.150.9144 0.8725 0.8154 0.7492 0.6794 783.150.9071 0.8662 0.8113 0.7477 0.6804 788.150.8994 0.8593 0.8065 0.7453 0.6803 793.150.8912 0.8519 0.8010 0.7421 0.6792 798.150.882
8、6 0.8440 0.7948 0.7380 0.6772 803.150.8735 0.8357 0.7881 0.7332 0.6743 808.150.8640 0.8268 0.7807 0.7277 0.6706 813.150.8540 0.8175 0.7727 0.7215 0.6661 818.150.8436 0.8077 0.7643 0.7146 0.6609 823.150.8327 0.7975 0.7552 0.7071 0.6550 828.150.8215 0.7868 0.7457 0.6990 0.6484 833.150.8097 0.7757 0.73
9、57 0.6904 0.6412 838.150.7976 0.7642 0.7252 0.6812 0.6335 843.150.7851 0.7523 0.7142 0.6716 0.6252 848.150.7722 0.7400 0.7029 0.6614 0.6163 853.150.7590 0.7273 0.6912 0.6508 0.6070 858.150.7454 0.7143 0.6791 0.6398 0.5972 863.150.7315 0.7010 0.6666 0.6285 0.5870 868.150.7174 0.6874 0.6539 0.6167 0.5
10、764 873.150.7030 0.6736 0.6408 0.6047 0.5654 根据上述数据制图2-1:图2-1 平衡线及等速率线图上图以温度为横坐标,转化率为纵坐标。最上面一条为平衡线,平衡线下的四条曲线为反应速率分别为110-6、210-6、310-6、410-6 (mol/gcatsec)时的等速率线。2在规定转化率下,催化剂用量最小的计算分析过程根据入口组成,设定入口温度,根据反应对入口温度所求偏导数在这一段内对组成的积分为零,可以求得此段出口转化率,即下一段的入口组成。由于段内操作线的斜率为(),因此根据入口温度、入口组成和出口组成计算可得出口温度。要使催化剂用量最少,应使
11、,根据计算每段的最小催化剂用量。循环计算四段后可得最后的出口转化率,若不能满足要求(x98),则重新设定第一段入口温度,再进行计算直至满足条件。上述计算过程的C语言程序如下:#include#include#define R 1.987#define h 0.0001double r(double x, double t, double xso2) double r,r1,r2,r3,keff,K,B,Kp,Pso2,Pso3,Po2; if(t=693.15 & t=748.15 & t873.15) xout = x1; goto end; sum=sum+h*(fun1(x1,t1,xs
12、o2)+fun1(x2,t2,xso2)/20; x1=x2; while(sum=873.15) goto end ; sum=sum+(1/r(x1,t1,xso2)+1/r(x2,t2,xso2)*h/1000; x1=x2; while(x2=xou); end: wcat=sum*131*1000/3600; return(wcat);void main() double xso2=0.08,xout,tout,x0=0.0001,t0,t00=719,t1,wcat,wsum; int i,j;loop1: wsum=0.0; x0=0.0001; t0=t00; printf(1
13、 tin=%f xin=%en,t00,x0); for(i=0;ih); x0=xout; t0=t1; printf(%d tin= %f xin= %fn,i+2,t0,xout); printf(Wsum=%f n,wsum); t00=t00-0.1; printf(nn); if(x0=693.15 & t=748.15 & t873.15) xout = x1; goto end; sum=sum+h*(fun1(x1,t1,xso2)+fun1(x2,t2,xso2)/20; x1=x2; while(sum=873.15) goto end ; sum=sum+(1/r(x1
14、,t1,xso2)+1/r(x2,t2,xso2)*h/1000; x1=x2; while(x2h); x0=xout; t0=t1; i+; xini=xout; tini=t0; if(i=3) goto loop2; t00=t00-0.1; if(x0=0.98) goto loop1; printf(i tin xin tout xout wcatn); for(j=0;j=3;j+) wcat=wjifen(xinj,xouj,tinj,xso2); printf(%d %5.5f %5.5f %5.5f %5.5f %5.5fn,j+1,tinj,xinj,touj,xouj,wcat); wsum=wsum+wcat; printf(wsum= %f (KG) %f (Ton)n,wsum,wsum/1000);当二氧化硫浓度在7%到9%之间取值时,运行上面程序得到结果如下表所示:XSO2Tin/KXinTout/KXoutWcat/KGWsum0.0701717.000.00010873.149360.671104648.3185126480.67KG=26.481T2738.420.67110790.777740.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1