我用立方型状态方程P-R方程以及vdW-1混合规则进行气液相平衡计算,但是通过计算得到,无法求出二元相互作用参数,请各位高手及前辈指教。

clc;

clear;

close all;

%%

%êäèëêy¾Y

N = 2; R = 8.314;

Tc1 = 304.12;  Tc2 = 774.30;

omga1 = 0.228; omga2 = 0.786;

T1 = 185.10; T2 = 600.8;

Tr1 = T1 / Tc1;   Tr2 = T2 / Tc2;

Pc1 = 7.38*10^6; Pc2 = 1.56*10^6;

P=[7.38    8.30    9.12    10.28    11.80    13.20    14.38    15.95].*10^6;

T=328.2;

y1=[0.9952    0.9913    0.9905    0.9887    0.9867    0.9851    0.9834    0.9816];

y2 = 1 - y1;

x1=[0.4365    0.4788    0.5136    0.5507    0.6132    0.6521    0.7006      0.7998];

x2 = 1 - x1;

%%

%¼ÆËã a1 a2 b1 b2 (a1 a2¼ÆËã1«ê½óëÔ-1«ê½ËÆoõ2»ò»Ö£©

k1 = 0.37464 + 1.54226 * omga1 - 0.26992 * omga1^2;

k2 = 0.37464 + 1.54226 * omga2 - 0.26992 * omga2^2;

a1 = 0.45724 * R^2 * Tc1^2 / Pc1 * (1 + k1 * (1 - sqrt(Tr1)))^2;

a2 = 0.45724 * R^2 * Tc2^2 / Pc2 * (1 + k2 * (1 - sqrt(Tr2)))^2;

b1 = 0.0778 * R * Tc1 / Pc1;

b2 = 0.0778 * R * Tc2 / Pc2;

%%

k12=0;  %¼ùéèk12

error=1; %¼ùéèÎó2î

StepLength = 2/0.01;

%%

%½¨á¢·½3ì

syms A B Z Vs;

GasEq = Z.^ 3 - (1 - B).* Z.^2 + (A - 3.*B.^2 - 2*B).*Z - (A * B - B.^2 - B.^3);

eq_mid = sym('eq_mid');

%3õê¼»ˉ±äá¿

Vs1_out=zeros(length(P),1);

Vs2_out=zeros(length(P),1);

Z1_out=zeros(length(P),1);

Z2_out=zeros(length(P),1);

ln_fai_l=zeros(length(P),1);

ln_fai_g=zeros(length(P),1);

fai_l=zeros(length(P),1);

fai_g=zeros(length(P),1);

F=zeros(length(1:1:StepLength),1);

fg=zeros(length(1:1:StepLength),1);

fl=zeros(length(1:1:StepLength),1);

k12_record=zeros(length(1:1:StepLength),1);

%%

%Ñ-»·¿aê¼

for I=150:1:150

I

%é趨k12μıä»ˉ

k12 = k12 + 0.01;

k12_record(I) = k12;

%Çóêy×éam bm

am1 = a1 .* y1.^2 + 2 .*sqrt( a1 .* a2 ).* (1 - k12) + a2 .* y2.^2;

bm1 = b1 .* y1 + b2 .* y2;

am2 = a1 .* x1.^2 + 2 .*sqrt( a1 .* a2 ).* (1 - k12) + a2 .* x2.^2;

bm2 = b1 .* x1 + b2 .* x2;

%′úèë·½3ì×é2¢Çó½a

for j=1:1:length(P)

%Çó½aÆøìå·½3ì

eq_mid = subs(GasEq, A, am1(j) * P(j) / (R^2 * T^2));

eq_mid = subs(eq_mid, B, bm1(j) * P(j) / (R * T));

eq_mid = subs(eq_mid, Z, Vs * P(j) / (R * T));

t_mid = subs(vpa(solve(eq_mid, Vs),6));

for t0=1:1:length(t_mid)

%         Vs_out(j) = max(subs(vpa(solve(eq_mid, Vs),6))); %Vs¸ÃèçoÎè¡Öμ£¿£¿3ìDòÔYê±Ä¬èÏè¡×î′óÖμ

%         Vs_out(j) = min(subs(vpa(solve(eq_mid, Vs),6))); %Vs¸ÃèçoÎè¡Öμ£¿£¿3ìDòÔYê±Ä¬èÏè¡×î′óÖμ

if isreal(t_mid(t0))

Vs1_out(j) = t_mid(t0);

end

end

Z1_out(j) = Vs1_out(j) * P(j) / (R * T);

A1_out = am1(j) * P(j) / (R^2 * T^2);

B1_out = bm1(j) * P(j) / (R * T);

%òoÏà

eq_mid = subs(GasEq, A, am2(j) * P(j) / (R^2 * T^2));

eq_mid = subs(eq_mid, B, bm2(j) * P(j) / (R * T));

eq_mid = subs(eq_mid, Z, Vs * P(j) / (R * T));

t_mid = subs(vpa(solve(eq_mid, Vs),6));

for t0=1:1:length(t_mid)

%         Vs_out(j) = max(subs(vpa(solve(eq_mid, Vs),6))); %Vs¸ÃèçoÎè¡Öμ£¿£¿3ìDòÔYê±Ä¬èÏè¡×î′óÖμ

%         Vs_out(j) = min(subs(vpa(solve(eq_mid, Vs),6))); %Vs¸ÃèçoÎè¡Öμ£¿£¿3ìDòÔYê±Ä¬èÏè¡×î′óÖμ

if isreal(t_mid(t0))

Vs2_out(j) = t_mid(t0);

end

end

Z2_out(j) = Vs2_out(j) * P(j) / (R * T);

A2_out = am2(j) * P(j) / (R^2 * T^2);

B2_out = bm2(j) * P(j) / (R * T);

%Çó½afai

ln_fai_g(j) = b1 / bm1(j) * (Z1_out(j)-1)-...

log(P(j) *(Vs1_out(j) -bm1(j))/R*T) +...

am1(j)/(2*sqrt(2)*bm1(j)*R*T) *...

( b1/bm1(j)-2/am1(j)*(a1*y1+sqrt(a1*a2)*(1 - k12 )* y2))*...

log((Vs1_out(j) + (1 + sqrt(2)) * bm1(j))/(Vs1_out(j)-(sqrt(2)+1)*bm1(j)));

fai_g(j) = exp(ln_fai_g(j));

ln_fai_l(j) =b1 / bm1(j) * (Z2_out(j)-1)-...

log(P(j) *(Vs2_out(j) -bm1(j))/R*T) +...

am1(j)/(2*sqrt(2)*bm1(j)*R*T) *...

( b1/bm1(j)-2/am1(j)*(a1*x1+sqrt(a1*a2)*(1 - k12 )* x2))*...

log((Vs2_out(j) + (1 + sqrt(2)) * bm1(j))/(Vs2_out(j)-(sqrt(2)+1)*bm1(j)));;

fai_l(j) = exp(ln_fai_l(j));

end

fg = P .* y1 .* fai_g';

fl = P .* x1 .* fai_l';

F(I) = sum(x1 .* fai_l' - y1 .* fai_g');

%èç1ûD¡óúÎó2î¾ííË3öÑ-»·

%     if F

%     break;

%     end

end

plot(k12_record,F,'.')

%%

2元参数matlab图,二元作用参数 - 仿真模拟 - MATLAB - 小木虫论坛-学术科研互动平台...相关推荐

  1. matlab模糊控制m函数,模糊控制m文件运行出错 - 程序语言 - MATLAB/Mathematica - 小木虫论坛-学术科研互动平台...

    Error using parsrule (line 182) Output MF index is too high Error in readfis (line 231) out=parsrule ...

  2. matlab寻峰代码,寻峰的函数!! - 程序语言 - MATLAB/Mathematica - 小木虫论坛-学术科研互动平台...

    我这里的数据是pgm的,我将其处理成多个高斯拟合的形式,现阶段只能将其最大的那个拟合出来,其他的高斯拟合我需要找到其峰值的位置! 我把前边的语句先列举上: function [ OutArr ] = ...

  3. matlab迭代算法实例sor,SOR迭代 - 程序语言 - MATLAB/Mathematica - 小木虫论坛-学术科研互动平台...

    方法一:建立了SOR.m的脚本文件,实现的是SOR迭代,程序语言如下: %SOR迭代 clear; clc; format long; i=1; n=6; H=hilb(n); X=ones(n,1) ...

  4. matlab 吸波材料,如何计算多层吸波材料的反射率 - 材料 - 小木虫 - 学术 科研 互动社区...

    各位大神,小女子最近在做多层吸波材料,可以测得每层材料的电磁参数,然后请同学编了一个计算多层吸波材料反射率的MATLAB程序,但行出来总觉得好像有点问题,有没有哪位可以帮我看一下程序对不对呢? PS: ...

  5. matlab用最小二乘法确定系数,如何用MATLAB最小二乘法得出回归方程系数? - 程序语言 - 小木虫 - 学术 科研 互动社区...

    cooooldog 这个需要dingd用1stOpt再算一次 公式里面x和y的位置交换一下; 我的方法效果不好,我就不做了. cooooldog 结果虽然不好,还是放一个在这里供应急的情况下参考吧&q ...

  6. matlab中lower,【求助】matlab,这个错误究竟是什么? - 数学 - 小木虫 - 学术 科研 互动社区...

    谢谢以上两位,程序改动了一下,以前的问题暂时没有出现,但是出现了下边的问题: 主程序中是这样写的,调用curvefunzscanAbs作为拟合方程,其中NonAbs是拟合参数,transIntUp,p ...

  7. hermite矩阵matlab,Hermite矩阵的特征值计算问题 - 数学 - 小木虫 - 学术 科研 互动社区...

    楼主,首先要知道Hermite矩阵就是实对称矩阵的复数版本.我更愿意用:A^H=A来定义Hermite矩阵,这里A是任何一个n阶的复数矩阵,H表示共轭转置.你的这个问题有三个步骤,但是我不清楚你的意图 ...

  8. 坎贝尔图 matlab,关于坎贝尔图,我真的不知道自己到底错在哪里 - 机械 - 小木虫 - 学术 科研 互动社区...

    wuwei184632 我自己顶一下,小木虫里面不是有好多高手吗,真么没有人来帮忙呢 zml372620 引用回帖: wuwei184632 at 2015-07-23 18:25:34 我自己顶一下 ...

  9. matlab拟合参数最优,使用matlab最优化方法拟合获得多个动力学参数中的问题 - 计算模拟 - 小木虫 - 学术 科研 互动社区...

    各位师兄师姐,麻烦大家帮我看一下这个问题.我现在想用一个模型来描述我的实验现象,模型如图所示. 我通过实验有了x-t的实验数据,如下图所示,我现在想用matlab的fmincon函数求解模型中的ks和 ...

  10. 用matlab实现机械臂的仿真,基于MATLAB的SCARA机械臂仿真与性能评估

    工业机器人以其代替人类单调繁重的体力劳动,便于实现自动化提高生产效率等优点,而被广泛应用于工程机械.汽车零部件.轨道交通.轻工造纸等行业,具有可观的经济效益.到2015年,中国机器人市场将成世界最大规 ...

最新文章

  1. 程序员的量化交易之路(35)--Lean之DataFeed数据槽3
  2. 网页的一般布局(标题和脚注100%,内容宽度固定宽度px)
  3. 现代化权限管理解决方案平台推动商业模式的演进
  4. 1.9 通过反射获取注解信息
  5. idea @value提示_IDEA 中springboot 项目使用 注解Autowired 出现红线
  6. 百度以侵犯商业秘密起诉前高管王劲 索赔5000万 内附王劲离职承诺函
  7. ImportError: cannot import name 'PILLOW_VERSION'
  8. net core webAPI NOPI 导出Excel封装
  9. 3D打印机 G代码解释
  10. Vuex入门及进阶笔记
  11. 在VB.NET中生成随机数
  12. 高性能几何多重网格与 GPU 加速
  13. springSecurity小试牛刀
  14. OrientDB入门
  15. Apple公司联系邮箱收录
  16. 第8章、下拉列表框Spinner(从零开始学Android)
  17. 电力系统嵌入式测试平台研究
  18. 【机械】基于matlab实现直齿圆柱齿轮应力计算附matlab代码
  19. echart中国地图,多地图案例
  20. 跨平台Android和IOS百度语音在线识别原生插件

热门文章

  1. 领域知识图谱采坑总结
  2. itext设置字体间距_设计时sketch中字体行高到底该如何设置
  3. 2017年语义理解总结(一)
  4. 关于this指向问题及改变this指向的方法
  5. 大学计算机实验教程实验4,计算机组成原理实验报告(四个实验 图)
  6. 逆流而上的黑胶唱片  数位趋势下的一支奇兵?
  7. 使用大神写的wz框架
  8. 萧红二不二?人是在最日常的生活中流逝的……你窗边革命洪流过去的时候,可能你正在剥一颗鸡蛋
  9. linux读取ads1115ADC例程
  10. oracle19c特性以及CDB环境搭建