38
1 V13(I)=VC(I)**(1.DO/3.DO)
DO 3 I=1,NC
VCIJ(I,I)=VC(I)
PIIJ(I,I)=PII(I)
TCIJ(I,I)=TC(I)
DO 3 J=1,NC
IF(I.GE.J) GO TO 3
VCIJ(I,J)=(1.DO-LIJ(I,J))*((V13(I)+V13(J))/2.)**3
PIIJ(I,J)=(VC(I)*PII(I)+VC(J)*PII(J))/(VC(I)+VC(J))
TCU(I,J)=(1.D0-DIJ(I,J))*(TC(I)*TC(J))**0.5
VCIJ(J,I)=VCIJ(I,J)
PIIJ(J,I)=PIIJ(I,J)
TCIJ(J,I)=TCIJ(I,J)
3 CONTINUE
VCM=0.D0
PIM=0.D0
TCM=0.D0
DO 5 I=1,NC
DO 5 J=1,NC
VCM=VCM+Y(I)*Y(J)*VCIJ(I,J)
PIM=PIM+Y(I)*Y(J)*VCIJ(I,J)*PIIJ(I,J)
5 TCM=TCM+Y(I)*Y(J)*VCIJ(I,J)*TCIJ(I,J)**2
PIM=PIM/VCM
TCM=(TCM/VCM)**0.5
PCM=8.31451D-3*(0.28707D0-0.05559*PIM)*TCM/VCM
RETURN
END
SUBROUTINE PHASE
IMPLICIT REAL*8(A-H,O-Z)
COMMON/Z/Z/RM/RM/T/T/P/P/PCM/PCM/AI/AO,A1
IF(T.LT.250D0.OR.T.GT.340D0.OR.P.LE.0D0.OR.P.GT.12D0) THEN
Z=0D0
GO TO 134
ENDIF
PR=P/PCM
RO=9D3*P/(RM*T*(1.1*PR+0.7D0))
CALL FUN(RO)
CALL OMTAU(RO,T)
IF(Z.EQ.0D0) GO TO 134
Z=1.D0+AO
134 RETURN
END
С Подпрограмма, реализующая итерационный процесс определения
С плотности из уравнения состояния (метод Ньютона)
SUBROUTINE FUN(X)
IMPLICIT REAL*8(A-H,О-Z)
COMMON/P/P/RM/RM/T/T/AI/AO,A1
ITER=1
1 CONTINUE
NPRIZ=0
IF(ITER.NE.l) NPRIZ=1
CALL COMPL(X,T,NPRIZ)