间歇式反应器的优化分析(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
在葡萄酒的葡萄汁中,有腐败的酵母会对风味产生负面影响。为了消除它,酿酒厂使用SO2。然而,这对人类健康有毒,世界卫生组织(WHO)提倡立即减少其消费。使用SO2的替代方案是添加杀伤酵母以消除或减少不需要的酵母。在以前的工作中,发现pH是控制杀伤酵母种群的相关变量,因此,对于不良酵母的生长。它改善了杀伤酵母和抑制剂的适应性。此外,它是通过葡萄酒中允许的有机酸操纵的变量。此外,还提出了对数学模型的新改进,将参数变化与pH值相结合。同样,使用Matlab模拟新模型,通过蒙特卡罗方法进行优化,以最小化腐败酵母种群并最大化杀手的生长。物镜的最佳值为pH 3.98。仿真结果经过实验验证。改进的模型是酿酒行业的需要,它允许腐败酵母控制。
📚2 运行结果
运行结果如下:
N = 1000;
tiempo=0:1:256;
umaxk=zeros (N,1); umaxs=zeros (N,1); Ak=zeros (N,1); As=zeros (N,1); a=zeros (N,1); udk=zeros (N,1);
uds=zeros (N,1); K=zeros (N,1); alfa=zeros (N,1); W=zeros (N,1); pH=zeros (N,1);
cost = zeros (N,1);
tiempom = zeros (length(tiempo), N); Xvkm= zeros (length(tiempo), N);
Xvsm= zeros (length(tiempo), N); Xdkm= zeros (length(tiempo), N); Xdsm= zeros (length(tiempo), N);
Tm= zeros (length(tiempo), N); Im= zeros (length(tiempo), N);
a0=0.0000000002;
udk0=0.000015;
uds0=0.000015;
W0=0.000000003;
beta=1;
% Condiciones iniciales inoculo lev, otros y coeficientes del modelo
Xvk(1)=381174;
Xvs(1)=2140671;
I(1)=0;
T(1)=0;
ro(1)=0;
for n = 1:N
pH=random('unif',3.2,4.2);
umaxk=(0.188516824*pH^2-1.411097392*pH+2.68722006)*10;
umaxs=(-0.004177951*pH+0.018921349)*10;
Ak=380*pH^2-3020*pH+6022.8;
As=380*pH^2-3020*pH+6022.8;
alfa=-0.0016*pH^2+0.01264*pH-0.024064;
K=-0.000002548*pH^2+0.0000191252*pH-0.0000351091;
a=random('unif',a0*1,a0*1);
udk=random('unif',udk0*1,udk0*1);
uds=random('unif',uds0*1,uds0*1);
W=random('unif',W0*1,W0*1);
Xvk(1)=400000;
Xvs(1)=1600000;
I(1)=0;
T(1)=0;
for j=2:length(tiempo)
Xvk(j)=Xvk(j-1)+0.1*(umaxk*Xvk(j-1)*(1-Ak*I(j-1))-udk*Xvk(j-1));
Xvs(j)=Xvs(j-1)+0.1*(umaxs*Xvs(j-1)*(1-As*I(j-1))-uds*Xvs(j-1)-K*Xvs(j-1)*T(j-1))+heaviside(ro(j-1))*beta;
T(j)=T(j-1)+0.1*(alfa*(umaxk*Xvk(j-1)*(1-Ak*I(j-1))-W*Xvs(j-1)*T(j-1)));
I(j)=I(j-1)+0.1*a*(umaxk*Xvk(j-1)*(1-Ak*I(j-1))+umaxs*Xvs(j-1)*(1-As*I(j-1)));
ro(j)=(Xvk(j-1)-Xvs(j-1));
end
Xvsmax = max(Xvs);
Xvkmax = max(Xvk);
umaxk1(n)=umaxk; umaxs1(n)=umaxs; Ak1(n)=Ak;
As1(n)=As;
a1(n)=a;
udk1(n)=udk;
uds1(n)=uds;
K1(n)=K;
alfa1(n)=alfa;
W1(n)=W;
pH1(n)=pH;
J(n,:) = [n pH umaxk umaxs Xvs(257) Xvk(257)];
tiempom(:,n)=tiempo; Xvsm(:,n)= Xvs; Xvkm(:,n)= Xvk;
Tm(:,n)=T; Im(:,n)=I;
end
save montecarlo.mat
[costo, It] = min (cost);
[~,s]= sort(J(:,5),'descend');
Jord= J(s,:);
[~,s]= sort(J(:,6),'ascend');
Jord2= J(s,:);
'mejor pH para disminuir contaminante y valor final alcanzado de la contaminante'
display(Jord(n,2));
display(Jord(n,5));
c = Jord(n,1);
'mejor pH para aumentar controladora y valor final alcanzado de la biocontroladora'
display(Jord2(n,2));
display(Jord2(n,6));
d = Jord2(n,1);
Xk=Xvkm';
Xk1=Xk(d,:);
Xs=Xvsm';
Xs1=Xs(c,:);
w=J(:,6);
h= 1:N;
figure('name','J y Xvk');
clf;
scatter(h,w');
hold;
w2=J(:,5);
figure('name','J y Xvs');
clf;
scatter(h,w2');
hold;
w3=J(:,2);
figure('name','J y pH');
clf;
scatter(h,w3');
hold;
figure('name','mala');
clf;
plot(tiempo,Xs1,'k');
hold;
🎉3 参考文献
部分理论来源于网络,如有侵权请联系删除。
[1]Benjamín Kuchen (2022) Optimization of batch reactors: Application to the biocontrol of spoilage yeasts in wines
[2]王广亮.根据英国卫生安全执行局的资料对间歇式反应器事故的分析(摘译)(四)[J].化工劳动保护,2001(09):313-315.
🌈4 Matlab代码实现
相关文章
- matlab直方图均衡化代码各种方法_数据直方图matlab代码
- matlab画三维函数图像代码_excel绘制三维图形
- 随机振动 matlab,Matlab内建psd函数在工程随机振动谱分析中的修正方法「建议收藏」
- nsga2 matlab,NSGA2算法特征选择MATLAB实现(多目标)
- BP神经网络预测matlab代码讲解与实现步骤
- PID控制的MATLAB仿真(1)
- matlab怎么对语音信号处理,语音信号处理MATLAB程序
- [图像]Canny检测的Matlab实现(含代码)「建议收藏」
- matlab 插值出错,MATLAB插值问题
- matlab中interp1什么意思,matlab中interp1函数是什么意思啊?
- C++find函数用法_MATLAB中find的用法
- 拓端tecdat|matlab预测ARMA-GARCH 条件均值和方差模型
- matlab预测ARMA-GARCH 条件均值和方差模型|附代码数据
- matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类|附代码数据
- zigzag扫描matlab,ZIGZAG扫描的MATLAB实现
- Matlab代码之plot函数的坐标点显示
- Matlab循环语句_matlab中if语句的用法
- MATLAB图像倾斜校正算法实现:图像倾斜角检测及校正|附代码数据
- Matlab函数定义_matlab子函数
- 详细步骤讲解matlab代码通过Coder编译为c++并用vs2019调用
- Matlab期末大作业记录(无代码版) – 学金融的文史哲小生
- 【MATLAB】数据类型 ( 执行代码 | 清空命令 | 注释 | 数字 | 字符 | 字符串 )
- 【MATLAB】基本绘图 ( 保存图像 | saveas 函数 )
- 【MATLAB】进阶绘图 ( Bar 条形图 | bar 函数 | bar3 函数 | Bar 条形图样式 | 堆叠条形图 | 水平条形图 | barh 函数 )
- 【MATLAB】进阶绘图 ( Pie Chart 饼图 | pie 函数 | 三维饼图 | pie3 函数 )
- 【数字信号处理】卷积编程实现 ( Matlab 卷积和多项式乘法 conv 函数 | 使用 matlab 代码求卷积并绘图 )
- 快速安装Linux上的MATLAB(linux安装matlab)