C*********************************************************************** C PROPATH V9.1 ----- Peng-Robinson Equation (PRMX-SS.EXE) * C by K.KAWAKITA (Oct.1994) * C*********************************************************************** real PR1(5), PR2(5), CP1(10), CP2(10), A, T, P, Z real ZL, ZV, VL, VV, HL, HV, SL, SV character ID*40 character IDENTM*40 C -------------------------------------------------------------- C C -------------------------------------------------------------- call KPAMES(3,1) call KPAMES(1,1) call STNKAS(1,1) C -------------------------------------------------------------- C START2() C -------------------------------------------------------------- C PR(Molecular weight and Critical Constants) for R22 C JAR, Thermophysical Properties of Refrigerants(R22) PR1(1) = 86.469 PR1(2) = 369.3 PR1(3) = 4.988E+6 PR1(4) = 1/(513.0/PR1(1)) PR1(5) = 0.205 C CP(cp at ideal gas condition) for R22 C Tokita,K., Refrigeration No.52 Vol.600 (in Japanese) CP1(1) = 3 CP1(2) = 250 CP1(3) = 350 ZZZ = PR1(1) * 1000 CP1(4) = -917.3 * ZZZ CP1(5) = 28.755 * ZZZ CP1(6) = -2.030E-02 * ZZZ CP1(7) = 2.5351E-03 * ZZZ CP1(8) = -2.185E-06 * ZZZ CP1(9) = 7.1E-10 * ZZZ C PR(Molecular weight and Critical Constants) for R114 C JAR, Thermophysical Properties of Refrigerants(R114) PR2(1) = 170.922 PR2(2) = 418.78 PR2(3) = 3.248E+6 PR2(4) = 1.0/(576.0/PR2(1)) PR2(5) = 0.234 C CP(cp at ideal gas condition) for R114 C Tokita,K., Refrigeration No.52 Vol.600(in Japanese) CP2(1) = 2 CP2(2) = 250 CP2(3) = 400 ZZZ = PR2(1) * 1000 CP2(4) = -0.12916 * ZZZ CP2(5) = 4.7009E-03 * ZZZ CP2(6) = -8.612E-06 * ZZZ CP2(7) = 6.05E-09 * ZZZ CP2(8) = 0.0 * ZZZ CP2(9) = 0.0 * ZZZ C call START2(ECODE, PR1, PR2, CP1, CP2, 0.976) goto 100 C C -------------------------------------------------------------- C IDENTM C -------------------------------------------------------------- C ID = 'aaaaaaaaa' C ID = IDENTM(1,'V', ID) C write(*,*) ID C C -------------------------------------------------------------- C CRPM C -------------------------------------------------------------- TC1 = CRPM(1, 'T') PC1 = CRPM(1, 'P') TC2 = CRPM(2, 'T') PC2 = CRPM(2, 'P') write(*.*) 'Critical constants of each component' write(*,*) TC1,PC1 write(*,*) TC2,PC2 C ************************************************************ C C P = 2 tp 15 bar C C ************************************************************ do 10 P=1.0, 15.0, 1.0 T = 30 Z = 0.5; V = 1; VV = 1; VL = 1; C -------------------------------------------------------------- C IPHASE, QMIX C -------------------------------------------------------------- IP = IPHASE(T, P, Z) XX = QMIX(T,P,Z) ZL = 0; ZV = 0; call SUBXY(ECODE, T, P, ZL, ZV, VL, VV, HL, HV, SL, SV) write(*,1000) IP, T, P/10, Z,XX, ZL, ZV, 1/VL, 1/VV, + HL/1e3, HV/1e3, SL/1e3, SV/1e3 1000 format(i2, f6.1, f6.2,'[MPa],', + ' Z:', f6.3, ' QLY:', f6.3, + ' Y:', f6.3, f6.3, + ' RHO:', f5.0, f7.2, + ' H:', f6.1, f7.1, + ' S:', f6.3, f7.3) call SUBMIX(1,ECODE, T, P, Z, V, H, S) write(*,1001) P/1e+1, T, 1/V, H/1e3, S/1e3 T = 0 call SUBMIX(2,ECODE, T, P, Z, V, H, S) write(*,1001) P/1e+1, T, 1/V, H/1e3, S/1e3 1001 format('--- P:', f7.2, ', T:', f6.1, + ' rho:', f7.2, ', H:', f6.1, ' S:',f6.3) C -------------------------------------------------------------- C TBP, TDP, SUBTD, SUBTB C -------------------------------------------------------------- T = 0; T2 = TBP(P, Z) call SUBTB(ECODE, T, P, Z, V, H, S) write(*,1002) P/1e+1, T, Z, 1/V, H/1e3, S/1e3, T2 T = 0; T2 = TDP(P, Z) call SUBTD(ECODE, T, P, Z, V, H, S) write(*,1002) P/1e+1, T, Z, 1/V, H/1e3, S/1e3, T2 1002 format('-SUBT[DB],T[DB]', + ': P:', f7.2, ', T:', f6.1, ', Z:', f6.3, + ', rho:', f7.2, ', H:', f6.1, ' S:',f6.3, + ', T2:', f6.1) C C test SUBPUR C T = 30 call SUBPUR(1,ECODE, T, P, V, H, S) write(*,1003) P/1e+1, T, 1/V, H/1e3, S/1e3 call SUBPUR(2,ECODE, T, P, V, H, S) write(*,1003) P/1e+1, T, 1/V, H/1e3, S/1e3 1003 format('-SUBPUR: P:', f7.2, ', T:', f6.1, + ' rho:', f7.2, ', H:', f6.1, ' S:',f6.3) C C test SUBTSP, TSPM C I = 1; T = 0; T2 = TSPM(I,P) call SUBTSP(I, ECODE, T, P, VL, VV, HL, HV, SL, SV) write(*,1004) P/10, T, 1/VL, 1/VV, + HL/1e3, HV/1e3, SL/1e3, SV/1e3, T2 I = 2; T = 0; T2 = TSPM(I,P) call SUBTSP(I, ECODE, T, P, VL, VV, HL, HV, SL, SV) write(*,1004) P/10, T, 1/VL, 1/VV, + HL/1e3, HV/1e3, SL/1e3, SV/1e3, T2 1004 format('-SUBTSP,TSPM: ', + ': P:', f7.2, ', T:', f6.1, + ' RHO:', f5.0, f7.2, + ' H:', f6.1, f7.1, + ' S:', f6.3, f7.3, + ', T2:', f6.1) write(*,*) 10 continue write(*,*); write(*,*); write(*,*) 100 continue C ************************************************************ C C T = -10 to 60 C C C ************************************************************ do 20 T = -10, 60, 10 P = 5.0 Z = 0.5; V = 1; VV = 1; VL = 1; C C test IPHASE, QMIX C IP = IPHASE(T, P, Z) XX = QMIX(T,P,Z) ZL = 0; ZV = 0; call SUBXY(ECODE, T, P, ZL, ZV, VL, VV, HL, HV, SL, SV) write(*,2000) IP, T, P/10, Z,XX, ZL, ZV, 1/VL, 1/VV, + HL/1e3, HV/1e3, SL/1e3, SV/1e3 2000 format(i2, f6.1, f6.2,'[MPa],', + ' Z:', f6.3, ' QLY:', f6.3, + ' Y:', f6.3, f6.3, + ' RHO:', f5.0, f7.2, + ' H:', f6.1, f7.1, + ' S:', f6.3, f7.3) call SUBMIX(1,ECODE, T, P, Z, V, H, S) write(*,2001) P/1e+1, T, 1/V, H/1e3, S/1e3 T2 = 0 call SUBMIX(2,ECODE, T2, P, Z, V, H, S) write(*,2001) P/1e+1, T2, 1/V, H/1e3, S/1e3 2001 format('--- P:', f7.2, ', T:', f6.1, + ' rho:', f7.2, ', H:', f6.1, ' S:',f6.3) C C C test PBT, PDT, SUBPD, SUBPB C P = 5.0; P2 = PBT(T, Z) call SUBPB(ECODE, T, P, Z, V, H, S) write(*,2002) P/1e+1, T, Z, 1/V, H/1e3, S/1e3, P2/10 P = 5.0; P2 = PDT(T, Z) call SUBPD(ECODE, T, P, Z, V, H, S) write(*,2002) P/1e+1, T, Z, 1/V, H/1e3, S/1e3, P2/10 2002 format('-SUBP[DB],P[DB]', + ': P:', f7.2, ', T:', f6.1, ', Z:', f6.3, + ', rho:', f7.2, ', H:', f6.1, ' S:',f6.3, + ', P2:', f7.2) C C test SUBPUR C P = 5.0 call SUBPUR(1,ECODE, T, P, V, H, S) write(*,2003) P/1e+1, T, 1/V, H/1e3, S/1e3 call SUBPUR(2,ECODE, T, P, V, H, S) write(*,2003) P/1e+1, T, 1/V, H/1e3, S/1e3 2003 format('-SUBPUR: P:', f7.2, ', T:', f6.1, + ' rho:', f7.2, ', H:', f6.1, ' S:',f6.3) C C test SUBPST, PSTM C I = 1; P = 0; P2 = PSTM(I,T) call SUBPST(I, ECODE, T, P, VL, VV, HL, HV, SL, SV) write(*,2004) P/10, T, 1/VL, 1/VV, + HL/1e3, HV/1e3, SL/1e3, SV/1e3, P2/10 I = 2; P = 0; P2 = PSTM(I,T) call SUBPST(I, ECODE, T, P, VL, VV, HL, HV, SL, SV) write(*,2004) P/10, T, 1/VL, 1/VV, + HL/1e3, HV/1e3, SL/1e3, SV/1e3, P2/10 2004 format('-SUBPST,PSTM: ', + ': P:', f7.2, ', T:', f6.1, + ' RHO:', f5.0, f7.2, + ' H:', f6.1, f7.1, + ' S:', f6.3, f7.3, + ', P2:', f7.2) write(*,*) 20 continue write(*,*); write(*,*); write(*,*) END