- •Тамбовский государственный технический университет
- •Задание на курсовой проект (работу) Студент Князева Элина Михайловна группа сзс-41
- •Министерство образования Российской Федерации тамбовский государственный технический унивеситет
- •Зав. Кафедрой
- •Пояснительная записка
- •Специальность 280202 - «Инженерная защита окружающей среды» номер, наименование
- •Содержание
- •Введение.
- •Описание процесса.
- •Разработка алгоритма решения
- •Исследование модели
- •Текст программы:
- •Результаты анализа
- •Список использованной литературы
Исследование модели
Расход поступающего бензола непостоянен и может изменяется. Для учета этих изменений используем генератор случайных чисел. Так как средний расход бензола равен 0,01 м3/с генерирование производим в пределах от 0,005 м3/с до 0,015 м3/с.
0,008482 |
0,011590 |
0,011590 |
0,014438 |
0,010036 |
0,010554 |
0,014179 |
0,013920 |
0,012366 |
0,008482 |
0,014438 |
0,005375 |
0,006669 |
0,013402 |
0,011331 |
0,011331 |
0,011590 |
0,005634 |
0,013661 |
0,013920 |
0,006928 |
Значение расхода имеет нормальное распределение и характеризуется минимальным и максимальным значениями 0,005375 м/с и 0,014438 м/с соответственно, и математическим ожиданием – 0,009.
По полученным данным построим гистограмму распределения случайных величин:
При нормальном распределении генератор выглядит следующим образом:
double xn(double m, double s, double min, double max)
{
int i;
double xr,x,sum;
m: for(i=0, sum=0;i<6;i++)
sum+=(double)rand()/RAND_MAX;
x=sqrt(2)*s*(sum-3)+m;
if(x<min||x>max) goto m;
return x;
}
Блок-схема
Текст программы:
#include <stdio.h>
#include <math.h>
# include <stdlib.h>
#define n 7
double xn(double m, double s, double min, double max)
{
int i;
double xr,x;
m: for(i=0, x=0;i<6;i++)
x+=(double)rand()/RAND_MAX;
x=sqrt(2)*s*(x-3)+m;
if(x<min||x>max) goto m;
return x;
}
int main()
{ int i,N=10000,l,n1,n2;
double G=0.012, L, kla=5e-5, S=1, dz=0.1, ys=0.135, T=3600, h, dt, V, V1, V2, m, xr, J, P;
double x1[n+2],x0[n+2]={0,0,0,0,0,0,0};
double y1[n+2],y0[n+2]={0,0,0,0,0,0,0};
clrscr(); randomize ();
n1=0; n2=0;
for (l=0;l<N;l++)
{
L=xn(0.01,0.012,0.005,0.015);
x0[n+1]=0;
y0[0]=0.3;
V=S*dz;
V1=V*ys;
V2=V-V*ys;
dt=10;
h=T/dt;
for(m=0;m<h;m++)
{
for(i=1;i<n+1;i++)
{ xr= y0[i]*18;
J=kla*(xr-x0[i]);
x1[i]=x0[i]+dt*(L*(x0[i+1]-x0[i])+J)/V1;
y1[i]=y0[i]+dt*(G*(y0[i-1]-y0[i])-J)/V2;
}
for(i=1;i<n+1;i++)
{
x0[i]=x1[i];
y0[i]=y1[i];
}
}
printf("\n g=%g x1=%g yn=%g ", L, x0[1],y0[n]);
getch();
if(y0[n]>0.05) n1++;
}
P=(double)n2/N;
printf ("\n P=%lf", P);
getch();
return 0;
}
Результаты анализа
Данный график показывает, что с увеличением расхода степень извлечения бензола увеличивается, т.к. увеличивается поверхность контакта фаз.
Рассмотрим другую вероятность:
Данная зависимость показывает, что при увеличении числа тарелок эффективность работы установки увеличивается.
Список использованной литературы
В. В. Кафаров, М. Б. Глебов «Математическое моделирование основных процессов химических производств»
Ю. И. Дытнерский «Основные процессы и аппараты химической технологии»
К. Ф. Павлов, П. Г. Романков, А. А. Носков «Примеры и задачи по курсу процессов и аппаратов химической технологии»