mirror of
https://github.com/retro-software/B5500-software.git
synced 2026-03-02 17:44:40 +00:00
1. Commit library tape images, directories, and extracted text files. 2. Commit additional utilities under Unisys-Emode-Tools.
1038 lines
75 KiB
Plaintext
1038 lines
75 KiB
Plaintext
LABEL 0000000000XXXXXX0010000001
|
|
$ CARD LIST
|
|
BEGIN TEST 1
|
|
TEST 2
|
|
COMMENT TEST PROGRAM FOR FLASHW PROCEDURE. TEST 3
|
|
BY A. PAUL OLESON TEST 4
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORP. TEST 5
|
|
CARD SEQUENCE STARTS WITH TEST0001. TEST 6
|
|
DATE OF FIRST ISSUE 12-1-63 ; TEST 7
|
|
FILE IN FLIN (1,10) ; TEST 8
|
|
FILE OUT FIL1 (1,15) ; TEST 9
|
|
BOOLEAN CALCPDC ; TEST 10
|
|
BOOLEAN ARRAY B[0:10] ; TEST 11
|
|
INTEGER I, J, N ; TEST 12
|
|
INTEGER ARRAY PICKK[0:8], KC7[0:20], KC11[0:20,0:2] ; TEST 13
|
|
REAL T, P, VDF, S ; TEST 14
|
|
REAL ARRAY KC1[0:20,0:28], KC2[0:20,0:3], KC3[0:3], KC4[0:5], TEST 15
|
|
KC5[0:2,0:3], KC6[0:3],KC8[0:20,0:2,0:2], TEST 16
|
|
KC9[0:20,0:2,0:2], KC10[0:20,0:5], KC12[0:20], K[0:20], TEST 17
|
|
PK[0:20], Z[0:20], X[0:20], Y[0:20], LIMITFW[0:4] ; TEST 18
|
|
TEST 19
|
|
LABEL ENDPROB, ERRORFW ; TEST 20
|
|
FORMAT IN F2 (E17.8,3E16.8) , TEST 21
|
|
F3 (X4,2F6.1,F4.1,3F6.3,4I2) ; TEST 22
|
|
TEST 23
|
|
FORMAT OUT FO1 (2F9.5,2E16.8) , TEST 24
|
|
FO2 (3E16.8) ; TEST 25
|
|
TEST 26
|
|
LIST LI1(FOR I ~ 1,2 DO FOR J ~ 1 STEP 1 UNTIL 28 DO TEST 27
|
|
KC1[I,J]), TEST 28
|
|
LI2(T, P, VDF, Z[1], Z[2], Z[3], B[1], B[2], B[3], B[4]), TEST 29
|
|
LI3(T, P, VDF, S) , TEST 30
|
|
L4 (FOR I ~ 1,2,3 DO [Z[I], X[I], Y[I]]) ; TEST 31
|
|
REAL LOGP ; TEST 32
|
|
COMMENT GLOBAL ARRAYS FOR KNGAA PROCEDURE ; TEST 33
|
|
ARRAY TR1S1[0:4], PDC[0:8,0:4], LOGP1[0:7] ; TEST 34
|
|
COMMENT GLOBAL ARRAYS FOR PHIPART PROCEDURE ; TEST 35
|
|
INTEGER ARRAY TADD, ADD[0:5], DEGREE[0:4] ; TEST 36
|
|
ARRAY POLY[0:25], TT[0:4] ; TEST 37
|
|
TEST 38
|
|
PROCEDURE KNGAA (T, P, N, CALCPDC, CALCPT, CALCPP, K, PKT, PKP) ; KNGP001
|
|
|
|
COMMENT N.G.A.A. K-RATIO PROCEDURE. KNGP0002
|
|
BY A. PAUL OLESON AND DONALD L. VOSS KNGP0003
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORPORATION KNGP0004
|
|
FIRST RELEASE DATE: 5-5-63 KNGP0005
|
|
|
|
THIS PROCEDURE CALCULATES VAPOR-LIQUID EQUILIBRIUM RATIOS KNGP0006
|
|
(Y/X) FOR LIGHT HYDROCARBONS BY MEANS OF THE N.G.A.A. KNGP0007
|
|
CORRELATION. ALSO CALCULATED, BY OPTION, ARE THE KNGP0008
|
|
TEMPERATURE AND PRESSURE DERIVATIVES OF THE K-RATIOS. KNGP0009
|
|
COMPONENTS MAY BE REFERENCED TO ANY COMPONENT IN THE KNGP0010
|
|
SYSTEM BY K = K[R](A + B | T + C | T*2), WHERE KNGP0011
|
|
A = KC1[I,2] | P + KC1[I,3], KNGP0012
|
|
B = KC1[I,4] | P + KC1[I,5], KNGP0013
|
|
C = KC1[I,6] | P + KC1[I,7], KNGP0014
|
|
AND T IS DEGREES RANKINE/1000. KNGP0015
|
|
|
|
THE INPUT PARAMETERS ARE KNGP0016
|
|
T - TEMPERATURE, F - REAL KNGP0017
|
|
P - PRESSURE, PSIA - REAL KNGP0018
|
|
N - NUMBER OF COMPONENTS - INTEGER KNGP0019
|
|
CALCPDC - BOOLEAN. IF TRUE, CALCULATE P DEPENDENT KNGP0020
|
|
COEFFICIENTS. FOR CALCPDC = FALSE, P OF THE LAST KNGP0021
|
|
ENTRY MUST EQUAL P OF THE PRESENT ENTRY. KNGP0022
|
|
CALCPT - BOOLEAN. IF TRUE, CALCULATE THE T DERIVATIVE KNGP0023
|
|
OF K. KNGP0024
|
|
CALCPP - BOOLEAN. IF TRUE, CALCULATE THE P DERIVATIVE KNGP0025
|
|
OF K. KNGP0026
|
|
|
|
ALSO, THE VARIABLE KC1 IS NON-LOCAL. KNGP0027
|
|
KC1 - N.G.A.A. COEFFICIENTS - REAL ARRAY [0:N,0:28], KNGP0028
|
|
WHERE THE 28 COEFFICIENTS ARE ALTERNATELY 4 SETS KNGP0029
|
|
OF 7 P COEFFICIENTS. IF KC1[I,1] = 0, COMPONENT KNGP0030
|
|
I IS REFERENCED TO COMPONENT R AND KC1[I,8] = R. KNGP0031
|
|
R IS REAL AND MUST BE GREATER THAN I. KNGP0032
|
|
|
|
THE OUTPUT PARAMETERS ARE KNGP0033
|
|
K - COMPONENT VAPOR-LIQUID EQUILIBRIUM RATIOS (Y/X) - KNGP0034
|
|
REAL ARRAY [0:N] KNGP0035
|
|
PKT - COMPONENT T DERIVATIVES OF K - REAL ARRAY [0:N] KNGP0036
|
|
PKP - COMPONENT P DERIVATIVES OF K - REAL ARRAY [0:N] ; KNGP0037
|
|
|
|
VALUE T, P, N, CALCPDC, CALCPT, CALCPP ; KNGP0038
|
|
INTEGER N ; KNGP0039
|
|
BOOLEAN CALCPDC, CALCPT, CALCPP ; KNGP0040
|
|
REAL T, P ; KNGP0041
|
|
ARRAY K[0], PKT[0], PKP[0] ; KNGP0042
|
|
|
|
BEGIN KNGP0043
|
|
LABEL KNG1, KNG2, KNG3, KNG4, KNG5, KNG6, KNG7, KNG8, KNG9 ; KNGP0044
|
|
INTEGER I, J, U, E, G, TIS1, Q ; KNGP0045
|
|
REAL TRS1, TR1, TR12 ; KNGP0046
|
|
|
|
COMMENT CALCULATE PRESSURE DEPENDENT COEFFICIENTS IF CALCPDC = 1 ;KNGP0050
|
|
IF CALCPDC THEN KNGP0051
|
|
BEGIN KNGP0052
|
|
LOGP ~ LN(P) | 0.1 ; LOGP1[1] ~ 1.0 ; KNGP0053
|
|
FOR U ~ 2 STEP 1 UNTIL 7 DO KNGP0054
|
|
LOGP1[U] ~ LOGP1[U-1] | LOGP ; KNGP0055
|
|
LOGP ~ 10.0 | LOGP ; KNGP0056
|
|
FOR I ~ 1 STEP 1 UNTIL N DO KNGP0057
|
|
BEGIN KNGP0058
|
|
IF KC1[I,1] = 0 THEN GO TO KNG1 ; KNGP0059
|
|
FOR J ~ 1, 8, 15, 22 DO KNGP0060
|
|
BEGIN KNGP0061
|
|
Q ~ J + 6 ; KNGP0062
|
|
E ~ Q DIV 7 ; KNGP0063
|
|
PDC[I,E] ~ 0 ; KNGP0064
|
|
TIS1 ~ 1 - J ; KNGP0065
|
|
FOR U ~ J STEP 1 UNTIL Q DO KNGP0066
|
|
BEGIN KNGP0067
|
|
G ~ U + TIS1 ; KNGP0068
|
|
PDC[I,E] ~ KC1[I,U] | LOGP1[G] + PDC[I,E] KNGP0069
|
|
END KNGP0070
|
|
END ; KNGP0071
|
|
GO TO KNG2 ; KNGP0072
|
|
|
|
COMMENT CALCULATE PRESSURE DEPENDENT COEFFICIENTS OF REFERENCED KNGP0073
|
|
COMPONENTS ; KNGP0074
|
|
KNG1: PDC[I,1] ~ 0 ; KNGP0075
|
|
PDC[I,2] ~ KC1[I,2] | P + KC1[I,3] ; KNGP0076
|
|
PDC[I,3] ~ KC1[I,4] | P + KC1[I,5] ; KNGP0077
|
|
PDC[I,4] ~ KC1[I,6] | P + KC1[I,7] ; KNGP0078
|
|
KNG2: END KNGP0079
|
|
END ; KNGP0080
|
|
|
|
COMMENT CALCULATE K-RATIOS ; KNGP0081
|
|
KNG3: TR1 ~ (T + 459.7) | 0.001 ; TR12 ~ TR1*2 ; KNGP0082
|
|
FOR I ~ N STEP -1 UNTIL 1 DO KNGP0083
|
|
BEGIN KNGP0084
|
|
IF PDC[I,1] = 0 THEN GO TO KNG4 ; KNGP0085
|
|
K[I] ~ EXP (PDC[I,4] | TR12 + PDC[I,3] | TR1 + KNGP0086
|
|
PDC[I,1]/TR1 + PDC[I,2] - LOGP) ; KNGP0087
|
|
GO TO KNG5 ; KNGP0088
|
|
|
|
COMMENT CALCULATE K-RATIOS OF REFERENCED COMPONENTS ; KNGP0089
|
|
KNG4: K[I] ~ K[KC1[I,8]] | (PDC[I,3] | TR1 + PDC[I,2] + KNGP0090
|
|
PDC[I,4] | TR12) ; KNGP0091
|
|
KNG5: END ; KNGP0092
|
|
|
|
COMMENT CALCULATE TEMPERATURE DERIVATIVES OF K-RATIOS, IF CALCPT KNGP0093
|
|
IS TRUE ; KNGP0094
|
|
IF CALCPT THEN KNGP0095
|
|
FOR I ~ N STEP -1 UNTIL 1 DO KNGP0096
|
|
BEGIN KNGP0097
|
|
IF PDC[I,1] = 0 THEN GO TO KNG6 ; KNGP0098
|
|
PKT[I] ~ (-PDC[I,1]/TR12 + 2.0 | PDC[I,4] | TR1 + KNGP0099
|
|
PDC[I,3] ) | 0.001 | K[I] ; KNGP0100
|
|
GO TO KNG7 ; KNGP0101
|
|
|
|
COMMENT CALCULATE TEMPERATURE DERIVATIVES OF K-RATIOS FOR KNGP0102
|
|
REFERENCED COMPONENTS ; KNGP0103
|
|
KNG6: E ~ KC1[I,8] ; KNGP0104
|
|
PKT[I] ~ K[I]/K[E] | PKT[E] + (PDC[I,4] | 2.0 | TR1 + KNGP0105
|
|
PDC[I,3] ) | K[E] | 0.001 ; KNGP0106
|
|
KNG7: END ; KNGP0107
|
|
|
|
COMMENT CALCULATE PRESSURE DERIVATIVES OF K-RATIOS, IF CALCPP IS KNGP0108
|
|
TRUE ; KNGP0109
|
|
IF CALCPP THEN KNGP0110
|
|
FOR I ~ N STEP -1 UNTIL 1 DO KNGP0111
|
|
BEGIN KNGP0112
|
|
IF PDC[I,1] = 0 THEN GO TO KNG8 ; KNGP0113
|
|
FOR J ~ 1, 8, 15, 22 DO KNGP0114
|
|
BEGIN KNGP0115
|
|
Q ~ J + 5 ; KNGP0116
|
|
E ~ (J + 6) DIV 7 ; KNGP0117
|
|
TR1S1[E] ~ 0 ; TRS1 ~ 1.0 ; KNGP0118
|
|
TIS1 ~ 1 - J ; KNGP0119
|
|
FOR U ~ J STEP 1 UNTIL Q DO KNGP0120
|
|
BEGIN KNGP0121
|
|
G ~ U + TIS1 ; KNGP0122
|
|
TR1S1[E] ~ KC1[I,U+1] | LOGP1[G] | TRS1 + TR1S1[E] ; KNGP0123
|
|
TRS1 ~ TRS1 + 1.0 KNGP0124
|
|
END KNGP0125
|
|
END ; KNGP0126
|
|
PKP[I] ~ (TR1S1[4] | TR12 + TR1S1[3] | TR1 + TR1S1[1]/TR1 KNGP0127
|
|
+ TR1S1[2] - 10.0) | 0.1 | K[I]/P ; KNGP0128
|
|
GO TO KNG9 ; KNGP0129
|
|
|
|
COMMENT CALCULATE PRESSURE DERIVATIVES OF K-RATIOS FOR REFERENCED KNGP0130
|
|
COMPONENTS ; KNGP0131
|
|
KNG8: E ~ KC1[I,8] ; KNGP0132
|
|
PKP[I] ~ (KC1[I,6] | TR12 + KC1[I,4] | TR1 + KC1[I,2] ) | KNGP0133
|
|
K[E] + (PDC[I,4] | TR12 + PDC[I,3] | TR1 + PDC[I,2] ) | KNGP0134
|
|
PKP[E] ; KNGP0135
|
|
KNG9: END KNGP0136
|
|
|
|
END KNGAA ; KNGP0137
|
|
PROCEDURE PHIPART (V, DATA, ALEPH, BETA, COEFF, P, S, PHI, SUM) ; SFSB 1
|
|
COMMENT THIS PROCEDURE COMPUTES POINTS ON AN N-DIMENSIONAL SURFACESFSB 2
|
|
AND, BY OPTION, THE PARTIAL DERIVATIVES OF ANY OF THE SFSB 3
|
|
VARIABLES AT THE POINTS IN QUESTION ; SFSB 4
|
|
VALUE V ; SFSB 5
|
|
INTEGER V ; SFSB 6
|
|
INTEGER ARRAY P[0] ; SFSB 7
|
|
BOOLEAN ARRAY S[0] ; SFSB 8
|
|
REAL ARRAY DATA[0], ALEPH[0,0], BETA[0,0], COEFF[0], SUM[0] ; SFSB 9
|
|
REAL PHI ; SFSB 10
|
|
BEGIN SFSB 11
|
|
INTEGER KV, M, T, I, D, PV ; SFSB 12
|
|
BOOLEAN B ; SFSB 14
|
|
REAL DATUM ; SFSB 15
|
|
COMMENT THE SIZE OF POLY IS SUM(P[I]+1), I ~ 1 STEP 1 UNTIL V. IT SFSB 17
|
|
HAS BEEN SET TO A VALUE SO AS NOT TO REQUIRE CALCULATION SFSB 18
|
|
WITH EACH PASS THROUGH PHIPART, BUT IT MAY BE ALTERED. ; SFSB 19
|
|
LABEL POLYCOMPUTE, PARTCOMPUTE, D2, BACK, HERE, FINI, DEPENDENT;SFSB 20
|
|
TADD[1] ~ ADD[1] ~ T ~ 1 ; SFSB 21
|
|
FOR M ~ 1 STEP 1 UNTIL V DO SFSB 22
|
|
BEGIN SFSB 23
|
|
DATUM ~ DATA[M] ; SUM[M] ~ 0 ; SFSB 24
|
|
COMMENT EVALUATE THE POLYNOMIALS ; SFSB 25
|
|
POLYCOMPUTE : SFSB 26
|
|
BEGIN SFSB 27
|
|
POLY[T] ~ 1.0 ; SFSB 28
|
|
POLY[T+1] ~ DATUM + ALEPH[M,1] ; T ~ T + 2 ; SFSB 29
|
|
FOR I ~ 2 STEP 1 UNTIL P[M] DO SFSB 30
|
|
BEGIN SFSB 31
|
|
POLY[T] ~ (ALEPH[M,I] + DATUM) | POLY[T-1] + SFSB 32
|
|
BETA[M,I] | POLY[T-2] ; SFSB 33
|
|
T ~ T + 1 SFSB 34
|
|
END SFSB 35
|
|
END POLYCOMPUTE ; SFSB 36
|
|
TADD[M+1] ~ ADD[M+1] ~ T SFSB 37
|
|
END ; SFSB 38
|
|
B ~ FALSE ; SFSB 39
|
|
COMMENT COMPUTE THE DEPENDENT VARIABLE OR THE PARTIAL ; SFSB 40
|
|
DEPENDENT : SFSB 41
|
|
BEGIN SFSB 42
|
|
D ~ 1 ; SFSB 43
|
|
FOR M ~ 1 STEP 1 UNTIL V DO SFSB 44
|
|
BEGIN SFSB 45
|
|
DEGREE[M] ~ TADD[M] ; TT[M] ~ 0 SFSB 46
|
|
END ; SFSB 47
|
|
PV ~ TADD[V] + P[V] ; SFSB 48
|
|
BACK : FOR I ~ TADD[V] STEP 1 UNTIL PV DO SFSB 49
|
|
BEGIN SFSB 50
|
|
TT[V] ~ COEFF[D] | POLY[I] + TT[V] ; SFSB 51
|
|
D ~ D + 1 SFSB 52
|
|
END ; SFSB 53
|
|
IF V = 1 THEN GO TO FINI ; SFSB 54
|
|
M ~ V - 1 ; SFSB 55
|
|
HERE : TT[M] ~ POLY[DEGREE[M]] | TT[M+1] + TT[M] ; SFSB 56
|
|
TT[M+1] ~ 0 ; SFSB 57
|
|
DEGREE[M] ~ DEGREE[M] + 1 ; SFSB 58
|
|
IF DEGREE[M] { TADD[M] + P[M] THEN GO TO BACK ; SFSB 60
|
|
IF M = 1 THEN GO TO FINI ; SFSB 61
|
|
DEGREE[M] ~ TADD[M] ; M ~ M - 1 ; SFSB 62
|
|
GO TO HERE ; SFSB 63
|
|
FINI : IF B THEN SFSB 64
|
|
BEGIN SFSB 65
|
|
SUM[KV] ~ TT[1] ; GO TO D2 SFSB 66
|
|
END ; SFSB 67
|
|
PHI ~ TT[1] SFSB 68
|
|
END DEPENDENT ; SFSB 69
|
|
FOR KV ~ 1 STEP 1 UNTIL V DO SFSB 70
|
|
BEGIN SFSB 71
|
|
M ~ KV ; SFSB 72
|
|
IF S[M] THEN SFSB 73
|
|
BEGIN SFSB 74
|
|
DATUM ~ DATA[M] ; SFSB 75
|
|
COMMENT EVALUATE THE PARTIAL POLYNOMIALS ; SFSB 76
|
|
PARTCOMPUTE : SFSB 77
|
|
BEGIN SFSB 78
|
|
POLY[T] ~ 0 ; POLY[T+1] ~ 1.0 ; SFSB 79
|
|
T ~ T + 2 ; SFSB 80
|
|
FOR I ~ 2 STEP 1 UNTIL P[M] DO SFSB 81
|
|
BEGIN SFSB 82
|
|
POLY[T] ~ (ALEPH[M,I] + DATUM) | POLY[T-1] + SFSB 83
|
|
POLY[ADD[M]+I-1] + BETA[M,I] | POLY[T-2] ; SFSB 84
|
|
T ~ T + 1 SFSB 85
|
|
END SFSB 86
|
|
END PARTCOMPUTE ; SFSB 87
|
|
T ~ TADD[M] ~ ADD[V+1] ; B ~ TRUE ; SFSB 88
|
|
GO TO DEPENDENT ; SFSB 89
|
|
D2 : TADD[KV] ~ ADD[KV] SFSB 90
|
|
END SFSB 91
|
|
END SFSB 92
|
|
END PHIPART ; SFSB 93
|
|
PROCEDURE ANT1 (X, CALCPX, ANTC, ANT, PANTX) ; ANTP 1
|
|
|
|
COMMENT ANTOINE EQUATION PROCEDURE. ANTP 2
|
|
BY DONALD L. VOSS ANTP 3
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORPORATION ANTP 4
|
|
FIRST RELEASE DATE: 11-1-62 ANTP 5
|
|
|
|
THIS PROCEDURE EVALUATES THE 3-CONSTANT ANTOINE EQUATION. ANTP 6
|
|
|
|
THE INPUT PARAMETERS ARE ANTP 7
|
|
X - INDEPENDENT VARIABLE - REAL ANTP 8
|
|
CALCPX - BOOLEAN. IF TRUE, CALCULATE PANTX. ANTP 9
|
|
ANTC - ANTOINE EQUATION COEFFICIENTS - REAL ARRAY [0:3] ANTP 10
|
|
|
|
THE OUTPUT PARAMETERS ARE ANTP 11
|
|
ANT - VALUE OF THE ANTOINE EQUATION AT X - REAL ANTP 12
|
|
PANTX - X DERIVATIVE OF ANT - REAL ; ANTP 13
|
|
|
|
VALUE X, CALCPX ; ANTP 14
|
|
BOOLEAN CALCPX ; ANTP 15
|
|
REAL X, ANT, PANTX ; ANTP 16
|
|
ARRAY ANTC[0] ; ANTP 17
|
|
|
|
BEGIN ANTP 18
|
|
REAL TRS1 ; ANTP 19
|
|
|
|
COMMENT EVALUATE THE ANTOINE EQUATION ; ANTP 20
|
|
TRS1 ~ ANTC[3] + X ; ANTP 21
|
|
ANT ~ EXP (-ANTC[2]/TRS1 + ANTC[1] ) ; ANTP 22
|
|
|
|
COMMENT IF CALCPX IS TRUE, CALCULATE THE DERIVATIVE OF THE ANTP 23
|
|
ANTOINE EQUATION WITH RESPECT TO X. ; ANTP 24
|
|
IF CALCPX THEN ANTP 25
|
|
PANTX ~ ANTC[2]/TRS1*2 | ANT ANTP 26
|
|
END ANT1 ; ANTP 27
|
|
PROCEDURE KIDEAL (T, P, N, CALCPT, CALCPP, K, PKT, PKP) ; KIDP0001
|
|
|
|
COMMENT IDEAL K-RATIO PROCEDURE. KIDP0002
|
|
BY DONALD L. VOSS KIDP0003
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORPORATION KIDP0004
|
|
FIRST RELEASE DATE: 5-5-63 KIDP0005
|
|
|
|
THIS PROCEDURE CALCULATES VAPOR-LIQUID EQUILIBRIUM RATIOS KIDP0006
|
|
(Y/X), AND THEIR DERIVATIVES WITH RESPECT TO TEMPERATURE KIDP0007
|
|
AND PRESSURE. IDEAL LIQUID AND VAPOR BEHAVIOR IS ASSUMED.KIDP0008
|
|
|
|
THE INPUT PARAMETERS ARE KIDP0009
|
|
T - TEMPERATURE, F - REAL KIDP0010
|
|
P - PRESSURE, PSIA - REAL KIDP0011
|
|
N - NUMBER OF COMPONENTS - INTEGER KIDP0012
|
|
CALCPT - BOOLEAN. IF TRUE, CALCULATE PKT. KIDP0013
|
|
CALCPP - BOOLEAN. IF TRUE, CALCULATE PKP. KIDP0014
|
|
|
|
ALSO, THE VARIABLE KC2 IS NON-LOCAL. KIDP0015
|
|
KC2 - COMPONENT VAPOR PRESSURE COEFFICIENTS - REAL ARRAY KIDP0016
|
|
[0:N,0:3]. KC2 IS USED AS ANTC IN THE ANT1 KIDP0017
|
|
PROCEDURE. KIDP0018
|
|
|
|
THE OUTPUT PARAMETERS ARE KIDP0019
|
|
K - COMPONENT VAPOR-LIQUID EQUILIBRIUM RATIOS (Y/X) - KIDP0020
|
|
REAL ARRAY [0:N] KIDP0021
|
|
PKT - COMPONENT T DERIVATIVES OF K - REAL ARRAY [0:N] KIDP0022
|
|
PKP - COMPONENT P DERIVATIVES OF K - REAL ARRAY [0:N] KIDP0023
|
|
|
|
THE PROCEDURE ANT1 MUST BE DECLARED PRIOR TO KIDEAL. ; KIDP0024
|
|
|
|
VALUE T, P, N, CALCPT, CALCPP ; KIDP0025
|
|
INTEGER N ; KIDP0026
|
|
BOOLEAN CALCPT, CALCPP ; KIDP0027
|
|
REAL T, P ; KIDP0028
|
|
ARRAY K[0], PKT[0], PKP[0] ; KIDP0029
|
|
|
|
BEGIN KIDP0030
|
|
INTEGER I ; KIDP0031
|
|
REAL TRS1 ; KIDP0032
|
|
|
|
TRS1 ~ 1.0/P ; KIDP0033
|
|
FOR I ~ 1 STEP 1 UNTIL N DO KIDP0034
|
|
BEGIN KIDP0035
|
|
|
|
COMMENT ENTER THE ANT1 PROCEDURE TO CALCULATE THE VAPOR PRESSURE KIDP0036
|
|
AND ITS TEMPERATURE DERIVATIVE FOR EACH COMPONENT. ; KIDP0037
|
|
ANT1 (T, CALCPT, KC2[I,*], K[I], PKT[I] ) ; KIDP0038
|
|
|
|
COMMENT CALCULATE THE COMPONENT K-RATIOS. ; KIDP0039
|
|
K[I] ~ K[I] | TRS1 ; KIDP0040
|
|
|
|
COMMENT IF CALCPT IS TRUE, CALCULATE THE COMPONENT T DERIVATIVES KIDP0041
|
|
OF THE K-RATIOS. ; KIDP0042
|
|
IF CALCPT THEN KIDP0043
|
|
PKT[I] ~ PKT[I] | TRS1 ; KIDP0044
|
|
|
|
COMMENT IF CALCPP IS TRUE, CALCULATE THE COMPONENT P DERIVATIVES KIDP0045
|
|
OF THE K-RATIOS. ; KIDP0046
|
|
IF CALCPP THEN KIDP0047
|
|
PKP[I] ~ -K[I] | TRS1 KIDP0048
|
|
END KIDP0049
|
|
|
|
END KIDEAL ; KIDP0050
|
|
PROCEDURE KPOLY (T, N, CALCPT, K, PKT) ; KPYP0001
|
|
|
|
COMMENT RELATIVE VOLATILITY K-RATIO PROCEDURE. KPYP0002
|
|
BY DONALD L. VOSS KPYP0003
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORPORATION KPYP0004
|
|
CARD SEQUENCE CODE STARTS WITH KPYP0001 KPYP0005
|
|
FIRST RELEASE DATE: 5-5-63 KPYP0006
|
|
|
|
THIS PROCEDURE CALCULATES VAPOR-LIQUID EQUILIBRIUM KPYP0007
|
|
K-RATIOS (Y/X) AND THEIR DERIVATIVES WITH RESPECT TO KPYP0008
|
|
TEMPERATURE BY MEANS OF A RELATIVE VOLATILITY EQUATION. KPYP0009
|
|
THE REFERENCE COMPONENT K-RATIO IS CALCULATED BY MEANS KPYP0010
|
|
OF A FOURTH DEGREE POLYNOMIAL IN TEMPERATURE. A SECOND KPYP0011
|
|
DEGREE POLYNOMIAL IS USED FOR THE RELATIVE VOLATILITIES KPYP0012
|
|
OF THE OTHER COMPONENTS. KPYP0013
|
|
|
|
THE INPUT PARAMETERS ARE KPYP0014
|
|
T - TEMPERATURE, F. - REAL KPYP0015
|
|
N - NUMBER OF COMPONENTS - INTEGER KPYP0016
|
|
CALCPT - BOOLEAN. IF TRUE, CALCULATE PKT. KPYP0017
|
|
|
|
IN ADDITION, THE VARIABLES KC4 AND KC5 ARE NON-LOCAL TO KPYP0018
|
|
KPOLY. KPYP0019
|
|
KC4 - REFERENCE COMPONENT K-RATIO COEFFICIENTS - REAL KPYP0020
|
|
ARRAY [0:5] KPYP0021
|
|
KC5 - RELATIVE VOLATILITY COEFFICIENTS OF COMPONENTS - KPYP0022
|
|
REAL ARRAY [0:N,0:3] KPYP0023
|
|
|
|
THE OUTPUT PARAMETERS ARE KPYP0024
|
|
K - COMPONENT K-RATIO - REAL ARRAY [0:N] KPYP0025
|
|
PKT - T DERIVATIVE OF K - REAL ARRAY [0:N] ; KPYP0026
|
|
|
|
VALUE T, N, CALCPT ; KPYP0027
|
|
INTEGER N ; KPYP0028
|
|
BOOLEAN CALCPT ; KPYP0029
|
|
REAL T ; KPYP0030
|
|
ARRAY K[0], PKT[0] ; KPYP0031
|
|
|
|
BEGIN KPYP0032
|
|
INTEGER I ; KPYP0033
|
|
REAL TRS1, KR, PKRT1, RV ; KPYP0034
|
|
|
|
COMMENT CALCULATE THE K-RATIO OF THE REFERENCE COMPONENT, KR. ; KPYP0035
|
|
TRS1 ~ 0.01 | T ; KPYP0036
|
|
KR ~ (((KC4[5] | TRS1 + KC4[4]) | TRS1 + KC4[3]) | TRS1 + KPYP0037
|
|
KC4[2]) | TRS1 + KC4[1] ; KPYP0038
|
|
|
|
COMMENT CALCULATE THE TEMPERATURE DERIVATIVE OF KR, MULTIPLIED BY KPYP0039
|
|
100.0, IF CALCPT IS TRUE. ; KPYP0040
|
|
IF CALCPT THEN KPYP0041
|
|
PKRT1 ~ ((KC4[5] | TRS1 | 4.0 + KC4[4] | 3.0) | TRS1 + KPYP0042
|
|
KC4[3] | 2.0) | TRS1 + KC4[2] ; KPYP0043
|
|
|
|
COMMENT CALCULATE THE COMPONENT K-RATIOS AND, IF CALCPT IS TRUE, KPYP0044
|
|
THEIR TEMPERATURE DERIVATIVES. ; KPYP0045
|
|
FOR I ~ 1 STEP 1 UNTIL N DO KPYP0046
|
|
BEGIN KPYP0047
|
|
RV ~ (KC5[I,3] | TRS1 + KC5[I,2]) | TRS1 + KC5[I,1] ; KPYP0048
|
|
K[I] ~ KR | RV ; KPYP0049
|
|
IF CALCPT THEN KPYP0050
|
|
PKT[I] ~ ((KC5[I,3] | TRS1 | 2.0 + KC5[I,2]) | KR + KPYP0051
|
|
RV | PKRT1) | 0.01 KPYP0052
|
|
END KPYP0053
|
|
|
|
END KPOLY ; KPYP0054
|
|
PROCEDURE KWATER (T, P, CALCPT, CALCPP, KW, PVW, XW, PKWT, PKWP, KWRP0001
|
|
PPVWT, PXWT) ; KWRP0002
|
|
|
|
COMMENT PROCEDURE FOR K-RATIO OF WATER DISSOLVED IN HYDROCARBONS. KWRP0003
|
|
BY A. PAUL OLESON AND DONALD L. VOSS KWRP0004
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORPORATION KWRP0005
|
|
FIRST RELEASE DATE: 5-5-63 KWRP0006
|
|
|
|
THIS PROCEDURE CALCULATES THE FOLLOWING QUANTITIES FOR KWRP0007
|
|
WATER: VAPOR-LIQUID EQUILIBRIUM RATIO (KW OR Y/X), VAPOR KWRP0008
|
|
PRESSURE, MOLE FRACTION OF WATER DISSOLVED IN THE HYDRO- KWRP0009
|
|
CARBON PHASE, THE DERIVATIVES OF THESE QUANTITIES WITH KWRP0010
|
|
RESPECT TO TEMPERATURE, AND THE DERIVATIVE OF KW WITH KWRP0011
|
|
RESPECT TO PRESSURE. THE K-RATIO OF WATER IS CALCULATED KWRP0012
|
|
BY ASSUMING IDEAL VAPOR BEHAVIOR AND USING AN EMPIRICAL KWRP0013
|
|
CORRELATION FOR THE WATER SOLUBILITY. KWRP0014
|
|
|
|
THE INPUT PARAMETERS ARE KWRP0015
|
|
T - TEMPERATURE, F. - REAL KWRP0016
|
|
P - PRESSURE, PSIA - REAL KWRP0017
|
|
CALCPT - BOOLEAN. IF TRUE, CALCULATE PKWT, PPVWT, AND KWRP0018
|
|
PXWT. KWRP0019
|
|
CALCPP - BOOLEAN. IF TRUE, CALCULATE PKWP. KWRP0020
|
|
|
|
ALSO, THE VARIABLES KC3 AND KC6 ARE NON-LOCAL. KWRP0021
|
|
KC3 - WATER VAPOR PRESSURE COEFFIENTS - REAL ARRAY [0:3].KWRP0022
|
|
KC3 IS USED AS ANTC IN THE ANT1 PROCEDURE. KWRP0023
|
|
KC6 - COEFFICIENTS FOR THE SOLUBILITY OF WATER IN HYDRO- KWRP0024
|
|
CARBONS - REAL ARRAY [0:3]. KC6 IS USED AS ANTC KWRP0025
|
|
IN THE ANT1 PROCEDURE. KWRP0026
|
|
|
|
THE OUTPUT PARAMETERS ARE KWRP0027
|
|
KW - VAPOR-LIQUID EQUILIBRIUM RATIO (Y/X) OF WATER - KWRP0028
|
|
REAL KWRP0029
|
|
PVW - VAPOR PRESSURE OF WATER, PSIA KWRP0030
|
|
XW - MOLE FRACTION OF WATER DISSOLVED IN HYDROCARBON KWRP0031
|
|
PHASE - REAL KWRP0032
|
|
PKWT - T DERIVATIVE OF KW - REAL KWRP0033
|
|
PKWP - P DERIVATIVE OF KW - REAL KWRP0034
|
|
PPVWT - T DERIVATIVE OF PVW - REAL KWRP0035
|
|
PXWT - T DERIVATIVE OF XW - REAL KWRP0036
|
|
|
|
THE ANT1 PROCEDURE MUST BE DECLARED PRIOR TO KWATER ; KWRP0037
|
|
|
|
VALUE T, P, CALCPT, CALCPP ; KWRP0038
|
|
BOOLEAN CALCPT, CALCPP ; KWRP0039
|
|
REAL T, P, KW, PVW, XW, PKWT, PKWP, PPVWT, PXWT ; KWRP0040
|
|
|
|
BEGIN KWRP0041
|
|
|
|
COMMENT ENTER THE ANT1 PROCEDURE TO CALCULATE THE VAPOR PRESSURE KWRP0042
|
|
OF WATER, AND ITS TEMPERATURE DERIVATIVE. ; KWRP0043
|
|
ANT1 (T, CALCPT, KC3, PVW, PPVWT) ; KWRP0044
|
|
|
|
COMMENT ENTER THE ANT1 PROCEDURE TO CALCULATE THE SOLUBILITY OF KWRP0045
|
|
WATER IN HYDROCARBONS, AND ITS TEMPERATURE DERIVATIVE. ; KWRP0046
|
|
ANT1 (T, CALCPT, KC6, XW, PXWT) ; KWRP0047
|
|
|
|
COMMENT CALCULATE THE K-RATIO OF WATER. ; KWRP0048
|
|
KW ~ PVW/(P | XW) ; KWRP0049
|
|
|
|
COMMENT IF CALCPT IS TRUE, CALCULATE THE T DERIVATIVE OF KW. ; KWRP0050
|
|
IF CALCPT THEN KWRP0051
|
|
PKWT ~ (-PXWT/XW + PPVWT/PVW) | KW ; KWRP0052
|
|
|
|
COMMENT IF CALCPP IS TRUE, CALCULATE THE P DERIVATIVE OF KW. ; KWRP0053
|
|
IF CALCPP THEN KWRP0054
|
|
PKWP ~ -KW/P KWRP0055
|
|
|
|
END KWATER ; KWRP0056
|
|
PROCEDURE KPICKW (T, P, PICKK, CALCPT, CALCPP, CALCPDC, K, PKT, PKP,KPWP0001
|
|
PVW, XW, PPVWT, PXWT) ; KPWP0002
|
|
|
|
COMMENT THIS PROCEDURE TIES TOGETHER THE PROCEDURES KNGAA, KIDEAL,KPWP0003
|
|
KPOLY, PHIPART, AND KWATER FOR THE PURPOSE OF CALCULATING KPWP0004
|
|
K-RATIOS AND THEIR DERIVATIVES. KPWP0005
|
|
BY DONALD L. VOSS KPWP0006
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORPORATION KPWP0007
|
|
CARD SEQUENCE CODE STARTS WITH KPWP0001. KPWP0008
|
|
|
|
FIRST RELEASE DATE 5-5-63 KPWP0009
|
|
THE INPUT PARAMETERS ARE KPWP0010
|
|
T - TEMPERATURE, F - REAL KPWP0011
|
|
P - PRESSURE, PSIA - REAL KPWP0012
|
|
PICKK - NO. OF COMPONENTS FOR EACH OPTION - INTEGER ARRAY KPWP0013
|
|
[0:6]. KPWP0014
|
|
PICKK[1] - NO. USING KNGAA KPWP0015
|
|
PICKK[2] - NO. USING KIDEAL KPWP0016
|
|
PICKK[3] - NO. USING KPOLY KPWP0017
|
|
PICKK[4] - NO. USING PHIPART KPWP0018
|
|
PICKK[5] - NO. WHOSE K VALUES ARE GIVEN IN KC12[] KPWP0019
|
|
PICKK[6] - =1 TO CALCULATE FOR WATER DISSOLVED IN A KPWP0020
|
|
HYDROCARBON PHASE. =0 IF NOT. KPWP0021
|
|
CALCPT - BOOLEAN. IF TRUE, CALCULATE PKT. KPWP0022
|
|
CALCPP - BOOLEAN. IF TRUE, CALCULATE PKP. KPWP0023
|
|
CALCPDC - BOOLEAN. IF TRUE, CALCULATE THE PRESSURE KPWP0024
|
|
DEPENDENT COEFFICIENTS IN KNGAA. FOR CALCPDC = TRUE,KPWP0025
|
|
P(LAST ENTRY) MUST EQUAL P(PRESENT ENTRY). KPWP0026
|
|
|
|
IN ADDITION, THE KC- VARIABLES ARE NON-LOCAL TO KPICK. KPWP0027
|
|
KC1 - N.G.A.A. COEFFICIENTS FOR KNGAA - REAL ARRAY [0: KPWP0028
|
|
PICKK[1],0:28] KPWP0029
|
|
KC2 - VAPOR PRESSURE COEFFICIENTS FOR KIDEAL - REAL KPWP0030
|
|
ARRAY[0:PICKK[2],0:3] KPWP0031
|
|
KC3 - WATER VAPOR PRESSURE COEFFICIENTS FOR KWATER - KPWP0032
|
|
REAL ARRAY [0:3] KPWP0033
|
|
KC6 - COEFFICIENTS FOR THE SOLUBILITY OF WATER IN KPWP0034
|
|
HYDROCARBONS FOR KWATER - REAL ARRAY [0:3] KPWP0035
|
|
KC4 - REFERENCE COMPONENT K COEFFICIENTS FOR KPOLY - KPWP0036
|
|
REAL ARRAY [0:5] KPWP0037
|
|
KC5 - RELATIVE VOLATILITY COEFFICIENTS FOR KPOLY - REAL KPWP0038
|
|
ARRAY [0:PICKK[3],0:3] KPWP0039
|
|
KC7 - COMPONENT V VALUES IN PHIPART - INTEGER ARRAY KPWP0040
|
|
[0:PICKK[4]] KPWP0041
|
|
KC8 - COMPONENT ALEPH VALUES IN PHIPART - REAL ARRAY KPWP0042
|
|
[0:PICKK[4],0:MAX KC7[],0:MAX KC11[] ] KPWP0043
|
|
KC9 - COMPONENT BETA VALUES IN PHIPART - REAL ARRAY KPWP0044
|
|
[0:PICKK[4],0:MAX KC7[],0:MAX KC11[] ] KPWP0045
|
|
KC10 - COMPONENT COEFF VALUES IN PHIPART - REAL ARRAY KPWP0046
|
|
[0:PICKK[4],0:MAX (KC11[I]+1) ... (KC11[V]+1) ] KPWP0047
|
|
KC11 - COMPONENT P VALUES IN PHIPART - INTEGER ARRAY KPWP0048
|
|
[0:PICKK[4],0:MAX KC7[] ] KPWP0049
|
|
IN PHIPART, THE INDEPENDENT VARIABLES ARE T OR T AND P. KPWP0050
|
|
KC12 - GIVEN VALUES OF COMPONENT K RATIOS - REAL ARRAY KPWP0051
|
|
[0:PICKK[5] ] KPWP0052
|
|
|
|
THE OUTPUT PARAMETERS ARE KPWP0053
|
|
K - COMPONENT K-RATIOS (Y/X) - REAL ARRAY [0:N], KPWP0054
|
|
WHERE N IS THE TOTAL NUMBER OF COMPONENTS. KPWP0055
|
|
PKT - COMPONENT T DERIVATIVES OF K - REAL ARRAY [0:N] KPWP0056
|
|
PKP - COMPONENT P DERIVATIVES OF K - REAL ARRAY [0:N] - KPWP0057
|
|
(NOT INCLUDED FOR KPOLY) KPWP0058
|
|
PVW - VAPOR PRESSURE OF WATER, PSIA - REAL KPWP0059
|
|
XW - MOLE FRACTION OF WATER DISSOLVED IN HYDROCARBON KPWP0060
|
|
PHASE - REAL KPWP0061
|
|
PPVWT - T DERIVATIVE OF PVW - REAL KPWP0062
|
|
PXWT - T DERIVATIVE OF XW - REAL KPWP0063
|
|
|
|
THE INPUT AND OUTPUT COMPONENT ARRAYS ARE ARRANGED KPWP0064
|
|
ACCORDING TO THE PICKK[] ORDER. KPWP0065
|
|
THE PROCEDURES KNGAA, KIDEAL, KPOLY, PHIPART, ANT1, AND KPWP0066
|
|
KWATER MUST BE DECLARED PRIOR TO KPICKW. KPWP0067
|
|
THE PROCEDURE ANT1 MUST BE DECLARED PRIOR TO KIDEAL AND KPWP0068
|
|
KWATER. ; KPWP0069
|
|
|
|
VALUE T, P, CALCPT, CALCPP, CALCPDC ; KPWP0070
|
|
REAL T, P, PVW, XW, PPVWT, PXWT ; KPWP0071
|
|
BOOLEAN CALCPT, CALCPP, CALCPDC ; KPWP0072
|
|
ARRAY K[0], PKT[0], PKP[0] ; KPWP0073
|
|
INTEGER ARRAY PICKK[0] ; KPWP0074
|
|
|
|
BEGIN KPWP0075
|
|
INTEGER NF1, NF2, NF3, NF4, NF5, I, E, J, U, KC7E, KC11E ; KPWP0076
|
|
BOOLEAN ARRAY S[0:2] ; KPWP0077
|
|
REAL ARRAY DATA, SUM[0:2] ; KPWP0078
|
|
|
|
COMMENT SET UP ITERATION LIST VARIABLES ; KPWP0079
|
|
NF1 ~ PICKK[1] + PICKK[2] ; NF2 ~ PICKK[3] + NF1 ; KPWP0080
|
|
NF3 ~ PICKK[4] + NF2 ; NF4 ~ PICKK[5] + NF3 ; KPWP0081
|
|
NF5 ~ PICKK[6] + NF4 ; KPWP0082
|
|
|
|
COMMENT KWATER VALUES ; KPWP0083
|
|
IF PICKK[6] = 1 THEN KPWP0084
|
|
KWATER (T, P, CALCPT, CALCPP, K[NF5], PVW, XW, PKT[NF5], KPWP0085
|
|
PKP[NF5], PPVWT, PXWT) ; KPWP0086
|
|
|
|
COMMENT K-RATIOS GIVEN IN KC12[] ; KPWP0087
|
|
IF PICKK[5] > 0 THEN KPWP0088
|
|
FOR I ~ NF3+1 STEP 1 UNTIL NF4 DO KPWP0089
|
|
BEGIN KPWP0090
|
|
E ~ I - NF3 ; K[I] ~ KC12[E] KPWP0091
|
|
END ; KPWP0092
|
|
|
|
COMMENT PHIPART VALUES ; KPWP0093
|
|
IF PICKK[4] > 0 THEN KPWP0094
|
|
BEGIN KPWP0095
|
|
DATA[1] ~ T ; DATA[2] ~ P ; KPWP0096
|
|
S[1] ~ S[2] ~ FALSE ; KPWP0097
|
|
IF CALCPT THEN S[1] ~ TRUE ; KPWP0098
|
|
IF CALCPP THEN S[2] ~ TRUE ; KPWP0099
|
|
FOR I ~ NF2 + 1 STEP 1 UNTIL NF3 DO KPWP0100
|
|
BEGIN KPWP0101
|
|
E ~ I - NF2 ; KC7E ~ KC7[E] ; KPWP0102
|
|
IF KC11[E,1] > KC11[E,2] THEN KC11E ~ KC11[E,1] KPWP0103
|
|
ELSE KC11E ~ KC11[E,2] ; KPWP0104
|
|
BEGIN KPWP0105
|
|
REAL ARRAY ALEPH, BETA[0:2,0:KC11E] ; KPWP0106
|
|
FOR J ~ 1 STEP 1 UNTIL KC7E DO KPWP0107
|
|
FOR U ~ 1 STEP 1 UNTIL KC11E DO KPWP0108
|
|
BEGIN KPWP0109
|
|
ALEPH[J,U] ~ KC8[E,J,U] ; BETA[J,U] ~ KC9[E,J,U] KPWP0110
|
|
END ; KPWP0111
|
|
PHIPART (KC7[E], DATA, ALEPH, BETA, KC10[E,*], KC11[E,*], KPWP0112
|
|
S, K[I], SUM) ; KPWP0113
|
|
IF CALCPT THEN PKT[I] ~ SUM[1] ; KPWP0114
|
|
IF CALCPP THEN PKP[I] ~ SUM[2] KPWP0115
|
|
END KPWP0116
|
|
END KPWP0117
|
|
END ; KPWP0118
|
|
|
|
COMMENT KPOLY VALUES ; KPWP0119
|
|
IF PICKK[3] > 0 THEN KPWP0120
|
|
BEGIN KPWP0121
|
|
KPOLY (T, PICKK[3], CALCPT, K, PKT) ; KPWP0122
|
|
FOR I ~ NF1+1 STEP 1 UNTIL NF2 DO KPWP0123
|
|
BEGIN KPWP0124
|
|
E ~ I - NF1 ; K[I] ~ K[E] ; KPWP0125
|
|
IF CALCPT THEN PKT[I] ~ PKT[E] KPWP0126
|
|
END KPWP0127
|
|
END ; KPWP0128
|
|
|
|
COMMENT KIDEAL VALUES ; KPWP0129
|
|
IF PICKK[2] > 0 THEN KPWP0130
|
|
BEGIN KPWP0131
|
|
KIDEAL (T, P, PICKK[2], CALCPT, CALCPP, K, PKT, PKP) ; KPWP0132
|
|
FOR I ~ PICKK[1]+1 STEP 1 UNTIL NF1 DO KPWP0133
|
|
BEGIN KPWP0134
|
|
E ~ I - PICKK[1] ; K[I] ~ K[E] ; KPWP0135
|
|
IF CALCPT THEN PKT[I] ~ PKT[E] ; KPWP0136
|
|
IF CALCPP THEN PKP[I] ~ PKP[E] KPWP0137
|
|
END KPWP0138
|
|
END ; KPWP0139
|
|
|
|
COMMENT KNGAA VALUES ; KPWP0140
|
|
IF PICKK[1] > 0 THEN KPWP0141
|
|
KNGAA (T, P, PICKK[1], CALCPDC, CALCPT, CALCPP, K, PKT, KPWP0142
|
|
PKP) KPWP0143
|
|
|
|
END KPICKW ; KPWP0144
|
|
|
|
PROCEDURE FLASHW (Z, PICKK, B, LIMITFW, CALCPDC, T, P, VDF, S, FLHW 1
|
|
X, Y) ; FLHW 2
|
|
FLHW 3
|
|
COMMENT PROCEDURE FOR GENERAL NONADIABATIC FLASH CALCULATIONS FLHW 4
|
|
FOR HYDROCARBON MIXTURES CONTAINING WATER. A SEPARATE FLHW 5
|
|
PURE LIQUID WATER PHASE IS CONSIDERED. FLHW 6
|
|
THIS PROCEDURE COMPUTES THE TEMPERATURE OR PRESSURE OR FLHW 7
|
|
THE VAPOR-TO-FEED MOL RATIO FOR SPECIFIED VALUES OF THE FLHW 8
|
|
OTHER TWO VARIABLES. THE FRACTION OF LIQUID WATER, S, FLHW 9
|
|
IS CALCULATED AS A FUNCTION OF THESE VARIABLES. FLHW 10
|
|
FLHW 11
|
|
A. PAUL OLESON FLHW 12
|
|
PROFESSIONAL SERVICES GROUP, BURROUGHS CORP. FLHW 13
|
|
CARD SEQUENCE STARTS WITH FLHW0001. FLHW 14
|
|
DATE OF FIRST ISSUE 12-1-63 . FLHW 15
|
|
FLHW 16
|
|
THE INPUT PARAMETERS ARE FLHW 17
|
|
FLHW 18
|
|
T - TEMPERATURE, F., REAL. FLHW 19
|
|
P - PRESSURE, PSIA, REAL. FLHW 20
|
|
VDF - VAPOR TO FEED MOL RATIO, REAL. FLHW 21
|
|
Z - FEED COMPOSITION, MOL FRACTIONS, REAL ARRAY. FLHW 22
|
|
PICKK - SELECTORS OF K-RATIO CORRELATIONS, INTEGER ARRAYFLHW 23
|
|
SEE KPICKW PROCEDURE, PTS- . FLHW 24
|
|
CALCPDC - INSTRUCTION TO CALCULATE PRESSURE DEPENDENT FLHW 25
|
|
COEFFICIENTS IN NGAA K-RATIO PROCEDURE (PTS- ), FLHW 26
|
|
BOOLEAN. TRUE IF REQUIRED. FLHW 27
|
|
B - PROBLEM TYPE, BOOLEAN ARRAY, FLHW 28
|
|
B[1] - TRUE IF WATER IS PRESENT, FLHW 29
|
|
B[2] - TRUE IF CALCULATING TEMPERATURE. FLHW 30
|
|
B[3] - TRUE IF CALCULATING PRESSURE. FLHW 31
|
|
B[4] - TRUE IF CALCULATING VAPOR TO FEED RATIO. FLHW 32
|
|
LIMITFW - BOUNDS ON TEMPERATURE AND PRESSURE, ARRAY FLHW 33
|
|
LIMITFW[1] - MIN. T FLHW 34
|
|
LIMITFW[2] - MAX. T FLHW 35
|
|
LIMITFW[3] - MIN. P FLHW 36
|
|
LIMITFW[4] - MAX. P FLHW 37
|
|
FLHW 38
|
|
GLOBAL INPUT PARAMETERS INCLUDE FLHW 39
|
|
KC1 THROUGH KC12, COEFFIENTS FOR THE VARIOUS K-RATIO FLHW 40
|
|
CORRELATIONS. SEE PTS-041 FOR DETAILS. FLHW 41
|
|
FLHW 42
|
|
OUTPUT PARAMETERS ARE FLHW 43
|
|
T - TEMPERATURE, F., REAL, FLHW 44
|
|
P - PRESSURE, PSIA, REAL. FLHW 45
|
|
VDF - VAPOR TO FEED MOL RATIO, REAL. FLHW 46
|
|
S - MOL RATIO OF PURE LIQUID WATER TO FEED. FLHW 47
|
|
X - COMPOSITION OF LIQUID HYDROCARBON PHASE, MOL FLHW 48
|
|
FRACTION, REAL ARRAY. FLHW 49
|
|
Y - COMPOSITION OF VAPOR PHASE, MOL FRACTIONS, REAL FLHW 50
|
|
ARRAY. FLHW 51
|
|
THE REFERENCE LABEL IS FLHW 52
|
|
ERRORFW - LABEL OUTSIDE PROCEDURE ; FLHW 53
|
|
FLHW 54
|
|
VALUE Z, PICKK, B, LIMITFW, CALCPDC ; FLHW 55
|
|
BOOLEAN CALCPDC ; FLHW 56
|
|
BOOLEAN ARRAY B[0] ; FLHW 57
|
|
INTEGER ARRAY PICKK[0] ; FLHW 58
|
|
REAL T, P, VDF, S ; FLHW 59
|
|
ARRAY Z, LIMITFW, X, Y[0] ; FLHW 60
|
|
FLHW 61
|
|
BEGIN FLHW 62
|
|
LABEL FLW1, L1, L2, L3, FLW2, FLW3 ; FLHW 63
|
|
INTEGER NW, I, NL ; FLHW 64
|
|
BOOLEAN B0, B1, B2, B3, B4, B5, B6, B7, B8 ; FLHW 65
|
|
REAL STS1, STS2, XW, XW1, PVW, PVW1, G, ER, E, PGE, PGS, PSE, FLHW 66
|
|
FLHW 67
|
|
PXWT ; FLHW 68
|
|
ARRAY HK, PKT, PKP, K[0:20] ; FLHW 69
|
|
FLHW 70
|
|
REAL PROCEDURE FT (A) ; FLHW 71
|
|
VALUE A ; FLHW 72
|
|
REAL A ; FLHW 73
|
|
BEGIN FLHW 74
|
|
FT ~ - KC3[2] / (LN(A) - KC3[1]) - KC3[3] FLHW 75
|
|
END FT ; FLHW 76
|
|
FLHW 77
|
|
REAL PROCEDURE FUNC (I,EA,EB,EC,HK,Z,VDF,S) ; FLHW 78
|
|
VALUE I, EA, EB, EC, Z, HK, VDF, S ; FLHW 79
|
|
INTEGER I, EA, EB, EC ; FLHW 80
|
|
REAL VDF, S ; FLHW 81
|
|
ARRAY Z, HK[0] ; FLHW 82
|
|
BEGIN FLHW 83
|
|
FUNC ~ HK[I]*EA | Z[I]*EC / (HK[I] | VDF + 1.0 - S)*EB FLHW 84
|
|
END FUNC ; FLHW 85
|
|
FLHW 86
|
|
COMMENT SUM NUMBER OF COMPONENTS FROM PICKK ARRAY ; FLHW 87
|
|
FLHW 88
|
|
NW ~ 0 ; FOR I ~ 1 STEP 1 UNTIL 6 DO NW ~ PICKK[I] + NW ;FLHW 89
|
|
B0 ~ (VDF = 0.0) ; B1 ~ (VDF = 1.0) ; FLHW 90
|
|
B2 ~ B3 ~ B4 ~ B5 ~ B6 ~ B7 ~ B8 ~ FALSE ; FLHW 91
|
|
FLW1: KPICKW (T, P, PICKK, B[2], B[3], CALCPDC, K, PK, PK, FLHW 92
|
|
PVW, XW, STS1, PXWT) ; FLHW 93
|
|
IF B[2] THEN CALCPDC ~ FALSE ELSE CALCPDC ~ TRUE ; FLHW 94
|
|
XW1 ~ 1.0 - XW ; FLHW 95
|
|
FOR I ~ 1 STEP 1 UNTIL NW DO HK[I] ~ K[I] - 1.0 ; FLHW 96
|
|
FLHW 97
|
|
COMMENT IF CALCULATING VDF, CHECK IF 0 { VDF { (1 - S) ; FLHW 98
|
|
FLHW 99
|
|
L1 : IF B[4] THEN FLHW 100
|
|
BEGIN FLHW 101
|
|
STS1 ~ STS2 ~ 0 ; FLHW 102
|
|
FOR I ~ 1 STEP 1 UNTIL NW DO FLHW 103
|
|
BEGIN FLHW 104
|
|
STS1 ~ Z[I] / K[I] + STS1 ; STS2 ~ Z[I] | K[I] + STS2 FLHW 105
|
|
END ; FLHW 106
|
|
IF B[1] AND (Z[NW] > XW) THEN FLHW 107
|
|
BEGIN FLHW 108
|
|
S ~ (Z[NW] - XW) / XW1 ; FLHW 109
|
|
STS2 ~ -HK[NW] | S + STS2 FLHW 110
|
|
END FLHW 111
|
|
ELSE S ~ 0 ; FLHW 112
|
|
B0 ~ (STS2 { 1.0) ; B1 ~ (STS1 { 1.0) ; FLHW 113
|
|
L2 : IF B1 THEN FLHW 114
|
|
BEGIN FLHW 115
|
|
FLHW 116
|
|
COMMENT TEST IF ONLY VAPOR AND LIQUID WATER ARE PRESENT ; FLHW 117
|
|
FLHW 118
|
|
L3 : IF B[1] AND (Z[NW] > (PVW / P)) THEN FLHW 119
|
|
BEGIN FLHW 120
|
|
STS1 ~ HK[NW] | (Z[NW] | P - PVW) / (K[NW] | (P - PVW)) FLHW 121
|
|
+ STS1 ; FLHW 122
|
|
B2 ~ B1 ~ (STS1 < 1.0) ; FLHW 123
|
|
IF B1 THEN FLHW 124
|
|
BEGIN FLHW 125
|
|
S ~ (Z[NW] | P - PVW) / (P - PVW) ; VDF ~ 1.0 - S FLHW 126
|
|
END FLHW 127
|
|
FLHW 128
|
|
COMMENT OTHERWISE LIQUID WATER CANNOT BE PRESENT ; FLHW 129
|
|
FLHW 130
|
|
END FLHW 131
|
|
ELSE FLHW 132
|
|
BEGIN FLHW 133
|
|
S ~ 0 ; VDF ~ 1.0 FLHW 134
|
|
END ; FLHW 135
|
|
FLHW 136
|
|
COMMENT TEST IF VAPOR IS NOT PRESENT ; FLHW 137
|
|
FLHW 138
|
|
END ; FLHW 139
|
|
IF B0 THEN VDF ~ 0.0 ; FLHW 140
|
|
FLHW 141
|
|
COMMENT END L2 ; FLHW 142
|
|
FLHW 143
|
|
IF (B1 OR B0) THEN GO TO FLW3 FLHW 144
|
|
END L1 ; FLHW 145
|
|
FLHW 146
|
|
COMMENT COMPUTE MOL RATIO OF LIQUID WATER TO FEED ; FLHW 147
|
|
FLHW 148
|
|
FLW2 : IF B1 OR NOT B[1] THEN S ~ 0 ELSE FLHW 149
|
|
S ~ (-(HK[NW] | VDF + 1.0) | XW + Z[NW]) / XW1 ; FLHW 150
|
|
B8 ~ (S > 0) ; IF NOT B8 THEN S ~ 0 ; FLHW 151
|
|
IF (NOT B2 AND NOT B[4] AND ((S + VDF) > 1.0)) THEN FLHW 152
|
|
BEGIN FLHW 153
|
|
S ~ 1.0 - VDF ; FLHW 154
|
|
IF B[2] THEN T ~ FT ((Z[NW] - S) | P / VDF) FLHW 155
|
|
ELSE P ~ VDF | PVW / (Z[NW] - S) ; FLHW 156
|
|
B2 ~ TRUE ; GO TO FLW1 FLHW 157
|
|
END ; FLHW 158
|
|
FLHW 159
|
|
COMMENT EVALUATE FUNCTION G ; FLHW 160
|
|
FLHW 161
|
|
G ~ 0 ; FLHW 162
|
|
FOR I ~ 1 STEP 1 UNTIL NW DO G ~ FUNC(I,1,1,1,HK,Z,VDF,S) FLHW 163
|
|
+ G ; FLHW 164
|
|
IF B8 THEN G ~ - FUNC(NW,1,1,0,HK,Z,VDF,S) | S + G ; FLHW 165
|
|
FLHW 166
|
|
COMMENT TEST IF TWO OR THREE PHASES ARE PRESENT ; FLHW 167
|
|
FLHW 168
|
|
IF B2 THEN FLHW 169
|
|
BEGIN FLHW 170
|
|
IF G > 0 THEN FLHW 171
|
|
BEGIN FLHW 172
|
|
B1 ~ TRUE ; GO TO FLW3 FLHW 173
|
|
END FLHW 174
|
|
ELSE B2 ~ FALSE FLHW 175
|
|
END ; FLHW 176
|
|
FLHW 177
|
|
COMMENT TEST IF TOLERANCE ON G IS MET ; FLHW 178
|
|
FLHW 179
|
|
IF B[4] THEN ER ~ 10.0*(-6) ELSE ER ~ 10.0*(-3) ; FLHW 180
|
|
IF ABS(G) < ER THEN FLHW 181
|
|
BEGIN FLHW 182
|
|
FLHW 183
|
|
COMMENT COMPARE DEW POINTS WITH RESPECT TO LIQUID WATER AND FLHW 184
|
|
LIQUID HYDROCARBON PHASES. SELECT LOWER PRESSURE OR FLHW 185
|
|
HIGHER TEMPERATURE ; FLHW 186
|
|
FLHW 187
|
|
IF B[1] AND B1 THEN FLHW 188
|
|
BEGIN FLHW 189
|
|
IF B[2] THEN FLHW 190
|
|
BEGIN FLHW 191
|
|
T ~ FT (Z[NW] | P) ; FLHW 192
|
|
IF T < E THEN T ~ E FLHW 193
|
|
END FLHW 194
|
|
ELSE FLHW 195
|
|
BEGIN FLHW 196
|
|
P ~ PVW / Z[NW] ; IF P > E THEN P ~ E FLHW 197
|
|
END FLHW 198
|
|
END ; FLHW 199
|
|
GO TO FLW3 FLHW 200
|
|
END ; FLHW 201
|
|
FLHW 202
|
|
COMMENT ADJUST E USING THE NEWTON-RAPHSON METHOD. CALCULATE THE FLHW 203
|
|
DERIVATIVES FIRST ; FLHW 204
|
|
FLHW 205
|
|
PGE ~ 0 ; FLHW 206
|
|
IF B[4] THEN FLHW 207
|
|
BEGIN FLHW 208
|
|
E ~ VDF ; FLHW 209
|
|
FOR I ~ 1 STEP 1 UNTIL NW DO FLHW 210
|
|
PGE ~ - FUNC(I,2,2,1,HK,Z,VDF,S) + PGE FLHW 211
|
|
END FLHW 212
|
|
ELSE FLHW 213
|
|
BEGIN FLHW 214
|
|
IF B[2] THEN E ~ T ELSE E ~ P ; FLHW 215
|
|
FOR I ~ 1 STEP 1 UNTIL NW DO FLHW 216
|
|
PGE ~ FUNC(I,0,2,1,HK,Z,VDF,S) | PK[I] + PGE ; FLHW 217
|
|
PGE ~ (1.0 - S) | PGE FLHW 218
|
|
END ; FLHW 219
|
|
FLHW 220
|
|
COMMENT ADJUST PGE FOR S-DEPENDENT TERMS ; FLHW 221
|
|
FLHW 222
|
|
IF B8 THEN FLHW 223
|
|
BEGIN FLHW 224
|
|
PGS ~ 0 ; FLHW 225
|
|
FOR I ~ 1 STEP 1 UNTIL NW DO FLHW 226
|
|
PGS ~ FUNC(I,1,2,1,HK,Z,VDF,S) + PGS ; FLHW 227
|
|
PGS ~ - FUNC(NW,1,2,0,HK,Z,VDF,S) | (HK[NW] | VDF + 1.0) FLHW 228
|
|
+ PGS ; FLHW 229
|
|
IF B[4] THEN FLHW 230
|
|
BEGIN FLHW 231
|
|
PSE ~ -HK[NW] | XW / XW1 ; FLHW 232
|
|
PGE ~ FUNC(NW,2,2,0,HK,Z,VDF,S) | S + PGE FLHW 233
|
|
END FLHW 234
|
|
ELSE FLHW 235
|
|
BEGIN FLHW 236
|
|
PGE ~ FUNC(NW,0,2,0,HK,Z,VDF,S) | PK[NW] | (S - 1.0) | S FLHW 237
|
|
+ PGE ; FLHW 238
|
|
PSE ~ -PK[NW] | XW | VDF / XW1 ; FLHW 239
|
|
IF B[2] THEN PSE ~ -(HK[NW] | VDF + 1.0 - S) |PXWT / XW1 FLHW 240
|
|
+ PSE FLHW 241
|
|
END ; FLHW 242
|
|
FLHW 243
|
|
COMMENT ADJUST DERIVATIVE OF G ; FLHW 244
|
|
FLHW 245
|
|
PGE ~ PGS | PSE + PGE FLHW 246
|
|
END ; FLHW 247
|
|
FLHW 248
|
|
COMMENT ADJUST VALUE OF E FOR NEXT ITERATION ; FLHW 249
|
|
FLHW 250
|
|
E ~ E - G / PGE ; FLHW 251
|
|
FLHW 252
|
|
COMMENT TEST LIMITS. IF EXCEEDED EXIT TO REFERENCE LABEL ERRORFLW FLHW 253
|
|
IN MAIN PROGRAM ; FLHW 254
|
|
FLHW 255
|
|
IF NOT B[4] THEN FLHW 256
|
|
BEGIN FLHW 257
|
|
IF B[2] THEN NL ~ 0 ELSE NL ~ 2 ; FLHW 258
|
|
IF E < LIMITFW[NL+1] THEN FLHW 259
|
|
BEGIN FLHW 260
|
|
IF B7 THEN GO TO ERRORFW ; FLHW 261
|
|
E ~ LIMITFW[NL+1] ; FLHW 262
|
|
IF B[3] AND B4 THEN E ~ LIMITFW[4] - 50.0 ; FLHW 263
|
|
IF B[2] OR B4 THEN B7 ~ B4 ~ TRUE FLHW 264
|
|
END ; FLHW 265
|
|
FLHW 266
|
|
COMMENT TEST IF UPPER LIMITS ARE EXCEEDED ; FLHW 267
|
|
FLHW 268
|
|
IF E > LIMITFW[NL+2] THEN FLHW 269
|
|
BEGIN FLHW 270
|
|
IF B5 THEN GO TO ERRORFW ; FLHW 271
|
|
E ~ LIMITFW[NL+2] ; FLHW 272
|
|
IF B[3] AND B6 THEN E ~ LIMITFW[3] + 50.0 ; FLHW 273
|
|
IF B6 OR B[2] THEN B5 ~ B6 ~ TRUE FLHW 274
|
|
END FLHW 275
|
|
END ; FLHW 276
|
|
FLHW 277
|
|
COMMENT RETURN TO FLW1 OR FLW2 TO CONTINUE ITERATIONS IF THE FLHW 278
|
|
FUNCTION G IS NOT WITHIN TOLERANCE ; FLHW 279
|
|
FLHW 280
|
|
IF B[2] THEN T ~ E FLHW 281
|
|
ELSE IF B[3] THEN P ~ E FLHW 282
|
|
ELSE FLHW 283
|
|
BEGIN FLHW 284
|
|
VDF ~ E ; GO TO FLW2 FLHW 285
|
|
END ; FLHW 286
|
|
GO TO FLW1 ; FLHW 287
|
|
FLHW 288
|
|
COMMENT COMPUTE COMPOSITIONS OF PHASES PRESENT AT SOLUTION ; FLHW 289
|
|
FLHW 290
|
|
FLW3 : FOR I ~ 1 STEP 1 UNTIL NW DO FLHW 291
|
|
BEGIN FLHW 292
|
|
X[I] ~ FUNC(I,0,1,1,HK,Z,VDF,S) ; Y[I] ~ K[I] | X[I] FLHW 293
|
|
END ; FLHW 294
|
|
IF B0 OR B1 THEN FLHW 295
|
|
FOR I ~ 1 STEP 1 UNTIL NW DO FLHW 296
|
|
BEGIN FLHW 297
|
|
IF B1 THEN X[I] ~ 0 ELSE Y[I] ~ 0 FLHW 298
|
|
END ; FLHW 299
|
|
IF B[1] AND NOT B1 THEN FLHW 300
|
|
BEGIN FLHW 301
|
|
X[NW] ~ - FUNC(NW,0,1,0,HK,Z,VDF,S) | S + X[NW] ; FLHW 302
|
|
IF NOT B0 THEN Y[NW] ~ K[NW] | X[NW] FLHW 303
|
|
END ; FLHW 304
|
|
IF B2 THEN Y[NW] ~ Y[NW] - S / VDF ; FLHW 305
|
|
END FLASHW ; FLHW 306
|
|
TEST 39
|
|
KC3[1] ~ 14.40555 ; KC3[2] ~ 6936.5635 ; TEST 40
|
|
KC3[3] ~ 379.92103 ; KC6[1] ~ 6.1556551 ; TEST 41
|
|
KC6[2] ~ 6691.9779 ; KC6[3] ~ 420.42673 ; TEST 42
|
|
FOR I ~ 1 STEP 1 UNTIL 8 DO PICKK[I] ~ 0 ; TEST 43
|
|
PICKK[1] ~ 2 ; PICKK[6] ~ 1 ; TEST 44
|
|
LIMITFW[1] ~ 0.0 ; LIMITFW[2] ~ 500.0 ; TEST 45
|
|
LIMITFW[3] ~ 10.0 ; LIMITFW[4] ~ 1600.0 ; TEST 46
|
|
READ (FLIN, F2, LI1)[ENDPROB] ; TEST 47
|
|
CALCPDC ~ TRUE ; TEST 48
|
|
TEST 49
|
|
FOR N ~ 1 STEP 1 UNTIL 19 DO TEST 50
|
|
BEGIN TEST 51
|
|
READ (FLIN,F3,LI2) ; TEST 52
|
|
FLASHW (Z, PICKK, B, LIMITFW, CALCPDC, T, P, VDF, S, TEST 53
|
|
X, Y) ; TEST 54
|
|
WRITE (FIL1,FO1,LI3) ; TEST 55
|
|
WRITE (FIL1, FO2, L4) ; TEST 56
|
|
END ; TEST 57
|
|
TEST 58
|
|
ENDPROB: ; TEST 59
|
|
ERRORFW: END . TEST 60
|
|
TEST 61
|
|
LABEL 000000000FILE1 0010000001
|
|
-0.14609524@ 03 0.17442830@ 04 -0.88504047@ 04 0.23172909@ 05*CP# 5000NC4 1
|
|
-0.32904241@ 05 0.24047149@ 05 -0.70717229@ 04 0.51791307@ 03*CP# 5000NC4 2
|
|
-0.60967471@ 04 0.30280354@ 05 -0.77393885@ 05 0.10670547@ 06*CP# 5000NC4 3
|
|
-0.75224715@ 05 0.21217935@ 05 -0.63796025@ 03 0.75662458@ 04*CP# 5000NC4 4
|
|
-0.36863956@ 05 0.92089775@ 05 -0.12320518@ 06 0.83414815@ 05*CP# 5000NC4 5
|
|
-0.22305445@ 05 0.28216774@ 03 -0.33359564@ 04 0.16069058@ 05*CP# 5000NC4 6
|
|
-0.39576618@ 05 0.51906262@ 05 -0.34121151@ 05 0.87318732@ 04*CP# 5000NC4 7
|
|
-0.21348786@ 03 0.25474323@ 04 -0.12798200@ 05 0.33160386@ 05*CP# 5000NC7 1
|
|
-0.46617734@ 05 0.33733453@ 05 -0.98179094@ 04 0.75259770@ 03*CP# 5000NC7 2
|
|
-0.90661037@ 04 0.45105376@ 05 -0.11567362@ 06 0.16082237@ 06*CP# 5000NC7 3
|
|
-0.11494396@ 06 0.33049039@ 05 -0.83874040@ 03 0.10204559@ 05*CP# 5000NC7 4
|
|
-0.50087083@ 05 0.12659472@ 06 -0.17312184@ 06 0.12128248@ 06*CP# 5000NC7 5
|
|
-0.34048056@ 05 0.31865699@ 03 -0.38575857@ 04 0.18652295@ 05*CP# 5000NC7 6
|
|
-0.46388321@ 05 0.62285187@ 05 -0.42635868@ 05 0.11615321@ 05*CP# 5000NC7 7
|
|
280.0 75.0 0.5 0.250 0.250 0.500 1 0 0 1
|
|
220.0 50.0 0.5 0.250 0.250 0.500 1 0 0 1
|
|
150.0 75.0 0.5 0.490 0.490 0.020 1 0 0 1
|
|
175.0 75.0 0.5 0.300 0.300 0.400 1 0 0 1
|
|
225.0 75.0 0.5 0.299 0.699 0.002 1 0 0 1
|
|
200.0 80.0 0.0 0.400 0.400 0.200 1 1 0 0
|
|
200.0 60.0 0.0 0.499 0.499 0.002 1 1 0 0
|
|
200.0 70.0 1.0 0.300 0.500 0.200 1 1 0 0
|
|
200.0 100.0 1.0 0.150 0.150 0.700 1 1 0 0
|
|
200.0 50.0 0.4 0.100 0.100 0.800 1 1 0 0
|
|
200.0 75.0 0.5 0.300 0.300 0.400 1 1 0 0
|
|
200.0 75.0 0.5 0.499 0.499 0.002 1 1 0 0
|
|
100.0 100.0 0.0 0.600 0.200 0.200 1 0 1 0
|
|
160.0 100.0 0.0 0.500 0.496 0.004 1 0 1 0
|
|
300.0 100.0 1.0 0.100 0.700 0.200 1 0 1 0
|
|
200.0 100.0 1.0 0.100 0.100 0.800 1 0 1 0
|
|
200.0 100.0 0.4 0.100 0.100 0.800 1 0 1 0
|
|
120.0 100.0 0.6 0.500 0.200 0.300 1 0 1 0
|
|
250.0 100.0 0.5 0.290 0.690 0.020 1 0 1 0
|