24СʱÈÈÃŰæ¿éÅÅÐаñ    

±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 442  |  »Ø¸´: 0

beyondyzs

Í­³æ (СÓÐÃûÆø)

[ÇóÖú] ¶þÔª×÷ÓòÎÊý

ÎÒÓÃÁ¢·½ÐÍ״̬·½³Ì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<error
    %     break;
    %     end
   
end
plot(k12_record,F,'.')
%%
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ beyondyzs µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 297Çóµ÷¼Á +10 ljy20040718£¡ 2026-04-03 11/550 2026-04-03 22:57 by linyelide
[¿¼ÑÐ] Ò»Ö¾Ô¸±±½»´ó²ÄÁϹ¤³Ì×Ü·Ö358 +3 cs0106 2026-04-03 3/150 2026-04-03 21:27 by à£à£à£0119
[¿¼ÑÐ] ѧ˶288µ÷¼Á!!! +3 СÍõxw123 2026-04-03 3/150 2026-04-03 21:20 by à£à£à£0119
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤µ÷¼ÁÒ»Ö¾Ô¸´óÁ¬º£ÊÂ085600£¬349 +11 ³ÔµÄ²»ÉÙ 2026-03-30 11/550 2026-04-03 18:05 by Jimmyandyou
[¿¼ÑÐ] 368Çóµ÷¼Á +4 ½ñ»ªÏ° 2026-04-03 6/300 2026-04-03 13:46 by ½ñ»ªÏ°
[¿¼ÑÐ] 08¹¤¿Æ£¬295£¬½ÓÊÜ¿çרҵµ÷¼Á +8 lmnlzy 2026-03-30 8/400 2026-04-03 13:08 by nalakaiqi
[¿¼ÑÐ] ÊýÒ»Ó¢Ò»285Çóµ÷¼Á +7 AZMK 2026-04-03 9/450 2026-04-03 13:03 by ms629
[¿¼ÑÐ] Ò»Ö¾Ô¸»ª¶«Àí¹¤´óѧ£¬080500ѧ˶£¬317·Ö£¬Çóµ÷¼Á +13 s1145 2026-03-31 15/750 2026-04-03 11:44 by msi123
[¿¼ÑÐ] »·¾³285·Ö£¬¹ýÁù¼¶£¬Çóµ÷¼Á +9 xhr12 2026-04-02 9/450 2026-04-03 10:23 by »¯Ñ§»¯¹¤Ë¶Ê¿ÕÐÉ
[¿¼ÑÐ] 282Çóµ÷¼Á +3 aaa³µÁ¾ 2026-04-02 3/150 2026-04-02 21:55 by zllcz
[¿¼ÑÐ] 324Çóµ÷¼Á +5 ÏëÉÏѧÇóµ÷ 2026-04-01 6/300 2026-04-02 10:16 by sanrepian
[¿¼ÑÐ] 372Çóµ÷¼Á +3 jjÓ¿77 2026-04-02 3/150 2026-04-02 09:57 by olim
[¿¼ÑÐ] 348»·¾³¹¤³Ìµ÷¼Á +3 ÎâÑå׿24k 2026-04-01 3/150 2026-04-02 09:14 by nanaliuyun
[¿¼ÑÐ] 298Çóµ÷¼Á +4 ʲôÊÇÅÖÍ·Óã 2026-03-30 6/300 2026-04-01 22:06 by ¿Í¶ûÃÀµÂ
[¿¼ÑÐ] 286Çóµ÷¼Á +5 Sa67890. 2026-04-01 7/350 2026-04-01 19:50 by 6781022
[¿¼ÑÐ] 0703Çóµ÷¼Á +4 zizimo 2026-03-31 4/200 2026-04-01 16:04 by yanflower7133
[¿¼ÑÐ] 358Çóµ÷¼Á +3 ÍõÏòÑô»¨ 2026-03-31 3/150 2026-04-01 09:56 by zzchen2000
[¿¼ÑÐ] Çóµ÷¼Á£ºÒ»Ö¾Ô¸£ºÄϾ©´óѧ רҵ£º0705 ×Ü·Ö320 £¬±¾¿Æ985£¬ËÄÁù¼¶Òѹý +3 lfy760306 2026-03-31 3/150 2026-04-01 01:57 by Creta
[¿¼ÑÐ] ²ÄÁϹ¤³Ì085601Êý¶þÓ¢Ò»335Çóµ÷¼Á +5 Ë«ÂíβƦÀϰå2 2026-03-31 5/250 2026-03-31 19:07 by Wang200018
[¿¼ÑÐ] 0703»¯Ñ§321·ÖÇóµ÷¼Á +10 Èýdd. 2026-03-30 11/550 2026-03-30 19:24 by markhwc
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û