Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Программа расчёта реактора идеального смешения



Program RIS;

Const n=4; m=2;

l=6;

R=8.314;

R1=0.00845;

PP=0.103;

Type mas1=array[1..n] of real;

mas2=array[1..n+1] of real;

mas3=array[1..m] of real;

mas4=array[1..l] of real;

Var c,a,b,p,d:mas1;

f:mas2;

k,k0,E,Q:mas3;

tau:mas4;

t,tk,h,tem,xa,ca0,cb0,cc0,cd0,tem0:real;

i, j, jn, nn: integer;

f1,f2:text;{файловые переменные}

{процедура для расчёта правых частей уравнений математической модели РИС}

Procedure pr(c:mas1;k,Q:mas3;tau:mas4;tem:real;var f:mas2);

var cp,s:real; {теплоёмкость реакционной смеси}

cc:mas1;

begin

{пересчёт концентраций в мольные доли}

s:=0;

for i:=1 to n do

s:=s+c[i];

for i:=1 to n do

cc[i]:=c[i]/s;

cp:=0;

for i:=1 to n do

cp:=cp+(a[i]+b[i]*tem+p[i]*tem*tem+d[i]*tem*tem*tem)*4.1887*cc[i];

f[1]:=(ca0-c[1])/tau[j]-k[1]*c[1];

f[2]:=(cb0-c[2])/tau[j]+k[1]*c[1]-k[2]*c[2];

f[3]:=(cc0-c[3])/tau[j]+k[2]*c[2];

f[4]:=(cd0-c[4])/tau[j]+k[2]*c[2];

f[5]:=(tem0-tem)/tau[j]+(Q[1]*k[1]*c[1]+Q[2]*k[2]*c[2])*R1*tem/PP/cp;

end;

begin {Основная программа}

assign(f1,'dris.pas'); reset(f1);

assign(f2,'rris.pas'); rewrite(f2);

readln(f1,ca0,cb0,cc0,cd0);

for i:=1 to m do read(f1,k[i]); readln(f1);

for i:=1 to m do read(f1,E[i]); readln(f1);

for i:=1 to m do read(f1,Q[i]); readln(f1);

readln(f1,h,tk,tem0);

for i:=1 to l do read(f1,tau[i]); readln(f1);

for i:=1 to n do readln(f1,a[i],b[i],p[i],d[i]);

for i:=1 to m do

k0[i]:=k[i]/exp(-E[i]/(R*tem0));

nn:=Trunc(Int(tk/h/10));

writeln(f2,' Результаты расчёта');

writeln(f2);

for j:=1 to l do

begin

t:=0; jn:=0; c[1]:=ca0; c[2]:=cb0; c[3]:=cc0; c[4]:=cd0; tem:=tem0;

writeln(f2,'Таблица-',j,' Расчёт РИС для времени контакта ', tau[j]:4:1,' сек');

writeln(f2,'Время, с n-C8H18 i-C8H18 C4H10 C4H8 T,K');

writeln(f2,t:5:0,c[1]:11:3,c[2]:10:3,c[3]:10:3,c[4]:10:3,tem:12:3);

repeat

t:=t+h; jn:=jn+1;

for i:=1 to m do

k[i]:=k0[i]*exp(-E[i]/(R*tem));

pr(c,k,Q,tau,tem,f);

for i:=1 to n do

c[i]:=c[i]+h*f[i];

tem:=tem+h*f[n+1];

if jn=nn then begin

writeln(f2,t:5:0,c[1]:11:3,c[2]:10:3,c[3]:10:3,c[4]:10:3,tem:12:3);

jn:=0; end;

until t>=tk;

xa:=(ca0-c[1])/ca0;

writeln(f2,'Степень превращения в РИС xa=',xa:5:3);

writeln(f2);

end;

close(f1); close(f2);

end.





Дата публикования: 2015-03-26; Прочитано: 340 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...