MoDeNa  1.0
Software framework facilitating sequential multi-scale modelling
getting_started_subroutines.F90
1 
3 
4 
5 
6 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
7 ! SUBROUTINE eos_const
8 !
9 ! This subroutine provides the constants of the PC-SAFT EOS.
10 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
11 !
12  SUBROUTINE eos_const (ap,bp,dnm)
13 !
14  IMPLICIT NONE
15 !
16 ! ----------------------------------------------------------------------
17  REAL, INTENT(OUT) :: ap(0:6,3)
18  REAL, INTENT(OUT) :: bp(0:6,3)
19  REAL, INTENT(OUT) :: dnm(4,9)
20 ! ----------------------------------------------------------------------
21 
22 
23 ! --- dispersion term constants ----------------------------------------
24 ap(0,1) = 0.91056314451539
25 ap(0,2) = -0.30840169182720
26 ap(0,3) = -0.09061483509767
27 ap(1,1) = 0.63612814494991
28 ap(1,2) = 0.18605311591713
29 ap(1,3) = 0.45278428063920
30 ap(2,1) = 2.68613478913903
31 ap(2,2) = -2.50300472586548
32 ap(2,3) = 0.59627007280101
33 ap(3,1) = -26.5473624914884
34 ap(3,2) = 21.4197936296668
35 ap(3,3) = -1.72418291311787
36 ap(4,1) = 97.7592087835073
37 ap(4,2) = -65.2558853303492
38 ap(4,3) = -4.13021125311661
39 ap(5,1) = -159.591540865600
40 ap(5,2) = 83.3186804808856
41 ap(5,3) = 13.7766318697211
42 ap(6,1) = 91.2977740839123
43 ap(6,2) = -33.7469229297323
44 ap(6,3) = -8.67284703679646
45 
46 bp(0,1) = 0.72409469413165
47 bp(0,2) = -0.57554980753450
48 bp(0,3) = 0.09768831158356
49 bp(1,1) = 1.11913959304690 *2.0
50 bp(1,2) = 0.34975477607218 *2.0
51 bp(1,3) = -0.12787874908050 *2.0
52 bp(2,1) = -1.33419498282114 *3.0
53 bp(2,2) = 1.29752244631769 *3.0
54 bp(2,3) = -3.05195205099107 *3.0
55 bp(3,1) = -5.25089420371162 *4.0
56 bp(3,2) = -4.30386791194303 *4.0
57 bp(3,3) = 5.16051899359931 *4.0
58 bp(4,1) = 5.37112827253230 *5.0
59 bp(4,2) = 38.5344528930499 *5.0
60 bp(4,3) = -7.76088601041257 *5.0
61 bp(5,1) = 34.4252230677698 *6.0
62 bp(5,2) = -26.9710769414608 *6.0
63 bp(5,3) = 15.6044623461691 *6.0
64 bp(6,1) = -50.8003365888685 *7.0
65 bp(6,2) = -23.6010990650801 *7.0
66 bp(6,3) = -4.23812936930675 *7.0
67 
68 
69 ! square-well fluid
70 ! ap(1,1)= 0.79152347258784
71 ! ap(1,2)= -0.62269805320654
72 ! ap(1,3)= -0.06798823934067
73 ! ap(2,1)= 1.07120982251709
74 ! ap(2,2)= 0.48628215731716
75 ! ap(2,3)= 0.02837828512515
76 ! ap(3,1)= 0.92084839459226
77 ! ap(3,2)= 1.11652038059747
78 ! ap(3,3)= 0.09713202077943
79 ! ap(4,1)= -7.84708350369249
80 ! ap(4,2)= -2.04200599876547
81 ! ap(4,3)= 0.06475764015088
82 ! ap(5,1)= 25.90284137818050
83 ! ap(5,2)= 9.27791640100603
84 ! ap(5,3)= 0.07729792971827
85 ! ap(6,1)= -57.1528726997640
86 ! ap(6,2)= -16.8377999920957
87 ! ap(6,3)= 0.24883598436184
88 ! ap(7,1)= 42.02314637860930
89 ! ap(7,2)= 7.62432635016420
90 ! ap(7,3)= -0.72472024688888
91 
92 ! bp(1,1)= 0.79152347258784
93 ! bp(1,2)= -0.62269805320654
94 ! bp(1,3)= -0.06798823934067
95 ! bp(2,1)= 1.07120982251709 *2.0
96 ! bp(2,2)= 0.48628215731716 *2.0
97 ! bp(2,3)= 0.02837828512515 *2.0
98 ! bp(3,1)= 0.92084839459226 *3.0
99 ! bp(3,2)= 1.11652038059747 *3.0
100 ! bp(3,3)= 0.09713202077943 *3.0
101 ! bp(4,1)= -7.84708350369249 *4.0
102 ! bp(4,2)= -2.04200599876547 *4.0
103 ! bp(4,3)= 0.06475764015088 *4.0
104 ! bp(5,1)= 25.90284137818050 *5.0
105 ! bp(5,2)= 9.27791640100603 *5.0
106 ! bp(5,3)= 0.07729792971827 *5.0
107 ! bp(6,1)= -57.1528726997640 *6.0
108 ! bp(6,2)= -16.8377999920957 *6.0
109 ! bp(6,3)= 0.24883598436184 *6.0
110 ! bp(7,1)= 42.02314637860930 *7.0
111 ! bp(7,2)= 7.62432635016420 *7.0
112 ! bp(7,3)= -0.72472024688888 *7.0
113 
114 
115 dnm(1,1) = -8.8043
116 dnm(1,2) = +4.1646270
117 dnm(1,3) = -48.203555
118 dnm(1,4) = +140.43620
119 dnm(1,5) = -195.23339
120 dnm(1,6) = +113.51500
121 dnm(2,1) = +2.9396
122 dnm(2,2) = -6.0865383
123 dnm(2,3) = +40.137956
124 dnm(2,4) = -76.230797
125 dnm(2,5) = -133.70055
126 dnm(2,6) = +860.25349
127 dnm(2,7) = -1535.3224
128 dnm(2,8) = +1221.4261
129 dnm(2,9) = -409.10539
130 dnm(3,1) = -2.8225
131 dnm(3,2) = +4.7600148
132 dnm(3,3) = +11.257177
133 dnm(3,4) = -66.382743
134 dnm(3,5) = +69.248785
135 dnm(4,1) = +0.3400
136 dnm(4,2) = -3.1875014
137 dnm(4,3) = +12.231796
138 dnm(4,4) = -12.110681
139 
140 END SUBROUTINE eos_const
141 
142 
143 
144 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
145 ! SUBROUTINE dq_const
146 !
147 ! This subr. provides the constants of the dipole-quadrupole term.
148 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
149 !
150  SUBROUTINE dq_const ( dqp2,dqp3,dqp4 )
151 !
152  USE parameters, ONLY: nc
153  USE eos_variables, ONLY: ncomp, parame
154  IMPLICIT NONE
155 !
156 ! ----------------------------------------------------------------------
157  REAL, INTENT(OUT) :: dqp2(nc,nc,0:8)
158  REAL, INTENT(OUT) :: dqp3(nc,nc,nc,0:8)
159  REAL, INTENT(OUT) :: dqp4(nc,nc,0:8)
160 !
161 ! ----------------------------------------------------------------------
162  INTEGER :: i, j, k
163  REAL :: mdq(nc)
164  REAL :: mf1, mf2, msegij
165 ! ----------------------------------------------------------------------
166 
167 DO i=1,ncomp
168  mdq(i) = parame(i,1)
169  IF (mdq(i) > 2.0) mdq(i) = 2.0
170 END DO
171 
172 
173 DO i=1,ncomp
174  DO j=1,ncomp
175 
176  msegij=(mdq(i)*mdq(j))**0.5
177  mf1 = (msegij-1.0)/msegij
178  mf2 = mf1*(msegij-2.0)/msegij
179 
180  dqp2(i,j,0) = 0.697094963 + mf1*(-0.673459279) + mf2*0.670340770
181  dqp2(i,j,1) = -0.633554144 + mf1*(-1.425899106) + mf2*(-4.338471826)
182  dqp2(i,j,2) = 2.945509028 + mf1 * 4.19441392 + mf2*7.234168360
183  dqp2(i,j,3) = -1.467027314 + mf1 * 1.0266216
184  dqp2(i,j,4) = 0.0
185 
186  dqp4(i,j,0) = -0.484038322 + mf1 * 0.67651011 + mf2*(-1.167560146)
187  dqp4(i,j,1) = 1.970405465 + mf1*(-3.013867512) + mf2*2.13488432
188  dqp4(i,j,2) = -2.118572671 + mf1 * 0.46742656
189  dqp4(i,j,3) = 0.0
190  dqp4(i,j,4) = 0.0
191 
192 
193  DO k=1,ncomp
194  msegij=(mdq(i)*mdq(j)*mdq(k))**(1.0/3.0)
195  mf1 = (msegij-1.0)/msegij
196  mf2 = (msegij-2.0)/msegij
197  dqp3(i,j,k,0) = 0.795009692 + mf1*(-2.099579397)
198  dqp3(i,j,k,1) = 3.386863396 + mf1*(-5.941376392)
199  dqp3(i,j,k,2) = 0.475106328 + mf1*(-0.178820384)
200  dqp3(i,j,k,3) = 0.0
201  dqp3(i,j,k,4) = 0.0
202  END DO
203 
204  END DO
205 END DO
206 
207 END SUBROUTINE dq_const
208 
209 
210 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
211 ! SUBROUTINE dd_const
212 !
213 ! This subroutine provides the constants of the dipole-term.
214 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
215 !
216  SUBROUTINE dd_const ( ddp2,ddp3,ddp4 )
217 !
218  USE parameters, ONLY: nc, pi
219  USE eos_variables, ONLY: ncomp, parame
220  IMPLICIT NONE
221 !
222 ! ----------------------------------------------------------------------
223  REAL, INTENT(OUT) :: ddp2(nc,nc,0:8)
224  REAL, INTENT(OUT) :: ddp3(nc,nc,nc,0:8)
225  REAL, INTENT(OUT) :: ddp4(nc,nc,0:8)
226 !
227 ! ----------------------------------------------------------------------
228  INTEGER :: i, j, k
229  REAL :: pardd(nc)
230  REAL :: mf1,mf2,msegij,sin2t
231 ! ----------------------------------------------------------------------
232 
233 sin2t = sin( 0.0 * pi / 180.0 )
234 sin2t = sin2t*sin2t
235 
236 DO i = 1, ncomp
237  pardd(i) = parame(i,1)
238  IF (pardd(i) > 2.0) pardd(i) = 2.0
239 END DO
240 
241 DO i=1,ncomp
242  DO j=1,ncomp
243 ! IF (parame(i,6).NE.0.0.AND.parame(j,6).NE.0.0) THEN
244 
245  msegij=(pardd(i)*pardd(j))**0.5
246  mf1 = (msegij-1.0)/msegij
247  mf2 = mf1*(msegij-2.0)/msegij
248 
249  ddp2(i,j,0) = 0.30435038064 + mf1*(0.95346405973+0.201436*sin2t) &
250  + mf2*(-1.16100802773-1.74114*sin2t)
251  ddp2(i,j,1) = -0.13585877707 + mf1*(-1.83963831920+1.31649*sin2t) &
252  + mf2*4.52586067320
253  ddp2(i,j,2) = 1.44933285154 + mf1 * 2.01311801180 + mf2*0.97512223853
254  ddp2(i,j,3) = 0.35569769252 + mf1*(-7.37249576667) + mf2*(-12.2810377713)
255  ddp2(i,j,4) = -2.06533084541 + mf1 * 8.23741345333 + mf2*5.93975747420
256 
257  ddp4(i,j,0) = 0.21879385627 + mf1*(-0.58731641193) + mf2*3.48695755800
258  ddp4(i,j,1) = -1.18964307357 + mf1 * 1.24891317047 + mf2*(-14.9159739347)
259  ddp4(i,j,2) = 1.16268885692 + mf1*(-0.50852797392) + mf2*15.3720218600
260  ddp4(i,j,3) = 0.0
261  ddp4(i,j,4) = 0.0
262 
263  DO k=1,ncomp
264 ! IF (parame(k,6).NE.0.0) THEN
265  msegij=(pardd(i)*pardd(j)*pardd(k))**(1.0/3.0)
266  mf1 = (msegij-1.0)/msegij
267  mf2 = mf1*(msegij-2.0)/msegij
268  ddp3(i,j,k,0) = -0.06467735252 + mf1*(-0.95208758351+0.28503*sin2t) &
269  + mf2*(-0.62609792333+2.2195*sin2t)
270  ddp3(i,j,k,1) = 0.19758818347 + mf1 * 2.99242575222 + mf2*1.29246858189
271  ddp3(i,j,k,2) = -0.80875619458 + mf1*(-2.38026356489) + mf2*1.65427830900
272  ddp3(i,j,k,3) = 0.69028490492 + mf1*(-0.27012609786) + mf2*(-3.43967436378)
273  ddp3(i,j,k,4) = 0.0
274 
275 ! ENDIF
276  END DO
277 
278 ! ENDIF
279  END DO
280 END DO
281 
282 END SUBROUTINE dd_const
283 
284 
285 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
286 ! SUBROUTINE qq_const
287 !
288 ! This subroutine provides the constants of the quadrupole-term.
289 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
290 !
291  SUBROUTINE qq_const ( qqp2,qqp3,qqp4 )
292 !
293  USE parameters, ONLY: nc
294  USE eos_variables, ONLY: ncomp, parame
295  IMPLICIT NONE
296 !
297 ! ----------------------------------------------------------------------
298  REAL, INTENT(OUT) :: qqp2(nc,nc,0:8)
299  REAL, INTENT(OUT) :: qqp3(nc,nc,nc,0:8)
300  REAL, INTENT(OUT) :: qqp4(nc,nc,0:8)
301 !
302 ! ----------------------------------------------------------------------
303  INTEGER :: i, j, k
304  REAL :: mqq(nc)
305  REAL :: mf1, mf2, msegij
306 ! ----------------------------------------------------------------------
307 
308 DO i = 1,ncomp
309  mqq(i) = parame(i,1)
310  IF (mqq(i) > 2.0) mqq(i) = 2.0
311 END DO
312 
313 DO i = 1,ncomp
314  DO j = 1,ncomp
315  IF (parame(i,7) /= 0.0 .AND. parame(j,7) /= 0.0) THEN
316 
317  msegij=(mqq(i)*mqq(j))**0.5
318 ! msegij=(parame(i,1)*parame(j,1))**0.50
319  mf1 = (msegij-1.0)/msegij
320  mf2 = mf1*(msegij-2.0)/msegij
321 
322  qqp2(i,j,0) = 1.237830788 + mf1 * 1.285410878 + mf2*1.794295401
323  qqp2(i,j,1) = 2.435503144 + mf1*(-11.46561451) + mf2*0.769510293
324  qqp2(i,j,2) = 1.633090469 + mf1 *22.08689285 + mf2*7.264792255
325  qqp2(i,j,3) = -1.611815241 + mf1 * 7.46913832 + mf2*94.48669892
326  qqp2(i,j,4) = 6.977118504 + mf1*(-17.19777208) + mf2*(-77.1484579)
327 
328  qqp4(i,j,0) = 0.454271755 + mf1*(-0.813734006) + mf2*6.868267516
329  qqp4(i,j,1) = -4.501626435 + mf1 * 10.06402986 + mf2*(-5.173223765)
330  qqp4(i,j,2) = 3.585886783 + mf1*(-10.87663092) + mf2*(-17.2402066)
331  qqp4(i,j,3) = 0.0
332  qqp4(i,j,4) = 0.0
333 
334  DO k = 1,ncomp
335  IF (parame(k,7) /= 0.0) THEN
336  msegij=(mqq(i)*mqq(j)*mqq(k))**(1.0/3.0)
337 ! msegij=(parame(i,1)*parame(j,1)*parame(k,1))**(1.0/3.0)
338  mf1 = (msegij-1.0)/msegij
339  mf2 = mf1*(msegij-2.0)/msegij
340  qqp3(i,j,k,0) = -0.500043713 + mf1 * 2.000209381 + mf2*3.135827145
341  qqp3(i,j,k,1) = 6.531869153 + mf1*(-6.78386584) + mf2*7.247588801
342  qqp3(i,j,k,2) = -16.01477983 + mf1 * 20.38324603 + mf2*3.075947834
343  qqp3(i,j,k,3) = 14.42597018 + mf1*(-10.89598394)
344  qqp3(i,j,k,4) = 0.0
345  END IF
346  END DO
347 
348  END IF
349  END DO
350 END DO
351 
352 END SUBROUTINE qq_const
353 
354 
355 
356 
357 
358 
359 
360 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
361 !
362 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
363 !
364  SUBROUTINE set_default_eos_numerical
365 !
367  IMPLICIT NONE
368 !
369 ! ----------------------------------------------------------------------
370 
371  ideal_gas = 'no' ! ( yes, no )
372  hard_sphere = 'CSBM' ! ( CSBM, no )
373  chain_term = 'TPT1' ! ( TPT1, HuLiu, no )
374  disp_term = 'PC-SAFT' ! ( PC-SAFT, CK, PT1, PT2, PT_MF, PT_MIX, no )
375  hb_term = 'TPT1_Chap' ! ( TPT1_Chap, no )
376  lc_term = 'no' ! ( MSaupe, OVL, no )
377  branch_term = 'no' ! ( TPT2, no )
378  ii_term = 'no'
379  id_term = 'no'
380 
381  subtract1 = 'no' ! (1PT, 2PT, no)
382  subtract2 = 'no' ! (ITTpolar, no)
383 
384 END SUBROUTINE set_default_eos_numerical
385 
386 
387 
388 
389 
390 
391 
392 
393 
394 SUBROUTINE read_input
395 !
396  USE basic_variables
397  IMPLICIT NONE
398 !
399 ! ----------------------------------------------------------------------
400  INTEGER :: i
401  REAL :: reading2,reading3,sumfeed
402  CHARACTER (LEN=4) :: uoutp, uinp
403  CHARACTER (LEN=1) :: uoutt, uint
404  CHARACTER (LEN=50) :: filename
405  CHARACTER (LEN=30) :: reading1
406 ! ----------------------------------------------------------------------
407 
408  filename='./input_file/INPUT.INP'
409  CALL file_open(filename,30)
410  READ (30,*) eos, pol !J: specify by numbers! eos(1=pcsaft, 2=SRK,...) pol (=polar) yes(1) no(0)
411  READ (30,*) t, uint, p, uinp !J: t: value of temp, uint: unit of temp, p: value of pressure, uinp: unit of pressure
412 
413  ncomp = 0
414  i = 0
415  sumfeed = 0.0
416  read_loop: DO
417  READ (30,*) reading1,reading2,reading3
418  IF (reading1 == 'end') EXIT read_loop
419  ncomp = ncomp + 1
420  i = i + 1
421  compna(i)= reading1 ! comp.name
422  mm(i) = reading2 ! molec.mass (mandatory only for polymers)
423  xif(i) = reading3 !J: molefractions
424  sumfeed = sumfeed + xif(i)
425  ENDDO read_loop
426 
427  CLOSE (30)
428 
429  IF (sumfeed /= 0.0 .AND. sumfeed /= 1.0) THEN !J: in case mole fractions dont sum up to 1??
430  xif(1:ncomp) = xif(1:ncomp)/sumfeed
431  END IF
432 
433  uoutt = uint
434  uoutp = uinp
435  IF (uint == 'C') THEN !J: unit stuff
436  u_in_t = 273.15
437  ELSE
438  u_in_t = 0.0
439  END IF
440  IF (uinp == 'bar') THEN
441  u_in_p = 1.e5
442  ELSE IF (uinp == 'mbar') THEN
443  u_in_p = 1.e2
444  ELSE IF (uinp == 'MPa') THEN
445  u_in_p = 1.e6
446  ELSE IF (uinp == 'kPa') THEN
447  u_in_p = 1.e3
448  ELSE
449  u_in_p = 1.e0
450  END IF
451 
452  IF (uoutt == 'C') THEN
453  u_out_t = 273.15
454  ELSE
455  u_out_t = 0.0
456  END IF
457  IF (uoutp == 'bar') THEN
458  u_out_p = 1.e5
459  ELSE IF (uoutp == 'mbar') THEN
460  u_out_p = 1.e2
461  ELSE IF (uoutp == 'MPa') THEN
462  u_out_p = 1.e6
463  ELSE IF (uoutp == 'kPa') THEN
464  u_out_p = 1.e3
465  ELSE
466  u_out_p = 1.0
467  END IF
468 
469  t = t + u_in_t !J: calculate temp in Kelvin
470  p = p * u_in_p !J: calculate pressure in Pascal
471 
472  CALL para_input ! retriev pure comp. parameters
473 
474  IF (ncomp == 1) THEN
475  WRITE (40,*) ' T P rho_1 rho_2 h_LV'
476  ELSE IF (ncomp == 2) THEN
477  ! WRITE (40,*) ' x2_phase1 x2_phase2 w1_phase1 w2_phase2 T P rho1 rho2'
478  WRITE (40,*) ' '
479  ELSE IF (ncomp == 3) THEN
480  WRITE (40,*) ' x1_ph1 x2_ph1 x3_ph1 x1_ph2', &
481  ' x2_ph2 x3_ph2 T P rho1 rho2'
482  END IF
483 
484  END SUBROUTINE read_input
485 
486 
487 
488 
489 
490 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
491 ! SUBROUTINE file_open
492 !
493 ! This subroutine opens files for reading. Beforehand, it checks
494 ! whether this file is available.
495 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
496 !
497  SUBROUTINE file_open(filename,file_number)
498 !
499 ! ----------------------------------------------------------------------
500  CHARACTER (LEN=50) :: filename
501  INTEGER :: file_number
502  LOGICAL :: filefound
503 ! ----------------------------------------------------------------------
504 
505 INQUIRE (file=filename, exist = filefound)
506 IF (filefound) THEN
507  OPEN (file_number, file = filename)
508 ELSE
509  write (*,*) ' Surface Tension Code: FOLLOWING FILE CAN NOT BE OPENED', filename
510  stop 5
511 END IF
512 
513 END SUBROUTINE file_open
514 
515 
516 
517 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
518 ! SUBROUTINE para_input
519 !
520 ! This subroutine provides pure component parameters and kij parameters.
521 ! The following syntax applies:
522 !
523 ! compna(i) component name
524 ! parame(i,k) pure comp. parameter:
525 ! parame(i,1): segment number [/]
526 ! parame(i,2): segment diameter "sigma" [Angstrom]
527 ! parame(i,3): segment energy param. epsilon/k [K]
528 ! parame(i,4): model parameter; not used for PC-SAFT (=0)
529 ! it is 10K most of the time for SAFT [K]
530 ! parame(i,5): Param. for T-dependent segment diameter [/]
531 ! parame(i,6): dipolar moment [debye]
532 ! parame(i,7): quadrupolar moment [debye]
533 ! parame(i,8): number of segments that are part of a branching 4-mer [/]
534 ! parame(i,9):
535 ! parame(i,10): ionic charge number (positiv or negativ) [/]
536 ! parame(i,11): polarizability [A**3]
537 ! parame(i,12): number of association sites [/]
538 ! parame(i,13): (=kap_hb, see below) [/]
539 ! parame(i,14 to 25): (=eps_hb, see below) [K]
540 ! nhb_typ(i) number of different types of association sites (comp. i)
541 ! nhb_no(i,k) number of association sites of type k
542 ! eps_hb depth of association potential [K]
543 ! kap_hb effective width of assoc. potential (angle-averg.)
544 ! mm molec. mass
545 ! scaling param. for roughly scaling the set of objective functions
546 !
547 ! As opposed to low-molec mass compounds, the molecular mass of a
548 ! polymer is not obtained from this routine. Rather, it is a
549 ! user-specification given in the file INPUT.INP
550 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
551 !
552  SUBROUTINE para_input
553 !
554  USE basic_variables
555  IMPLICIT NONE
556 !
557 !----------------------------------------------------------------------
558  INTEGER :: i
559 !----------------------------------------------------------------------
560 
561 IF (eos == 1) THEN
562  CALL pcsaft_par
563 ELSE IF (eos == 4 .OR. eos == 5 .OR. eos == 6 .OR. eos == 8) THEN
564  ! CALL lj_par
565  write (*,*) 'deactivated this line when making a transition to f90'
566  stop 5
567 ELSE IF (eos == 7) THEN
568  ! CALL sw_par
569  write (*,*) 'deactivated this line when making a transition to f90'
570  stop 5
571 ELSE IF (eos == 10) THEN
572  i = 1
573  IF (compna(i) == 'LC_generic' .AND. ncomp == 1 ) THEN
574  mm(i) = 1.0
575  parame(i,1) = 7.0
576  parame(i,2) = 1.0
577  parame(i,3) = 0.0
578  ELSE
579  write (*,*) 'PARA_INPUT: define the component !'
580  stop 5
581  ENDIF
582 ELSE
583  !CALL saft_par
584 END IF
585 
586 DO i = 1, ncomp
587  IF ( mm(i) >= 1.0 .AND. mm(i) < 45.0 ) THEN
588  scaling(i) = 10000.0
589  ELSE IF( mm(i) >= 45.0 .AND. mm(i) < 90.0 ) THEN
590  scaling(i) = 1000.0
591  ELSE IF( mm(i) >= 90.0 .AND. mm(i) < 150.0 ) THEN
592  scaling(i) = 100.0
593  ELSE IF( mm(i) >= 150.0 .AND. mm(i) < 250.0 ) THEN
594  scaling(i) = 10.0
595  ELSE
596  scaling(i) = 1.0
597  END IF
598  IF (parame(i,10) /= 0.0) scaling(i) = scaling(i) / 1.e4 ! Electrolytes
599 END DO
600 
601 END SUBROUTINE para_input
602 
603 
604 
605 
606 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
607 ! SUBROUTINE pcsaft_par
608 !
609 ! pure component parameters and kij parameters
610 ! (as described in SUBROUTINE para_input)
611 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
612 !
613  SUBROUTINE pcsaft_par
614 !
615  USE basic_variables
616  IMPLICIT NONE
617 !
618 !----------------------------------------------------------------------
619  INTEGER :: i, j, k, no
620  INTEGER, DIMENSION(nc) :: nhb_typ
621  INTEGER, DIMENSION(nc,nsite) :: nhb_no
622  REAL, DIMENSION(nc,nc,nsite,nsite) :: eps_hb
623  REAL, DIMENSION(nc,nc) :: kap_hb
624 !----------------------------------------------------------------------
625 
626 
627 DO i = 1, ncomp
628  parame(i,4) = 0.0 ! T correct. required for SAFT, not PC-SAFT
629  parame(i,5) = 0.12 ! Param. for T-dependent segment diameter
630  parame(i,6) = 0.0 ! dipolar moment
631  parame(i,7) = 0.0 ! quadrupolar moment
632  parame(i,8) = 0.0 ! number of segments that are part of a branching 4-mer
633  parame(i,9) = 0.0
634  parame(i,10)= 0.0 ! ionic charge number
635  parame(i,11)= 0.0 ! polarizability
636  lli(i) = 0.0
637  phi_criti(i)= 0.0
638  chap(i) = 0.0
639 
640  nhb_typ(i) = 0
641  kap_hb(i,i) = 0.0
642  ! irgendwann sollten nhb_typ und kap_hb durch parame(i,12) und (i,13)
643  ! ersetzt werden.
644  IF (compna(i) == 'ps') THEN
645  parame(i,1) = mm(i)*1.9e-2
646  parame(i,2) = 4.10705961
647  parame(i,3) = 267.0
648  ELSE IF (compna(i) == 'ps_J') THEN !from Xu,Diego: DFT for polymer-co2 mixtures: A PC-SAFT approach
649  parame(i,1) = mm(i)*0.0253
650  parame(i,2) = 3.45
651  parame(i,3) = 328.1
652  ELSE IF (compna(i) == 'co2_J') THEN !from Xu,Diego: DFT for polymer-co2 mixtures: A PC-SAFT approach
653  parame(i,1) = 2.0
654  parame(i,2) = 2.79
655  parame(i,3) = 170.5
656 
657 
658 
659  ELSE IF (compna(i) == 'pg2') THEN !Polyglycerol 2
660  mm(i) = 2000.0
661  parame(i,1) = mm(i)*2.37e-2 ! from figure 5 PCSAFT paper
662  parame(i,2) = 3.8 ! from figure 5 PCSAFT paper
663  parame(i,3) = 270.0 ! starting value for iteration
664  ! this is the extra parameter
665  parame(i,8) = mm(i)*2.37e-2
666 
667  nhb_typ(i) = 2 ! no. of different association sites
668  nhb_no(i,1) = 27 ! no. of sites of type 1
669  nhb_no(i,2) = 27 ! no. of sites of type 2
670  eps_hb(i,i,1,2)= 2544.6 ! taken from butanol (same M/OH)
671  eps_hb(i,i,2,1)= 2544.6
672  eps_hb(i,i,1,1)= 0.0
673  eps_hb(i,i,2,2)= 0.0
674  kap_hb(i,i)= .00489087833 ! taken from butanol (same M/OH)
675  ELSE IF (compna(i) == 'peva') THEN
676  parame(i,1) = mm(i)*2.63e-2
677  ! -- 0 Gew.% VA-------------
678  ! parame(i,2) = 4.021767
679  ! parame(i,3) = 249.5
680  ! -- 7.5 Gew.% VA-------------
681  ! parame(i,2) = 4.011
682  ! parame(i,3) = 248.1864
683  ! parame(i,3) = 247.6286
684  ! ---12.7 Gew.% VA------------
685  ! parame(i,2) = 4.0028
686  ! parame(i,3) = 247.2075
687  ! parame(i,3) = 246.24454
688  ! ---27.3 Gew.% VA------------
689  ! parame(i,2) = 3.9762
690  ! parame(i,3) = 244.114
691  ! parame(i,3) = 241.9345
692  ! ---31.8 Gew.% VA------------
693  parame(i,2) = 3.9666
694  parame(i,3) = 243.0436
695  ! parame(i,3) = 240.46
696  ! ---42.7 Gew.% VA------------
697  ! parame(i,2) = 3.9400
698  ! parame(i,3) = 240.184
699  ! parame(i,3) = 236.62
700  ! ---------------
701  ELSE IF (compna(i) == 'pp') THEN
702  parame(i,1) = mm(i)*2.2e-2
703  parame(i,2) = 4.2
704  parame(i,3) = 220.0
705 
706  parame(i,1) = mm(i)*0.0230487701
707  parame(i,2) = 4.1
708  parame(i,3) = 217.0
709  ELSE IF (compna(i) == 'pe') THEN
710  parame(i,1) = mm(i)*2.622e-2
711  parame(i,2) = 4.021767
712  parame(i,3) = 252.0
713  ! HDPE: extrapolated from pure comp. param. of n-alkane series!
714  ! parame(i,1) = mm(i)*2.4346E-2
715  ! parame(i,2) = 4.07182
716  ! parame(i,3) = 269.67
717  !! parame(i,3) = 252.5
718  ELSE IF (compna(i) == 'ldpe') THEN
719  parame(i,1) = mm(i)*2.63e-2
720  parame(i,2) = 4.021767
721  parame(i,3) = 249.5
722  ELSE IF (compna(i) == 'pba') THEN
723  parame(i,1) = mm(i)*2.5872e-2
724  parame(i,2) = 3.95
725  parame(i,3) = 229.0
726  ELSE IF (compna(i) == 'dextran') THEN
727  parame(i,1) = mm(i)*2.e-2
728  parame(i,2) = 4.0
729  parame(i,3) = 300.0
730  ELSE IF (compna(i) == 'glycol-ethers') THEN
731  ! mm(i) = 218.0
732  ! parame(i,1) = 7.4044
733  ! parame(i,2) = 3.61576
734  ! parame(i,3) = 244.0034598
735  mm(i) = 222.0
736  parame(i,1) = 7.994
737  parame(i,2) = 3.445377778
738  parame(i,3) = 234.916506
739  ELSE IF (compna(i) == 'LJ') THEN
740  mm(i) = 1.0
741  parame(i,1) = 1.0
742  parame(i,2) = 1.0
743  parame(i,3) = 1.0
744  ELSE IF (compna(i) == 'LJ1205') THEN
745  mm(i) = 1.0
746  parame(i,1) = 1.0
747  parame(i,2) = 1.0
748  parame(i,3) = 140.0
749  ELSE IF (compna(i) == 'adamantane') THEN
750  mm(i) = 136.235000000000
751  parame(i,1) = 4.81897145432221
752  parame(i,2) = 3.47128575274660
753  parame(i,3) = 266.936967922521
754 
755  Else IF (compna(i) == '14-butandiol') THEN
756  mm(i) = 90.12
757  parame(i,1) = 4.35923557
758  parame(i,2) = 3.02947364
759  parame(i,3) = 197.11998863
760 
761  Else IF (compna(i) == 'surfactant') THEN
762  mm(i) = 2655.24078
763  parame(i,1) = 78.5859962
764  parame(i,2) = 4.17006833
765  parame(i,3) = 230.284526
766  parame(i,6) = 17.9645
767 
768 
769 
770  Else IF(compna(i) == 'po') THEN
771  mm(i) = 90.12
772  parame(i,1) = 4.35923557
773  parame(i,2) = 3.02947364
774  parame(i,3) = 197.11998863
775 
776  ELSE IF (compna(i) == 'air') THEN
777  mm(i) = 28.899 !n2 and o2 according to mole fractions
778  parame(i,1) = 1.18938 !n2 and o2 according to mole fractions (weighted artihm. avg)
779  parame(i,2) = 3.28694 !n2 and o2 according to mole fractions (weighted artihm. avg)
780  parame(i,3) = 95.672 !n2 and o2 according to mole fractions (weighted artihm. avg)
781 
782 
783 
784  Else IF(compna(i) == 'mdi') THEN
785  mm(i) = 2.50252e+02
786  parame(i,1) = mm(i)*0.030769
787  parame(i,2) = 2.886003
788  parame(i,3) = 283.052778
789 
790  Else IF(compna(i) == 'pu') THEN
791 ! mm(i) = 2042.22 !pu n = 5
792 ! parame(i,1) = mm(i)*0.008845
793 ! parame(i,2) = 5.680270
794 ! parame(i,3) = 497.997594
795  mm(i) = 340.37 !pu n = 0
796  parame(i,1) = mm(i)*0.043312
797  parame(i,2) = 3.008359
798  parame(i,3) = 273.445205
799 ! mm(i) = 680.74 !pu n = 1
800 ! parame(i,1) = mm(i)*0.024106
801 ! parame(i,2) = 3.744327
802 ! parame(i,3) = 321.486386
803 ! mm(i) = 1021.11 !pu n = 2
804 ! parame(i,1) = mm(i)*0.015076
805 ! parame(i,2) = 4.537837
806 ! parame(i,3) = 400.036950
807 
808 
809  Else IF(compna(i) == 'tpg') THEN
810  mm(i) = 192.25
811  parame(i,1) = mm(i)*0.01239
812  parame(i,2) = 4.549
813  parame(i,3) = 148.678
814  parame(i,6) = 0.41
815 
816  nhb_typ(i) = 2 ! no. of different association sites
817  nhb_no(i,1) = 2 ! no. of sites of type 1
818  nhb_no(i,2) = 2 ! no. of sites of type 2
819 
820  eps_hb(i,i,1,2)= 5597.844
821  eps_hb(i,i,2,1)= 5597.844
822  eps_hb(i,i,1,1)= 0.0
823  eps_hb(i,i,2,2)= 0.0
824  kap_hb(i,i) = 0.03
825 
826 
827  ELSE IF (compna(i) == 'methane') THEN
828  mm(i) = 16.043
829  parame(i,1) = 1.0
830  parame(i,2) = 3.70388767
831  parame(i,3) = 150.033987
832  ! LLi(i) = 1.185*parame(i,2)
833  ! phi_criti(i)= 11.141
834  ! chap(i) = 0.787
835  lli(i) = 1.398*parame(i,2)
836  phi_criti(i)= 16.01197
837  chap(i) = 0.6
838  IF (pol == 2) parame(i,11)= 2.593
839  ! --- adjusted to Tc, Pc und omega ---
840  ! mm(i) = 16.0430000000000
841  ! parame(i,1) = 1.03353666429362
842  ! parame(i,2) = 3.64824920605089
843  ! parame(i,3) = 147.903953522994
844  lli(i) = 2.254442763775*parame(i,2)
845  phi_criti(i)= 42.060975627454
846  chap(i) = 0.704895924
847  lli(i) = 1.935801125833*parame(i,2)
848  phi_criti(i)= 26.363325937261
849  chap(i) = 0.700112854298
850  lli(i) = 2.610103087662*parame(i,2)
851  phi_criti(i)= 38.192854403173
852  chap(i) = 0.812100472735
853  ! 2.122960316503 34.937141524804 0.734513223627
854  ! 2.082897379591 33.036391564859 0.877578492999
855  ELSE IF (compna(i) == 'ethane') THEN
856  mm(i) = 30.070
857  parame(i,1) =mm(i)* .0534364758
858  parame(i,2) = 3.5205923
859  parame(i,3) = 191.423815
860  lli(i) = 1.40*parame(i,2)
861  phi_criti(i)= 15.38
862  chap(i) = 0.520
863  IF (pol == 2) parame(i,11)= 4.3
864  ! --- adjusted to Tc, Pc und omega ---
865  ! mm(i) = 30.069
866  ! parame(i,1) = 1.74034548122
867  ! parame(i,2) = 3.4697441893134
868  ! parame(i,3) = 181.90770083591
869  IF (pol >= 1) mm(i) = 30.0700000000000
870  IF (pol >= 1) parame(i,1) = mm(i)* 5.341907666260094e-002
871  IF (pol >= 1) parame(i,2) = 3.52104466654628
872  IF (pol >= 1) parame(i,3) = 191.449300423694
873  IF (pol >= 1) parame(i,7) = 0.650000000000000
874  IF (pol >= 1) lli(i) = 0.0
875  IF (pol >= 1) phi_criti(i)= 0.0
876  IF (pol >= 1) chap(i) = 0.0
877  ELSE IF (compna(i) == 'propane') THEN
878  mm(i) = 44.096
879  parame(i,1) = mm(i)* .0453970622
880  parame(i,2) = 3.61835302
881  parame(i,3) = 208.110116
882  lli(i) = 1.8*parame(i,2)
883  phi_criti(i)= 21.0
884  chap(i) = 1.0
885  lli(i) = 1.63*parame(i,2)
886  phi_criti(i)= 20.37
887  chap(i) = 0.397
888  IF (pol == 2) parame(i,11)= 6.29
889  ELSE IF (compna(i) == 'butane_debug') THEN
890  mm(i) = 58.123
891  parame(i,1) = 2.3374
892  parame(i,2) = 3.6655
893  parame(i,3) = 214.805
894  ELSE IF (compna(i) == 'butane') THEN
895  mm(i) = 58.123
896  parame(i,1) = mm(i)* .0401146927
897  parame(i,2) = 3.70860139
898  parame(i,3) = 222.877405
899  lli(i) = 1.75*parame(i,2)
900  phi_criti(i)= 23.43
901  chap(i) = 0.304
902  ! LLi(i) = 1.942079633622*parame(i,2)
903  ! phi_criti(i)= 24.527323443155
904  ! chap(i) = 0.734064026277
905  ! LLi(i) = 1.515115760477*parame(i,2)
906  ! phi_criti(i)= 17.682929717796
907  ! chap(i) = 0.335848717079
908  IF (pol == 2) parame(i,11)= 8.2
909  ! --- adjusted to Tc, Pc und omega ---
910  ! mm(i) = 58.1230000000
911  ! parame(i,1) = 2.45352304112
912  ! parame(i,2) = 3.74239117802
913  ! parame(i,3) = 214.185157925
914  ELSE IF (compna(i) == 'pentane') THEN
915  mm(i) = 72.146
916  parame(i,1) = mm(i)* .03727896
917  parame(i,2) = 3.77293174
918  parame(i,3) = 231.197015
919  IF (pol == 2) parame(i,11)= 9.99
920  ELSE IF (compna(i) == 'hexane') THEN
921  mm(i) = 86.177
922  parame(i,1) = mm(i)* .0354812325
923  parame(i,2) = 3.79829291
924  parame(i,3) = 236.769054
925  lli(i) = 2.24*parame(i,2)
926  phi_criti(i)= 33.25
927  chap(i) = 0.205
928  IF (pol == 2) parame(i,11)= 11.9
929  ELSE IF (compna(i) == 'heptane') THEN
930  mm(i) = 100.203
931  parame(i,1) = mm(i)* .034762384
932  parame(i,2) = 3.80487025
933  parame(i,3) = 238.400913
934  lli(i) = 2.35*parame(i,2)
935  phi_criti(i)= 38.10
936  chap(i) = 0.173
937  IF (pol == 2) parame(i,11)= 13.61
938  ELSE IF (compna(i) == 'octane') THEN
939  mm(i) = 114.231
940  parame(i,1) = mm(i)* .0334228038
941  parame(i,2) = 3.83732677
942  parame(i,3) = 242.775853
943  ! LLi(i) = 2.0*parame(i,2)
944  ! phi_criti(i)= 18.75
945  ! chap(i) = 1.0
946  lli(i) = 2.63*parame(i,2)
947  phi_criti(i)= 42.06
948  chap(i) = 0.155
949  IF (pol == 2) parame(i,11)= 15.9
950  ELSE IF (compna(i) == 'nonane') THEN
951  mm(i) = 128.25
952  parame(i,1) = mm(i)* .0328062594
953  parame(i,2) = 3.84483643
954  parame(i,3) = 244.508457
955  ELSE IF (compna(i) == 'decane') THEN
956  mm(i) = 142.285
957  parame(i,1) = mm(i)* .03277373
958  parame(i,2) = 3.8384498
959  parame(i,3) = 243.866074
960  lli(i) = 1.845*parame(i,2)
961  phi_criti(i)= 21.27
962  chap(i) = 1.0
963  lli(i) = 2.68*parame(i,2)
964  phi_criti(i)= 45.0
965  chap(i) = 0.15
966  IF (pol == 2) parame(i,11)= 19.1
967  ! --- adjusted to Tc, Pc und omega ---
968  ! parame(i,1) = 4.794137228322
969  ! parame(i,2) = 4.030446690586
970  ! parame(i,3) = 236.5884493386
971  ELSE IF (compna(i) == 'dodecane') THEN
972  mm(i) = 170.338
973  parame(i,1) = mm(i)* .0311484156
974  parame(i,2) = 3.89589236
975  parame(i,3) = 249.214532
976 ELSE IF (compna(i) == 'tetradecane') THEN
977  mm(i) = 198.39
978  parame(i,1) = 5.9002!mm(i)* .0311484156
979  parame(i,2) = 3.9396
980  parame(i,3) = 254.21
981  ELSE IF (compna(i) == 'hexadecane') THEN
982  mm(i) = 226.446
983  parame(i,1) = mm(i)* .0293593045
984  parame(i,2) = 3.95516743
985  parame(i,3) = 254.700131
986  ELSE IF (compna(i) == 'octadecane') THEN
987  mm(i) = 254.5
988  parame(i,1) = 7.3271
989  parame(i,2) = 3.9668
990  parame(i,3) = 256.20
991  IF (pol == 2) parame(i,11)= 30.2
992  ! --- adjusted to Tc, Pc und omega ---
993  ! mm(i) = 226.446000000000
994  ! parame(i,1) = 6.66976520488694
995  ! parame(i,2) = 4.25025597912511
996  ! parame(i,3) = 249.582941976119
997  ELSE IF (compna(i) == 'eicosane') THEN
998  mm(i) = 282.553
999  parame(i,1) = mm(i)* .0282572812
1000  parame(i,2) = 3.98692612
1001  parame(i,3) = 257.747939
1002  ELSE IF (compna(i) == 'triacontane') THEN
1003  ! mm(i) = 422.822 ! polyethylene parameters
1004  ! parame(i,1) = mm(i)*2.622E-2
1005  ! parame(i,2) = 4.021767
1006  ! parame(i,3) = 252.0
1007  mm(i) = 422.822 ! param. by extrapolation of n-alkanes
1008  parame(i,1) = mm(i)* 0.026922527
1009  parame(i,2) = 4.007608009
1010  parame(i,3) = 262.28622
1011  ELSE IF (compna(i) == 'octaeicosane') THEN
1012  mm(i) = 395.0 ! param. by extrapolation of n-alkanes (sloppy!!)
1013  parame(i,1) = mm(i)* 0.026922527
1014  parame(i,2) = 4.007608009
1015  parame(i,3) = 262.28622
1016  ELSE IF (compna(i) == 'tetracontane') THEN
1017  ! mm(i) = 563.1 ! polyethylene parameters
1018  ! parame(i,1) = mm(i)*2.622E-2
1019  ! parame(i,2) = 4.021767
1020  ! parame(i,3) = 252.0
1021  mm(i) = 563.1 ! param. by extrapolation of n-alkanes
1022  parame(i,1) = mm(i)*0.026287593
1023  parame(i,2) = 4.023277
1024  parame(i,3) = 264.10466
1025  ELSE IF (compna(i) == 'isobutane') THEN
1026  mm(i) = 58.123
1027  parame(i,1) = mm(i)* .0389105395
1028  parame(i,2) = 3.75735249
1029  parame(i,3) = 216.528584
1030  ELSE IF (compna(i) == 'isopentane') THEN
1031  mm(i) = 72.15
1032  parame(i,1) = 2.5620
1033  parame(i,2) = 3.8296
1034  parame(i,3) = 230.75
1035  ELSE IF (compna(i) == '2-methylpentane') THEN
1036  mm(i) = 86.177
1037  parame(i,1) = mm(i)* .0340166994
1038  parame(i,2) = 3.85354665
1039  parame(i,3) = 235.5801
1040  ELSE IF (compna(i) == '23-dimethylbutane') THEN
1041  mm(i) = 86.177
1042  parame(i,1) = mm(i)* .0311599207
1043  parame(i,2) = 3.9544545
1044  parame(i,3) = 246.068188
1045  ELSE IF (compna(i) == 'ethylene') THEN
1046  mm(i) = 28.05
1047  parame(i,1) = mm(i)* .0567939013
1048  parame(i,2) = 3.44499904
1049  parame(i,3) = 176.468725
1050  IF (pol == 2) parame(i,11)= 4.252
1051 ! eigener 3-ter Anlauf.
1052  IF (pol >= 1) parame(i,1) = mm(i)* 5.574644443117726e-002
1053  IF (pol >= 1) parame(i,2) = 3.43281482228714
1054  IF (pol >= 1) parame(i,3) = 178.627308564610
1055  IF (pol >= 1) parame(i,7) = 1.56885870200446
1056  IF (pol == 2) parame(i,11)= 4.252
1057  ELSE IF (compna(i) == 'propylene') THEN
1058  mm(i) = 42.081
1059  parame(i,1) = mm(i)* .0465710324
1060  parame(i,2) = 3.53559831
1061  parame(i,3) = 207.189309
1062  ! --- adjusted to Tc, Pc und omega ---
1063  ! mm(i) = 42.081
1064  ! parame(i,1) = 2.086735327675
1065  ! parame(i,2) = 3.536779407969
1066  ! parame(i,3) = 198.3529810625
1067  ELSE IF (compna(i) == '1-butene') THEN
1068  mm(i) = 56.107
1069  parame(i,1) = mm(i)* .0407524782
1070  parame(i,2) = 3.64305136
1071  parame(i,3) = 222.002756
1072  IF (pol == 2) parame(i,11)= 7.97
1073  ELSE IF (compna(i) == '1-pentene') THEN
1074  mm(i) = 70.134
1075  parame(i,1) = 2.6006
1076  parame(i,2) = 3.7399
1077  parame(i,3) = 231.99
1078  ELSE IF (compna(i) == '1-hexene') THEN
1079  mm(i) = 84.616
1080  parame(i,1) = mm(i)* .0352836857
1081  parame(i,2) = 3.77529612
1082  parame(i,3) = 236.810973
1083  ELSE IF (compna(i) == '1-octene') THEN
1084  mm(i) = 112.215
1085  parame(i,1) = mm(i)* .033345175
1086  parame(i,2) = 3.81329011
1087  parame(i,3) = 243.017587
1088  ELSE IF (compna(i) == 'cyclopentane') THEN
1089  mm(i) = 70.13
1090  parame(i,1) = mm(i)* .0337262571
1091  parame(i,2) = 3.71139254
1092  parame(i,3) = 265.828755
1093  ELSE IF (compna(i) == 'cyclohexane') THEN
1094  mm(i) = 84.147
1095  parame(i,1) = mm(i)* .0300695505
1096  parame(i,2) = 3.84990887
1097  parame(i,3) = 278.108786
1098  IF (pol == 2) parame(i,11)= 10.87
1099  ELSE IF (compna(i) == 'toluene') THEN
1100  mm(i) = 92.141
1101  parame(i,1) = mm(i)* .0305499338
1102  parame(i,2) = 3.71689689
1103  parame(i,3) = 285.68996
1104  IF (pol == 2) parame(i,11)= 11.8
1105  ! --- adjusted to Tc, Pc und omega ---
1106  ! mm(i) = 92.141
1107  ! parame(i,1) = 3.002119827762
1108  ! parame(i,2) = 3.803702734224
1109  ! parame(i,3) = 271.9428642880
1110  ELSE IF (compna(i) == 'm-xylene') THEN
1111  mm(i) = 106.167
1112  parame(i,1) = mm(i)* .030011086
1113  parame(i,2) = 3.75625585
1114  parame(i,3) = 283.977525
1115  ELSE IF (compna(i) == 'o-xylene') THEN
1116  mm(i) = 106.167
1117  parame(i,1) = mm(i)* .0295409161
1118  parame(i,2) = 3.76000631
1119  parame(i,3) = 291.049123
1120  ELSE IF (compna(i) == 'thf') THEN
1121  mm(i) = 72.1057000000000
1122  ! parame(i,1) = mm(i)* 0.34311391E-01
1123  parame(i,1) = 2.47404685540709
1124  parame(i,2) = 3.51369375633677
1125  parame(i,3) = 274.181927093696
1126  parame(i,6) = 1.63100000000000
1127  ELSE IF (compna(i) == 'co2') THEN
1128  mm(i) = 44.01
1129  parame(i,1) = mm(i)* .0470968503
1130  parame(i,2) = 2.7851954
1131  parame(i,3) = 169.207418
1132  IF (pol >= 1) parame(i,1) = mm(i)* 3.438191426159075e-002
1133  IF (pol >= 1) parame(i,2) = 3.18693935424469
1134  IF (pol >= 1) parame(i,3) = 163.333232725156
1135  IF (pol >= 1) parame(i,7) = 4.400000000000
1136  IF (pol >= 1) lli(i) = 1.472215*parame(i,2)
1137  IF (pol >= 1) phi_criti(i)= 17.706567
1138  IF (pol >= 1) chap(i) = 0.5
1139  IF (pol == 2) parame(i,11)= 2.911
1140  ELSE IF (compna(i) == 'co') THEN
1141  IF (pol /= 1) write (*,*) 'parameters for co missing'
1142  IF (pol /= 1) stop 5
1143  IF (pol >= 1) mm(i) = 28.01
1144  IF (pol >= 1) parame(i,1) = mm(i)* 5.126059746332587e-002 ! 1.43580933494776
1145  IF (pol >= 1) parame(i,2) = 3.13556624711756
1146  IF (pol >= 1) parame(i,3) = 87.7191028693595
1147  IF (pol >= 1) parame(i,6) = 0.1098
1148  ELSE IF (compna(i) == 'n2') THEN
1149  mm(i) = 28.01
1150  parame(i,1) = mm(i)* .0430301713
1151  parame(i,2) = 3.3129702
1152  parame(i,3) = 90.9606924
1153  IF (pol >= 1) parame(i,1) = mm(i)* 3.971157114787596e-002
1154  IF (pol >= 1) parame(i,2) = 3.42116853868336
1155  IF (pol >= 1) parame(i,3) = 92.3972606842862
1156  IF (pol >= 1) parame(i,7) = 1.52000000000000
1157  IF (pol >= 1) lli(i) = 1.5188*parame(i,2)
1158  IF (pol >= 1) phi_criti(i)= 19.9247
1159  IF (pol >= 1) chap(i) = 0.375
1160  ! better RGT-results came later, with: 1.5822 21.201 0.3972
1161  ELSE IF (compna(i) == 'o2') THEN
1162  mm(i) = 32.05
1163  parame(i,1) = mm(i)* .0353671563
1164  parame(i,2) = 3.19465166
1165  parame(i,3) = 114.430197
1166  ELSE IF (compna(i) == 'hydrogen') THEN
1167  mm(i) = 2.016
1168  parame(i,1) = mm(i)* .258951975
1169  parame(i,2) = 4.43304935
1170  parame(i,3) = 29.6509579
1171 
1172  mm(i) = 2.016
1173  parame(i,1) = 1.0
1174  parame(i,2) = 2.915
1175  parame(i,3) = 38.0
1176 
1177  ! mm(i) = 2.016 ! Ghosh et al. 2003
1178  ! parame(i,1) = 1.0
1179  ! parame(i,2) = 2.986
1180  ! parame(i,3) = 19.2775
1181  ELSE IF (compna(i) == 'argon') THEN
1182  ! mm(i) = 39.948 ! adjusted m !!
1183  ! parame(i,1) = 0.9285
1184  ! parame(i,2) = 3.4784
1185  ! parame(i,3) = 122.23
1186  mm(i) = 39.948 ! enforced m=1 !!
1187  parame(i,1) = 1.0
1188  parame(i,2) = 3.3658
1189  parame(i,3) = 118.34
1190  IF (pol == 2) parame(i,11)= 1.6411
1191  ELSE IF (compna(i) == 'xenon') THEN
1192  mm(i) = 131.29
1193  parame(i,1) = 1.0
1194  parame(i,2) = 3.93143
1195  parame(i,3) = 227.749
1196  ELSE IF (compna(i) == 'chlorine') THEN ! Cl2
1197  mm(i) = 70.906
1198  parame(i,1) = 1.5514
1199  parame(i,2) = 3.3672
1200  parame(i,3) = 265.67
1201  ELSE IF (compna(i) == 'SF6') THEN
1202  mm(i) = 146.056 ! adjusted m !!
1203  parame(i,1) = 2.48191
1204  parame(i,2) = 3.32727
1205  parame(i,3) = 161.639
1206  ! mm(i) = 146.056 ! enforced m=1 !!
1207  ! parame(i,1) = 1.0
1208  ! parame(i,2) = 4.55222
1209  ! parame(i,3) = 263.1356
1210  ELSE IF (compna(i) == 'benzene') THEN
1211  mm(i) = 78.114
1212  parame(i,1) = mm(i)* .0315590546
1213  parame(i,2) = 3.64778975
1214  parame(i,3) = 287.354574
1215  IF (pol >= 1) mm(i) = 78.114 ! PCP-SAFT with m=2 in QQ term
1216  IF (pol >= 1) parame(i,1) = mm(i)* 2.932783311e-2 ! = 2.29091435590515
1217  IF (pol >= 1) parame(i,2) = 3.7563854
1218  IF (pol >= 1) parame(i,3) = 294.06253
1219  IF (pol >= 1) parame(i,7) = 5.5907
1220  ELSE IF (compna(i) == 'ethylbenzene') THEN
1221  mm(i) = 106.167
1222  parame(i,1) = mm(i)* .0290120497
1223  parame(i,2) = 3.79741116
1224  parame(i,3) = 287.348098
1225  IF (pol == 2) parame(i,11)= 13.3
1226  ELSE IF (compna(i) == 'propylbenzene') THEN
1227  mm(i) = 120.194
1228  parame(i,1) = mm(i)* .0278171627
1229  parame(i,2) = 3.8437772
1230  parame(i,3) = 288.128269
1231  ELSE IF (compna(i) == 'n-butylbenzene') THEN
1232  mm(i) = 134.221
1233  parame(i,1) = mm(i)* .0280642225
1234  parame(i,2) = 3.87267961
1235  parame(i,3) = 283.072331
1236  ELSE IF (compna(i) == 'tetralin') THEN
1237  mm(i) = 132.205
1238  parame(i,1) = mm(i)* .0250640795
1239  parame(i,2) = 3.87498866
1240  parame(i,3) = 325.065688
1241  ELSE IF (compna(i) == 'methylcyclohexane') THEN
1242  mm(i) = 98.182
1243  parame(i,1) = mm(i)* .0271259953
1244  parame(i,2) = 3.99931892
1245  parame(i,3) = 282.334148
1246  IF (pol == 2) parame(i,11)= 13.1
1247  ELSE IF (compna(i) == 'methylcyclopentane') THEN
1248  mm(i) = 84.156
1249  parame(i,1) = mm(i)* .0310459009
1250  parame(i,2) = 3.82534693
1251  parame(i,3) = 265.122799
1252  ELSE IF (compna(i) == 'acetone') THEN
1253  mm(i) = 58.0800000000000 ! PC-SAFT
1254  parame(i,1) = mm(i)* 4.870380408159182e-002 ! =2.82871694105885
1255  parame(i,2) = 3.24969003020675
1256  parame(i,3) = 250.262241927379
1257  lli(i) = 2.0021*parame(i,2)
1258  phi_criti(i)= 21.336
1259  chap(i) = 0.24931
1260  IF (pol >= 1) mm(i) = 58.0800000000000 ! PCP-SAFT
1261  IF (pol >= 1) parame(i,1) = mm(i)* 4.725811736856114e-002 ! =2.74475145676603
1262  IF (pol >= 1) parame(i,2) = 3.27423145271184
1263  IF (pol >= 1) parame(i,3) = 232.990879135326
1264  IF (pol >= 1) parame(i,6) = 2.88000000000000
1265  IF (pol >= 1) lli(i) = 2.0641*parame(i,2)
1266  IF (pol >= 1) phi_criti(i)= 28.1783
1267  IF (pol >= 1) chap(i) = 0.22695
1268  IF (pol >= 2) mm(i) = 58.0800000000000 ! PCIP-SAFT
1269  IF (pol >= 2) parame(i,1) = mm(i)* 4.902301475689938e-002 ! =2.84725669708072
1270  IF (pol >= 2) parame(i,2) = 3.23880349104868
1271  IF (pol >= 2) parame(i,3) = 220.884202656054
1272  IF (pol >= 2) parame(i,6) = 2.88000000000000
1273  IF (pol == 2) parame(i,11)= 6.40000000000000
1274  ELSE IF (compna(i) == 'butanone') THEN
1275  mm(i) = 72.1066 ! PC-SAFT
1276  parame(i,1) = mm(i)* 4.264192830122321e-002 ! =3.07476446724498
1277  parame(i,2) = 3.39324011060028
1278  parame(i,3) = 252.267273608975
1279  IF (pol >= 1) mm(i) = 72.1066 ! PCP-SAFT
1280  IF (pol >= 1) parame(i,1) = mm(i)* 4.137668924230600e-002 ! =2.98353238051926
1281  IF (pol >= 1) parame(i,2) = 3.42393701353423
1282  IF (pol >= 1) parame(i,3) = 244.994381354681
1283  IF (pol >= 1) parame(i,6) = 2.78000000000000
1284  IF (pol >= 2) mm(i) = 72.1066 ! PCIP-SAFT
1285  IF (pol >= 2) parame(i,1) = mm(i)* 4.254697075199448e-002 ! =3.06791740122577
1286  IF (pol >= 2) parame(i,2) = 3.39138375903252
1287  IF (pol >= 2) parame(i,3) = 236.527763837528
1288  IF (pol >= 2) parame(i,6) = 2.78000000000000
1289  IF (pol == 2) parame(i,11)= 8.13000000000000
1290  ELSE IF (compna(i) == '2-pentanone') THEN
1291  ! mm(i) = 86.134 ! PC-SAFT
1292  ! parame(i,1) = mm(i)* 3.982654501296355E-002 ! =3.43041962814660
1293  ! parame(i,2) = 3.46877976946838
1294  ! parame(i,3) = 249.834724442656
1295  ! mm(i) = 86.134 ! PCP-SAFT
1296  ! parame(i,1) = mm(i)* 3.893594769994072E-002 ! =3.35370891918669
1297  ! parame(i,2) = 3.49417356096593
1298  ! parame(i,3) = 246.656329096835
1299  ! parame(i,6) = 2.70000000000000
1300  mm(i) = 86.134 ! PCIP-SAFT
1301  parame(i,1) = mm(i)* 3.973160761515879e-002 ! =3.42224229032409
1302  parame(i,2) = 3.46827593107280
1303  parame(i,3) = 240.904278156822
1304  parame(i,6) = 2.70000000000000
1305  IF (pol == 2) parame(i,11)= 9.93000000000000
1306  ELSE IF (compna(i) == '3-pentanone') THEN
1307  mm(i) = 86.134 ! PC-SAFT
1308  parame(i,1) = 3.36439508013322
1309  parame(i,2) = 3.48770251979329
1310  parame(i,3) = 252.695415552376
1311  IF (pol >= 1) mm(i) = 86.134 ! PCP-SAFT
1312  IF (pol >= 1) parame(i,1) = 3.27863398611842
1313  IF (pol >= 1) parame(i,2) = 3.51592571835030
1314  IF (pol >= 1) parame(i,3) = 248.690775540981
1315  IF (pol >= 1) parame(i,6) = 2.82000000000000
1316  IF (pol == 2) mm(i) = 86.134 ! PCIP-SAFT
1317  IF (pol == 2) parame(i,1) = 3.34821857026283
1318  IF (pol == 2) parame(i,2) = 3.48903345340516
1319  IF (pol == 2) parame(i,3) = 242.314578558329
1320  IF (pol == 2) parame(i,6) = 2.82000000000000
1321  IF (pol == 2) parame(i,11)= 9.93000000000000
1322  ELSE IF (compna(i) == 'cyclohexanone') THEN ! from DIPPR
1323  ! IF (pol.GE.1) mm(i) = 98.1430 ! PCP-SAFT
1324  ! IF (pol.GE.1) parame(i,1) = 3.084202
1325  ! IF (pol.GE.1) parame(i,2) = 3.613681
1326  ! IF (pol.GE.1) parame(i,3) = 286.15865
1327  ! IF (pol.GE.1) parame(i,6) = 3.087862
1328  IF (pol >= 1) mm(i) = 98.1500000000000
1329  IF (pol >= 1) parame(i,1) = 2.72291913132818
1330  IF (pol >= 1) parame(i,2) = 3.79018433908522
1331  IF (pol >= 1) parame(i,3) = 314.772193827344
1332  IF (pol >= 1) parame(i,6) = 3.24600000000000
1333  IF (pol /= 1) WRITE (*,*) 'no non-polar param. for cyclohexanone'
1334  IF (pol /= 1) stop
1335  ELSE IF (compna(i) == 'propanal') THEN
1336  mm(i) = 58.08 ! PC-SAFT
1337  parame(i,1) = 2.67564746980910
1338  parame(i,2) = 3.26295953984941
1339  parame(i,3) = 251.888982765626
1340  IF (pol >= 1) mm(i) = 58.08 ! PCP-SAFT
1341  IF (pol >= 1) parame(i,1) = 2.60007872084995
1342  IF (pol >= 1) parame(i,2) = 3.28720732189761
1343  IF (pol >= 1) parame(i,3) = 235.205188090107
1344  IF (pol >= 1) parame(i,6) = 2.72000000000000
1345  IF (pol >= 2) mm(i) = 58.08 ! PCIP-SAFT
1346  IF (pol >= 2) parame(i,1) = 2.72471167411028
1347  IF (pol >= 2) parame(i,2) = 3.24781643022922
1348  IF (pol >= 2) parame(i,3) = 221.642071811094
1349  IF (pol >= 2) parame(i,6) = 2.72000000000000
1350  IF (pol >= 2) parame(i,11)= 6.50000000000000
1351  ELSE IF (compna(i) == 'butanal') THEN
1352  mm(i) = 72.1066000000000 ! PC-SAFT
1353  parame(i,1) = 2.96824823599784
1354  parame(i,2) = 3.44068916025889
1355  parame(i,3) = 253.929404992884
1356  IF (pol >= 1) mm(i) = 72.1066000000000 ! PCP-SAFT
1357  IF (pol >= 1) parame(i,1) = 2.86783706423953
1358  IF (pol >= 1) parame(i,2) = 3.47737904036296
1359  IF (pol >= 1) parame(i,3) = 247.543312127310
1360  IF (pol >= 1) parame(i,6) = 2.72000000000000
1361  ELSE IF (compna(i) == 'dmso') THEN
1362  mm(i) = 78.1300000000000 ! PC-SAFT
1363  parame(i,1) = 2.92225114054231
1364  parame(i,2) = 3.27780791606297
1365  parame(i,3) = 355.688793038512
1366  IF (pol >= 1) mm(i) = 78.1300000000000 ! PCP-SAFT
1367  IF (pol >= 1) parame(i,1) = 3.02433694138348
1368  IF (pol >= 1) parame(i,2) = 3.24270742566613
1369  IF (pol >= 1) parame(i,3) = 309.357476696679
1370  IF (pol >= 1) parame(i,6) = 3.96000000000000
1371  IF (pol >= 2) mm(i) = 78.1300000000000 ! PCIP-SAFT
1372  IF (pol >= 2) parame(i,1) = 3.19078234633277
1373  IF (pol >= 2) parame(i,2) = 3.19778269816832
1374  IF (pol >= 2) parame(i,3) = 286.337981216861
1375  IF (pol >= 2) parame(i,6) = 3.96000000000000
1376  IF (pol >= 2) parame(i,11)= 7.97000000000000
1377  ELSE IF (compna(i) == 'acetone_JC') THEN ! Jog-Chapman
1378  ! mm(i) = 58.0800000000000 ! Dominik et al.2005
1379  ! parame(i,1) = 2.221
1380  ! parame(i,2) = 3.607908
1381  ! parame(i,3) = 259.99
1382  ! parame(i,6) = 2.7
1383  ! parame(i,8) = 0.2258
1384  ! mm(i) = 58.0800000000000
1385  ! parame(i,1) = mm(i)* 3.556617369195472E-002
1386  ! parame(i,2) = 3.58780367502515
1387  ! parame(i,3) = 273.025100470307
1388  ! parame(i,6) = 2.70000000000000
1389  ! parame(i,8) = 0.229800000000000
1390 
1391  mm(i) = 58.08 ! Tumakaka Sadowski 2004
1392  parame(i,1) = mm(i)* 3.766e-2
1393  parame(i,2) = 3.6028
1394  parame(i,3) = 245.49
1395  parame(i,6) = 2.72
1396  parame(i,8) = 0.2969
1397  ! mm(i) = 58.0800000000000 ! no adjust. DD-param.
1398  ! parame(i,1) = 1.87041620247774
1399  ! parame(i,2) = 3.79783535570774
1400  ! parame(i,3) = 208.885730881588
1401  ! parame(i,6) = 2.88000000000000
1402  ! parame(i,8) = 1.0/parame(i,1)
1403  WRITE (*,*) 'caution: parame(i,8) is now used for branching'
1404  stop
1405  kij(1,2) = -0.005
1406  kij(2,1)=kij(1,2)
1407  ELSE IF (compna(i) == 'acetone_SF') THEN ! Saager-Fischer
1408  mm(i) = 58.08
1409  parame(i,1) = mm(i)* 4.603296414764944e-002
1410  parame(i,2) = 3.29454924451643
1411  parame(i,3) = 221.052649057645
1412  parame(i,6) = 2.70000000000000
1413  parame(i,8) = 0.625410000000000
1414  mm(i) = 58.08 ! form as expected from me - no DD-param adjusted.dat
1415  parame(i,1) = mm(i)* 4.364264724158790e-002 ! =2.53476495179143
1416  parame(i,2) = 3.37098670735567
1417  parame(i,3) = 254.366379701851
1418  parame(i,6) = 2.88000000000000
1419  ! mm(i) = 58.08 ! form as expected but w/ sumseg/1.5 - no DD-param adjusted.dat
1420  ! parame(i,1) = mm(i)* 4.694644361257521E-002 ! =2.72664944501837
1421  ! parame(i,2) = 3.27842292595463
1422  ! parame(i,3) = 238.398883501772
1423  ! parame(i,6) = 2.88000000000000
1424  ! mm(i) = 58.08 ! form as expected but w/ sumseg/1.5 and fdd*sumseg- no DD-param adjusted.dat
1425  ! parame(i,1) = mm(i)* 4.458214655521766E-002 ! =2.58933107192704
1426  ! parame(i,2) = 3.32050824493493
1427  ! parame(i,3) = 218.285994651271
1428  ! parame(i,6) = 2.88000000000000
1429  WRITE (*,*) 'caution: parame(i,8) is now used for branching'
1430  stop
1431  kij(1,2) = 0.035
1432  kij(2,1)=kij(1,2)
1433  ELSE IF (compna(i) == 'ethylacetate_JC') THEN ! Jog-Chapman
1434  ! mm(i) = 88.11
1435  ! parame(i,1) = 2.7481
1436  ! parame(i,2) = 3.6511
1437  ! parame(i,3) = 236.99
1438  ! parame(i,6) = 1.84
1439  ! parame(i,8) = 0.5458
1440  mm(i) = 88.1060000000000
1441  parame(i,1) = mm(i)* 0.03117 ! 2.74626402
1442  parame(i,2) = 3.6493
1443  parame(i,3) = 236.75
1444  parame(i,6) = 1.8
1445  parame(i,8) = 0.5462
1446  ELSE IF (compna(i) == 'ethylacetate_SF') THEN ! Saager-Fischer
1447  mm(i) = 88.106
1448  parame(i,1) = mm(i)* 3.564165384763394e-002
1449  parame(i,2) = 3.447379322
1450  parame(i,3) = 226.0930487
1451  parame(i,6) = 1.8
1452  parame(i,8) = 0.849967000000000
1453  WRITE (*,*) 'caution: parame(i,8) is now used for branching'
1454  stop
1455  ELSE IF (compna(i) == '12po_JC') THEN ! Jog-Chapman
1456  mm(i) = 58.08
1457  parame(i,1) = 2.0105
1458  parame(i,2) = 3.6095
1459  parame(i,3) = 258.82
1460  parame(i,6) = 2.0
1461  parame(i,8) = 0.3979
1462  WRITE (*,*) 'caution: parame(i,8) is now used for branching'
1463  stop
1464  ELSE IF (compna(i) == '12po_SF') THEN ! Saager-Fischer
1465  mm(i) = 58.08
1466  parame(i,1) = 2.1341
1467  parame(i,2) = 3.4739
1468  parame(i,3) = 252.95
1469  parame(i,6) = 2.0
1470  parame(i,8) = 0.916
1471  WRITE (*,*) 'caution: parame(i,8) is now used for branching'
1472  stop
1473  ELSE IF (compna(i) == 'acrylonitrile') THEN
1474  IF (pol >= 2) mm(i) = 53.06 ! PCIP-SAFT
1475  IF (pol >= 2) parame(i,1) = 2.168
1476  IF (pol >= 2) parame(i,2) = 3.575
1477  IF (pol >= 2) parame(i,3) = 214.83
1478  IF (pol >= 2) parame(i,6) = 3.91
1479  IF (pol == 2) parame(i,11)= 8.04
1480  IF (pol >= 2) mm(i) = 53.0000000000000 ! second parameter set ??
1481  IF (pol >= 2) parame(i,1) = 2.45403467006041
1482  IF (pol >= 2) parame(i,2) = 3.41276825781723
1483  IF (pol >= 2) parame(i,3) = 195.194353082408
1484  IF (pol >= 2) parame(i,6) = 3.91000000000000
1485  IF (pol == 2) parame(i,11)= 8.04000000000000
1486  ELSE IF (compna(i) == 'butyronitrile') THEN
1487  ! mm(i) = 69.11
1488  ! parame(i,1) = 2.860
1489  ! parame(i,2) = 3.478
1490  ! parame(i,3) = 253.21
1491  ! parame(i,6) = 4.07
1492  mm(i) = 69.11
1493  parame(i,1) = 2.989
1494  parame(i,2) = 3.441
1495  parame(i,3) = 234.04
1496  parame(i,6) = 4.07
1497  IF (pol == 2) parame(i,11)= 8.4
1498  ELSE IF (compna(i) == 'propionitrile') THEN
1499  mm(i) = 55.079 ! PC-SAFT
1500  parame(i,1) = 2.66211021227108
1501  parame(i,2) = 3.34032231132738
1502  parame(i,3) = 294.078737359580
1503  IF (pol >= 1) mm(i) = 55.079 ! PCP-SAFT
1504  IF (pol >= 1) parame(i,1) = 2.50958981615666
1505  IF (pol >= 1) parame(i,2) = 3.39806320429568
1506  IF (pol >= 1) parame(i,3) = 239.152759066148
1507  IF (pol >= 1) parame(i,6) = 4.05000000000000
1508  IF (pol >= 2) mm(i) = 55.079 ! PCIP-SAFT
1509  IF (pol >= 2) parame(i,1) = 2.54684827683436
1510  IF (pol >= 2) parame(i,2) = 3.41240089912190
1511  IF (pol >= 2) parame(i,3) = 218.299491580335
1512  IF (pol >= 2) parame(i,6) = 4.05000000000000
1513  IF (pol == 2) parame(i,11)= 6.24000000000000
1514  ! IF (pol.GE.2) mm(i) = 55.079 ! PCIP-SAFT my_DD adjusted
1515  ! IF (pol.GE.2) parame(i,1) = 2.61175151088002
1516  ! IF (pol.GE.2) parame(i,2) = 3.37194293181453
1517  ! IF (pol.GE.2) parame(i,3) = 233.346110749402
1518  ! IF (pol.GE.2) parame(i,6) = 3.74682245835235
1519  ! IF (pol.EQ.2) parame(i,11)= 6.24000000000000
1520  ELSE IF (compna(i) == 'nitromethane') THEN
1521  mm(i) = 61.04 ! PC-SAFT
1522  parame(i,1) = mm(i)* 4.233767489308791e-002 ! =2.58429167547409
1523  parame(i,2) = 3.10839592337018
1524  parame(i,3) = 310.694151426943
1525  IF (pol >= 1) mm(i) = 61.04 ! PCP-SAFT
1526  IF (pol >= 1) parame(i,1) = mm(i)* 4.191475020685036e-002 ! =2.55847635262615
1527  IF (pol >= 1) parame(i,2) = 3.10129282495975
1528  IF (pol >= 1) parame(i,3) = 256.456941430554
1529  IF (pol >= 1) parame(i,6) = 3.46000000000000
1530  IF (pol >= 2) mm(i) = 61.04 ! PCIP-SAFT
1531  IF (pol >= 2) parame(i,1) = mm(i)* 4.394323357988009e-002 ! =2.68229497771588
1532  IF (pol >= 2) parame(i,2) = 3.10654492320028
1533  IF (pol >= 2) parame(i,3) = 225.973607468282
1534  IF (pol >= 2) parame(i,6) = 3.46000000000000
1535  IF (pol >= 2) parame(i,11)= 7.37000000000000
1536  ELSE IF (compna(i) == 'nitroethane') THEN
1537  mm(i) = 75.067 ! PC-SAFT
1538  parame(i,1) = mm(i)* 4.019977215251163e-002 ! =3.01767629617259
1539  parame(i,2) = 3.21364231060938
1540  parame(i,3) = 286.571650044235
1541  IF (pol >= 1) mm(i) = 75.067 ! PCP-SAFT
1542  IF (pol >= 1) parame(i,1) = mm(i)* 3.928506808347654e-002 ! =2.94901220582233
1543  IF (pol >= 1) parame(i,2) = 3.23117331990738
1544  IF (pol >= 1) parame(i,3) = 265.961000131109
1545  IF (pol >= 1) parame(i,6) = 3.23000000000000
1546  IF (pol >= 2) mm(i) = 75.067 ! PCIP-SAFT
1547  IF (pol >= 2) parame(i,1) = mm(i)* 4.117677400894779e-002 ! =3.09101689452968
1548  IF (pol >= 2) parame(i,2) = 3.19364569858756
1549  IF (pol >= 2) parame(i,3) = 246.676040248662
1550  IF (pol >= 2) parame(i,6) = 3.23000000000000
1551  IF (pol >= 2) parame(i,11)= 9.63000000000000
1552  ELSE IF (compna(i) == 'acetonitrile') THEN
1553  mm(i) = 41.052 ! PC-SAFT
1554  parame(i,1) = mm(i)* 5.673187410405271e-002 ! =2.32895689571957
1555  parame(i,2) = 3.18980108373791
1556  parame(i,3) = 311.307486044181
1557  IF (pol >= 1) mm(i) = 41.052 ! PCP-SAFT
1558  IF (pol >= 1) parame(i,1) = mm(i)* 5.254832931037250e-002 ! =2.15721401484941
1559  IF (pol >= 1) parame(i,2) = 3.27301469369132
1560  IF (pol >= 1) parame(i,3) = 216.888948676921
1561  IF (pol >= 1) parame(i,6) = 3.92520000000000
1562  IF (pol >= 2) mm(i) = 41.052 ! PCIP-SAFT
1563  IF (pol >= 2) parame(i,1) = mm(i)* 5.125846581157176e-002 ! =2.10426253849664
1564  IF (pol >= 2) parame(i,2) = 3.39403305120647
1565  IF (pol >= 2) parame(i,3) = 199.070191065791
1566  IF (pol >= 2) parame(i,6) = 3.92520000000000
1567  IF (pol >= 2) parame(i,11)= 4.40000000000000
1568  ! IF (pol >= 2) mm(i) = 41.052 ! PCIP-SAFT my_DD adjusted
1569  ! IF (pol >= 2) parame(i,1) = mm(i)* 5.755347845863738E-002 ! =2.36268539768398
1570  ! IF (pol >= 2) parame(i,2) = 3.18554306395900
1571  ! IF (pol >= 2) parame(i,3) = 225.143934506015
1572  ! IF (pol >= 2) parame(i,6) = 3.43151866932598
1573  ! IF (pol >= 2) parame(i,11)= 4.40000000000000
1574  ! mm(i) = 41.053 ! PCP-SAFT dipole and quadrupole
1575  ! parame(i,1) = 1.79993
1576  ! parame(i,2) = 3.47366
1577  ! parame(i,3) = 211.001
1578  ! parame(i,6) = 3.93800
1579  ! parame(i,7) = 2.44000
1580  ! parame(i,11)= 0.0
1581  ELSE IF (compna(i) == 'dmf') THEN
1582  mm(i) = 73.09 ! PC-SAFT
1583  parame(i,1) = 2.388
1584  parame(i,2) = 3.658
1585  parame(i,3) = 363.77
1586  IF (pol >= 1) mm(i) = 73.09 ! PCP-SAFT
1587  IF (pol >= 1) parame(i,1) = 2.269
1588  IF (pol >= 1) parame(i,2) = 3.714
1589  IF (pol >= 1) parame(i,3) = 331.56
1590  IF (pol >= 1) parame(i,6) = 3.82
1591  IF (pol >= 2) mm(i) = 73.09 ! PCIP-SAFT
1592  IF (pol >= 2) parame(i,1) = 2.375
1593  IF (pol >= 2) parame(i,2) = 3.667
1594  IF (pol >= 2) parame(i,3) = 308.42
1595  IF (pol >= 2) parame(i,6) = 3.82
1596  IF (pol >= 2) parame(i,11)= 7.81
1597  ELSE IF (compna(i) == 'chloroform') THEN
1598  mm(i) = 119.377 ! PCIP-SAFT
1599  parame(i,1) = 2.5957
1600  parame(i,2) = 3.4299
1601  parame(i,3) = 264.664
1602  parame(i,6) = 1.04
1603  IF (pol == 2) parame(i,11)= 8.23
1604  ELSE IF (compna(i) == 'dimethyl-ether') THEN
1605  mm(i) = 46.069 ! PC-SAFT
1606  parame(i,1) = mm(i)* 0.049107715 ! =2.26234331
1607  parame(i,2) = 3.276640534
1608  parame(i,3) = 212.9343244
1609  IF (pol >= 1) mm(i) = 46.0690000000000 ! PCP-SAFT
1610  IF (pol >= 1) parame(i,1) = mm(i)* 0.048170452 ! =2.219164566
1611  IF (pol >= 1) parame(i,2) = 3.296939638
1612  IF (pol >= 1) parame(i,3) = 212.1048888
1613  IF (pol >= 1) parame(i,6) = 1.30000000000000
1614  IF (pol >= 2) mm(i) = 46.0690000000000 ! PCIP-SAFT
1615  IF (pol >= 2) parame(i,1) = mm(i)* 4.939183716945787e-002 ! =2.27543254655976
1616  IF (pol >= 2) parame(i,2) = 3.26584718800835
1617  IF (pol >= 2) parame(i,3) = 206.904551967059
1618  IF (pol >= 2) parame(i,6) = 1.30000000000000
1619  IF (pol == 2) parame(i,11)= 5.29000000000000
1620  ELSE IF (compna(i) == 'methyl-ethyl-ether') THEN
1621  mm(i) = 60.096
1622  parame(i,1) = mm(i)* .0442404671
1623  parame(i,2) = 3.37282595
1624  parame(i,3) = 216.010217
1625  IF (pol >= 1) mm(i) = 60.096 ! PCP-SAFT
1626  IF (pol >= 1) parame(i,1) = mm(i)* 4.3971676124088d-002 ! =2.64252184835325
1627  IF (pol >= 1) parame(i,2) = 3.37938465390
1628  IF (pol >= 1) parame(i,3) = 215.787173860
1629  IF (pol >= 1) parame(i,6) = 1.17000000000
1630  IF (pol >= 2) mm(i) = 60.096 ! PICP-SAFT
1631  IF (pol >= 2) parame(i,1) = mm(i)* 4.4580196137984d-002 ! =2.67909146710834
1632  IF (pol >= 2) parame(i,2) = 3.36105342286
1633  IF (pol >= 2) parame(i,3) = 212.871911999
1634  IF (pol >= 2) parame(i,6) = 1.17000000000
1635  IF (pol >= 2) parame(i,11) = 7.93000000000
1636  ELSE IF (compna(i) == 'diethyl-ether') THEN
1637  mm(i) = 74.123 ! PC-SAFT
1638  parame(i,1) = mm(i)* .0409704089
1639  parame(i,2) = 3.48569553
1640  parame(i,3) = 217.64113
1641  IF (pol >= 1) mm(i) = 74.123 ! PCP-SAFT
1642  IF (pol >= 1) parame(i,1) = mm(i)* 4.0103121403686e-2 ! =2.97256367
1643  IF (pol >= 1) parame(i,2) = 3.51268687697978
1644  IF (pol >= 1) parame(i,3) = 219.527376572135
1645  IF (pol >= 1) parame(i,6) = 1.15000000000000
1646  IF (pol >= 2) mm(i) = 74.123 ! PCIP-SAFT
1647  IF (pol >= 2) parame(i,1) = mm(i)* 4.04144179873e-2 ! =2.9956379
1648  IF (pol >= 2) parame(i,2) = 3.501724569
1649  IF (pol >= 2) parame(i,3) = 217.8941822
1650  IF (pol >= 2) parame(i,6) = 1.15
1651  IF (pol == 2) parame(i,11)= 8.73
1652  ELSE IF (compna(i) == 'vinylacetate') THEN
1653  mm(i) = 86.092
1654  parame(i,1) = mm(i)* .0374329292
1655  parame(i,2) = 3.35278602
1656  parame(i,3) = 240.492049
1657  ELSE IF (compna(i) == 'chloromethane') THEN ! R40
1658  mm(i) = 50.488 ! PC-SAFT
1659  parame(i,1) = mm(i)* 0.039418879 ! 1.9902
1660  parame(i,2) = 3.1974
1661  parame(i,3) = 237.27
1662  IF (pol >= 1) mm(i) = 50.488 ! PCP-SAFT
1663  IF (pol >= 1) parame(i,1) = mm(i)* 0.035790801 ! 1.8070
1664  IF (pol >= 1) parame(i,2) = 3.3034
1665  IF (pol >= 1) parame(i,3) = 229.97
1666  IF (pol >= 1) parame(i,6) = 1.8963
1667  IF (pol >= 1) lli(i) = 1.67703*parame(i,2)
1668  IF (pol >= 1) phi_criti(i)= 20.75417
1669  IF (pol >= 1) chap(i) = 0.5
1670  IF (pol >= 2) mm(i) = 50.488 ! PCIP-SAFT
1671  IF (pol >= 2) parame(i,1) = mm(i)* 3.68559992e-2 ! 1.86078
1672  IF (pol >= 2) parame(i,2) = 3.275186
1673  IF (pol >= 2) parame(i,3) = 216.4621
1674  IF (pol >= 2) parame(i,6) = 1.8963
1675  IF (pol == 2) parame(i,11)= 4.72
1676  ELSE IF (compna(i) == 'fluoromethane') THEN ! R41
1677  IF (pol /= 1) write (*,*) 'non-polar parameters missing for fluoromethane'
1678  IF (pol /= 1) stop 5
1679  IF (pol >= 1) mm(i) = 34.0329000000000
1680  IF (pol >= 1) parame(i,1) = 1.94494757526896
1681  IF (pol >= 1) parame(i,2) = 2.96858005012635
1682  IF (pol >= 1) parame(i,3) = 168.938697391009
1683  IF (pol >= 1) parame(i,6) = 1.57823038894029
1684  ELSE IF (compna(i) == 'dichloromethane') THEN ! R30
1685  mm(i) = 84.932 ! PC-SAFT
1686  parame(i,1) = 2.3117
1687  parame(i,2) = 3.3161
1688  parame(i,3) = 270.98
1689  IF (pol >= 1) mm(i) = 84.932 ! PCP-SAFT
1690  IF (pol >= 1) parame(i,1) = 2.2687
1691  IF (pol >= 1) parame(i,2) = 3.3373
1692  IF (pol >= 1) parame(i,3) = 269.08
1693  IF (pol >= 1) parame(i,6) = 1.6
1694  IF (pol >= 2) mm(i) = 84.932 ! PCIP-SAFT
1695  IF (pol >= 2) parame(i,1) = 2.3435
1696  IF (pol >= 2) parame(i,2) = 3.2987
1697  IF (pol >= 2) parame(i,3) = 260.66
1698  IF (pol >= 2) parame(i,6) = 1.6
1699  IF (pol == 2) parame(i,11)= 6.48
1700  ELSE IF (compna(i) == 'difluoromethane') THEN ! R32
1701  IF (pol /= 1) write (*,*) 'non-polar parameters missing for difluoromethane'
1702  IF (pol /= 1) stop 5
1703  IF (pol >= 1) mm(i) = 52.0236 ! PCP-SAFT
1704  IF (pol >= 1) parame(i,1) = mm(i)* 4.814700934384165e-002 ! 2.50478075530028
1705  IF (pol >= 1) parame(i,2) = 2.79365980535456
1706  IF (pol >= 1) parame(i,3) = 160.893555378523
1707  IF (pol >= 1) parame(i,6) = 1.97850000000000
1708  ELSE IF (compna(i) == 'trifluoromethane') THEN ! R23
1709  IF (pol /= 1) write (*,*) 'non-polar parameters missing for trifluoromethane'
1710  IF (pol /= 1) stop 5
1711  IF (pol >= 1) mm(i) = 70.0138000000000
1712  IF (pol >= 1) parame(i,1) = 2.66039274225485
1713  IF (pol >= 1) parame(i,2) = 2.82905884530501
1714  IF (pol >= 1) parame(i,3) = 149.527709542333
1715  IF (pol >= 1) parame(i,6) = 1.339963415253999e-002
1716  ELSE IF (compna(i) == 'tetrachloromethane') THEN ! R10
1717  mm(i) = 153.822
1718  parame(i,1) = mm(i)* .0150432213
1719  parame(i,2) = 3.81801454
1720  parame(i,3) = 292.838632
1721  ELSE IF (compna(i) == 'trichlorofluoromethane') THEN ! R11
1722  IF (pol /= 1) write (*,*) 'non-polar parameters missing for trichlorofluoromethane'
1723  IF (pol /= 1) stop 5
1724  IF (pol >= 1) mm(i) = 137.368000000000
1725  IF (pol >= 1) parame(i,1) = 2.28793359008803
1726  IF (pol >= 1) parame(i,2) = 3.69013104930876
1727  IF (pol >= 1) parame(i,3) = 248.603173885090
1728  IF (pol >= 1) parame(i,6) = 0.23225538492979
1729  ELSE IF (compna(i) == 'chlorodifluoromethane') THEN ! R22 ( CHClF2 or CHF2Cl)
1730  IF (pol /= 1) write (*,*) 'non-polar parameters missing for chlorodifluoromethane'
1731  IF (pol /= 1) stop 5
1732  IF (pol >= 1) mm(i) = 86.4684000000000
1733  IF (pol >= 1) parame(i,1) = 2.47218586047893
1734  IF (pol >= 1) parame(i,2) = 3.13845692489930
1735  IF (pol >= 1) parame(i,3) = 187.666355083434
1736  IF (pol >= 1) parame(i,6) = 1.04954264812860
1737  ELSE IF (compna(i) == 'chloroethane') THEN
1738  mm(i) = 64.514
1739  parame(i,1) = mm(i)* .0350926868
1740  parame(i,2) = 3.41602397
1741  parame(i,3) = 245.42626
1742  ELSE IF (compna(i) == '11difluoroethane') THEN
1743  ! mm(i) = 66.0500000000000 ! PC-SAFT
1744  ! parame(i,1) = mm(i)* 4.109944338817734E-002
1745  ! parame(i,2) = 3.10257444633546
1746  ! parame(i,3) = 192.177159144029
1747  ! mm(i) = 66.05 ! PC-SAFT assoc
1748  ! parame(i,1)= 2.984947188
1749  ! parame(i,2)= 2.978630027
1750  ! parame(i,3)= 137.8192282
1751  ! nhb_typ(i) = 2
1752  ! nhb_no(i,1)= 1
1753  ! nhb_no(i,2)= 1
1754  ! eps_hb(i,i,1,2)= 823.3478288
1755  ! eps_hb(i,i,2,1)= 823.3478288
1756  ! eps_hb(i,i,1,1)= 0.0
1757  ! eps_hb(i,i,2,2)= 0.0
1758  ! kap_hb(i,i) = 0.96345994
1759  IF (pol >= 1) mm(i) = 66.0500000000000 ! PCP-SAFT
1760  IF (pol >= 1) parame(i,1) = mm(i)* 3.949665745363346e-002 ! =2.60875422481249
1761  IF (pol >= 1) parame(i,2) = 3.13758353925036
1762  IF (pol >= 1) parame(i,3) = 179.517952627836
1763  IF (pol >= 1) parame(i,6) = 2.27000000000000
1764  IF (pol >= 1) lli(i) = 2.03907*parame(i,2)
1765  IF (pol >= 1) phi_criti(i)= 26.5
1766  IF (pol >= 1) chap(i) = 0.4
1767  IF (pol >= 2) mm(i) = 66.0500000000000 ! PCIP-SAFT
1768  IF (pol >= 2) parame(i,1) = mm(i)* 4.093647666154238e-002 ! =2.70385428349487
1769  IF (pol >= 2) parame(i,2) = 3.10437129415885
1770  IF (pol >= 2) parame(i,3) = 170.464400902455
1771  IF (pol >= 2) parame(i,6) = 2.27000000000000
1772  IF (pol == 2) parame(i,11)= 5.01000000000000
1773  ELSE IF (compna(i) == '1-chlorobutane') THEN
1774  mm(i) = 92.568
1775  parame(i,1) = mm(i)* .0308793201
1776  parame(i,2) = 3.64240187
1777  parame(i,3) = 258.655298
1778  ELSE IF (compna(i) == 'chlorobenzene') THEN
1779  ! mm(i) = 112.558
1780  ! parame(i,1) = mm(i)* .0235308686
1781  ! parame(i,2) = 3.75328494
1782  ! parame(i,3) = 315.039018
1783  mm(i) = 112.558 ! PCIP-SAFT
1784  parame(i,1) = mm(i)* 0.023824167 ! =2.6816
1785  parame(i,2) = 3.7352
1786  parame(i,3) = 308.82
1787  parame(i,6) = 1.69
1788  IF (pol == 2) parame(i,11)= 14.1
1789  ELSE IF (compna(i) == 'styrene') THEN
1790  mm(i) = 104.150
1791  parame(i,1) = mm(i)* 2.9124104853e-2
1792  parame(i,2) = 3.760233548
1793  parame(i,3) = 298.51287564
1794  ELSE IF (compna(i) == 'methylmethanoate') THEN
1795  mm(i) = 60.053
1796  parame(i,1) = mm(i)* .0446000264
1797  parame(i,2) = 3.08753499
1798  parame(i,3) = 242.626755
1799  IF (pol >= 1) mm(i) = 60.053 ! PCP-SAFT
1800  IF (pol >= 1) parame(i,1) = mm(i)* 4.366991153963102e-002 ! =2.62250919768946
1801  IF (pol >= 1) parame(i,2) = 3.10946396964
1802  IF (pol >= 1) parame(i,3) = 239.051951942
1803  IF (pol >= 1) parame(i,6) = 1.77
1804  IF (pol >= 2) mm(i) = 60.053 ! PCIP-SAFT
1805  IF (pol >= 2) parame(i,1) = mm(i)* 4.492572388931002e-2 ! 2.69792449
1806  IF (pol >= 2) parame(i,2) = 3.078467837
1807  IF (pol >= 2) parame(i,3) = 232.1842551
1808  IF (pol >= 2) parame(i,6) = 1.77
1809  IF (pol == 2) parame(i,11)= 5.05
1810  ELSE IF (compna(i) == 'ethylmethanoate') THEN
1811  mm(i) = 74.079 ! PC-SAFT
1812  parame(i,1) = mm(i)* .03898009
1813  parame(i,2) = 3.31087192
1814  parame(i,3) = 246.465646
1815  IF (pol >= 1) mm(i) = 74.079 ! PCP-SAFT
1816  IF (pol >= 1) parame(i,1) = mm(i)* 3.825407152074255e-002 ! =2.83382336418509
1817  IF (pol >= 1) parame(i,2) = 3.33160046679
1818  IF (pol >= 1) parame(i,3) = 244.495680932
1819  IF (pol >= 1) parame(i,6) = 1.93000000000
1820  ELSE IF (compna(i) == 'propylmethanoate') THEN
1821  mm(i) = 88.106
1822  parame(i,1) = mm(i)* .0364206062
1823  parame(i,2) = 3.41679642
1824  parame(i,3) = 246.457732
1825  IF (pol >= 1) mm(i) = 88.106
1826  IF (pol >= 1) parame(i,1) = mm(i)* 3.60050739149e-2 ! =3.17226304235232
1827  IF (pol >= 1) parame(i,2) = 3.42957609309
1828  IF (pol >= 1) parame(i,3) = 245.637644107
1829  IF (pol >= 1) parame(i,6) = 1.89
1830  ELSE IF (compna(i) == 'methylacetate') THEN
1831  mm(i) = 74.079 ! PC-SAFT
1832  parame(i,1) = mm(i)* 4.286817177e-2 ! =3.175631296
1833  parame(i,2) = 3.18722021277843
1834  parame(i,3) = 234.106931032456
1835  IF (pol >= 1) mm(i) = 74.079 ! PCP-SAFT
1836  IF (pol >= 1) parame(i,1) = mm(i)* 4.228922065e-2 ! =3.132743176
1837  IF (pol >= 1) parame(i,2) = 3.2011401688
1838  IF (pol >= 1) parame(i,3) = 233.17562886
1839  IF (pol >= 1) parame(i,6) = 1.72
1840  IF (pol >= 2) mm(i) = 74.079 ! PCIP-SAFT
1841  IF (pol >= 2) parame(i,1) = mm(i)* 4.298900538e-2 ! =3.18458252
1842  IF (pol >= 2) parame(i,2) = 3.180642322
1843  IF (pol >= 2) parame(i,3) = 229.3132680
1844  IF (pol >= 2) parame(i,6) = 1.72
1845  IF (pol == 2) parame(i,11)= 6.94
1846  ELSE IF (compna(i) == 'ethylacetate') THEN
1847  mm(i) = 88.106 ! PC-SAFT
1848  parame(i,1) = mm(i)* .0401464427 ! =3.537142481
1849  parame(i,2) = 3.30789258
1850  parame(i,3) = 230.800689
1851  IF (pol >= 1) mm(i) = 88.106 ! PCP-SAFT
1852  IF (pol >= 1) parame(i,1) = mm(i)* 0.039792575 ! =3.505964572
1853  IF (pol >= 1) parame(i,2) = 3.317655188
1854  IF (pol >= 1) parame(i,3) = 230.2434769
1855  IF (pol >= 1) parame(i,6) = 1.78
1856  IF (pol >= 2) mm(i) = 88.106 ! PCIP-SAFT
1857  IF (pol >= 2) parame(i,1) = mm(i)* 0.040270267 ! =3.548052143
1858  IF (pol >= 2) parame(i,2) = 3.302097562
1859  IF (pol >= 2) parame(i,3) = 227.5026191
1860  IF (pol >= 2) parame(i,6) = 1.78
1861  IF (pol == 2) parame(i,11)= 8.62
1862  ELSE IF (compna(i) == 'ethyl-propanoate') THEN
1863  mm(i) = 102.133
1864  parame(i,1) = mm(i)* .0375692464
1865  parame(i,2) = 3.40306071
1866  parame(i,3) = 232.778374
1867  ELSE IF (compna(i) == 'propyl-ethanoate') THEN
1868  mm(i) = 102.133
1869  parame(i,1) = mm(i)* .0370721275
1870  parame(i,2) = 3.42272266
1871  parame(i,3) = 235.758378
1872  IF (pol >= 1) mm(i) = 102.133 ! PCP-SAFT
1873  IF (pol >= 1) parame(i,1) = mm(i)* 3.687149995200072e-2 ! =3.76579690459769
1874  IF (pol >= 1) parame(i,2) = 3.4289353421006
1875  IF (pol >= 1) parame(i,3) = 235.41679442910
1876  IF (pol >= 1) parame(i,6) = 1.78
1877  ! IF (pol.EQ.2) parame(i,11)= 10.41
1878  ELSE IF (compna(i) == 'nbutyl-ethanoate') THEN
1879  mm(i) = 116.16 ! PC-SAFT
1880  parame(i,1) = mm(i)* .03427004
1881  parame(i,2) = 3.54269638
1882  parame(i,3) = 242.515768
1883  IF (pol >= 1) mm(i) = 116.16 ! PCP-SAFT
1884  IF (pol >= 1) parame(i,1) = mm(i)* 3.411585209773470e-002 ! =3.96289737967286
1885  IF (pol >= 1) parame(i,2) = 3.54821589228130
1886  IF (pol >= 1) parame(i,3) = 242.274388267447
1887  IF (pol >= 1) parame(i,6) = 1.87000000000000
1888  IF (pol >= 2) mm(i) = 116.16 ! PCIP-SAFT
1889  IF (pol >= 2) parame(i,1) = mm(i)* 3.442139015733717e-002 ! =3.99838868067629
1890  IF (pol >= 2) parame(i,2) = 3.53576054452119
1891  IF (pol >= 2) parame(i,3) = 240.154409609249
1892  IF (pol >= 2) parame(i,6) = 1.87000000000000
1893  IF (pol == 2) parame(i,11)= 14.2000000000000
1894  ELSE IF (compna(i) == 'methyl-octanoate') THEN
1895  mm(i) = 158.24 ! PC-SAFT
1896  parame(i,1) = 5.2074
1897  parame(i,2) = 3.6069
1898  parame(i,3) = 244.12
1899  ELSE IF (compna(i) == 'methyl-decanoate') THEN
1900  mm(i) = 186.2912 ! PC-SAFT
1901  parame(i,1) = 5.8402
1902  parame(i,2) = 3.6871
1903  parame(i,3) = 248.27
1904 
1905  mm(i) = 186.2912 ! PC-SAFT from GC-method Tim
1906  parame(i,1) = 7.716
1907  parame(i,2) = 3.337303029
1908  parame(i,3) = 204.250907
1909 
1910  mm(i) = 186.2912 ! PC-SAFT from GC-method (tightly fit) Tim
1911  parame(i,1) = 7.728
1912  parame(i,2) = 3.334023322
1913  parame(i,3) = 206.9099379
1914 
1915  ! mm(i) = 186.2912 ! PC-SAFT from fit to DIPPR
1916  ! parame(i,1) = 6.285005
1917  ! parame(i,2) = 3.594888
1918  ! parame(i,3) = 236.781461
1919  ! ! parame(i,6) = 2.08056
1920 
1921  ! mm(i) = 186.291000000000
1922  ! parame(i,1) = 6.28500485898895
1923  ! parame(i,2) = 3.59488828061149
1924  ! parame(i,3) = 236.781461491921
1925  ! parame(i,6) = 2.08055996894836
1926  ! parame(i,8) = 1.00000000000000
1927  mm(i) = 186.291000000000
1928  parame(i,1) = 6.14436331493372
1929  parame(i,2) = 3.61977264863944
1930  parame(i,3) = 242.071887817656
1931 
1932  ELSE IF (compna(i) == 'methyl-dodecanoate') THEN
1933  mm(i) = 214.344 ! PC-SAFT
1934  parame(i,1) = 6.5153
1935  parame(i,2) = 3.7406
1936  parame(i,3) = 250.7
1937  ELSE IF (compna(i) == 'methyl-tetradecanoate') THEN
1938  mm(i) = 242.398 ! PC-SAFT
1939  parame(i,1) = 7.1197
1940  parame(i,2) = 3.7968
1941  parame(i,3) = 253.77
1942  ELSE IF (compna(i) == 'methyl-hexadecanoate') THEN
1943  mm(i) = 270.451 ! PC-SAFT
1944  parame(i,1) = 7.891
1945  parame(i,2) = 3.814
1946  parame(i,3) = 253.71
1947  ELSE IF (compna(i) == 'methyl-octadecanoate') THEN
1948  mm(i) = 298.504 ! PC-SAFT
1949  parame(i,1) = 8.8759
1950  parame(i,2) = 3.7932
1951  parame(i,3) = 250.81
1952  ELSE IF (compna(i) == 'CH2F2') THEN
1953  mm(i) = 52.02
1954  parame(i,1) = 3.110084171
1955  parame(i,2) = 2.8145230485
1956  parame(i,3) = 158.98060151
1957  ELSE IF (compna(i) == 'naphthalene') THEN
1958  ! mm(i) = 128.174000000
1959  ! parame(i,1) = mm(i)* 2.4877834216412E-2
1960  ! parame(i,2) = 3.82355815011
1961  ! parame(i,3) = 341.560675334
1962 
1963  mm(i) = 128.17400000000
1964  parame(i,1) = mm(i)* 2.6400924157729e-2
1965  parame(i,2) = 3.8102186020014
1966  parame(i,3) = 328.96792935903
1967  ELSE IF (compna(i) == 'h2s') THEN
1968  mm(i) = 34.0820000000000 ! PC-SAFT
1969  parame(i,1) = mm(i)* 4.838886696385162e-002 ! = 1.64918936386199
1970  parame(i,2) = 3.05478289838459
1971  parame(i,3) = 229.838873939562
1972  nhb_typ(i) = 2
1973  nhb_no(i,1) = 1
1974  nhb_no(i,2) = 1
1975  eps_hb(i,i,1,2)= 536.634834731413
1976  eps_hb(i,i,2,1)= 536.634834731413
1977  eps_hb(i,i,1,1)= 0.0
1978  eps_hb(i,i,2,2)= 0.0
1979  kap_hb(i,i) = 1.000000000000000e-003
1980 ! PC-SAFT from Xiaohua
1981  mm(i) = 34.082 ! PC-SAFT
1982  parame(i,1) = 1.63677
1983  parame(i,2) = 3.06565
1984  parame(i,3) = 230.2121
1985  nhb_typ(i) = 2
1986  nhb_no(i,1) = 1
1987  nhb_no(i,2) = 1
1988  eps_hb(i,i,1,2)= 275.1088
1989  eps_hb(i,i,2,1)= 275.1088
1990  eps_hb(i,i,1,1)= 0.0
1991  eps_hb(i,i,2,2)= 0.0
1992  kap_hb(i,i) = 1.e-2
1993  ! IF (pol.GE.1) mm(i) = 34.082 ! PCP-SAFT with quadrupole
1994  ! IF (pol.GE.1) parame(i,1) = mm(i)* 3.03171032558E-2 ! =1.03326751316478
1995  ! IF (pol.GE.1) parame(i,2) = 3.6868189914018
1996  ! IF (pol.GE.1) parame(i,3) = 246.862831266172
1997  ! IF (pol.GE.1) nhb_typ(i) = 2
1998  ! IF (pol.GE.1) nhb_no(i,1) = 1
1999  ! IF (pol.GE.1) nhb_no(i,2) = 1
2000  ! IF (pol.GE.1) eps_hb(i,i,1,2)= 987.4927232
2001  ! IF (pol.GE.1) eps_hb(i,i,2,1)= 987.4927232
2002  ! IF (pol.GE.1) eps_hb(i,i,1,1)= 0.0
2003  ! IF (pol.GE.1) eps_hb(i,i,2,2)= 0.0
2004  ! IF (pol.GE.1) kap_hb(i,i) = 5.5480659623d-4
2005  ! IF (pol.GE.1) parame(i,6) = 0.97833
2006  ! IF (pol.GE.1) parame(i,7) = 3.8623
2007  ! IF (pol.GE.1) LLi(i) = 1.2737*parame(i,2)
2008  ! IF (pol.GE.1) phi_criti(i)= 14.316
2009  ! IF (pol.GE.1) chap(i) = 0.4473
2010  IF (pol >= 1) mm(i) = 34.0820000000000 ! PCP-SAFT no quadrupoLE
2011  IF (pol >= 1) parame(i,1) = mm(i)* 4.646468487062725e-002 ! 1.58360938976072
2012  IF (pol >= 1) parame(i,2) = 3.10111012646306
2013  IF (pol >= 1) parame(i,3) = 230.243457544889
2014  IF (pol >= 1) nhb_typ(i) = 2
2015  IF (pol >= 1) nhb_no(i,1) = 1
2016  IF (pol >= 1) nhb_no(i,2) = 1
2017  IF (pol >= 1) eps_hb(i,i,1,2)= 584.367708701411
2018  IF (pol >= 1) eps_hb(i,i,2,1)= 584.367708701411
2019  IF (pol >= 1) eps_hb(i,i,1,1)= 0.0
2020  IF (pol >= 1) eps_hb(i,i,2,2)= 0.0
2021  IF (pol >= 1) kap_hb(i,i) = 1.000000000000000e-003
2022  IF (pol >= 1) parame(i,6) = 0.978330000000000
2023 
2024  IF (pol >= 1) lli(i) = 1.2737*parame(i,2)
2025  IF (pol >= 1) phi_criti(i)= 14.316
2026  IF (pol >= 1) chap(i) = 0.4473
2027 
2028 
2029  IF (pol == 2) parame(i,7) = 0.0
2030  IF (pol == 2) mm(i) = 34.0820000000000 ! PCIP-SAFT
2031  IF (pol == 2) parame(i,1) = mm(i)* 4.806418212963168e-002 ! 1.63812345534211
2032  IF (pol == 2) parame(i,2) = 3.06556006883749
2033  IF (pol == 2) parame(i,3) = 221.746622243054
2034  IF (pol == 2) nhb_typ(i) = 2
2035  IF (pol == 2) nhb_no(i,1) = 1
2036  IF (pol == 2) nhb_no(i,2) = 1
2037  IF (pol == 2) eps_hb(i,i,1,2)= 672.164783984789
2038  IF (pol == 2) eps_hb(i,i,2,1)= 672.164783984789
2039  IF (pol == 2) eps_hb(i,i,1,1)= 0.0
2040  IF (pol == 2) eps_hb(i,i,2,2)= 0.0
2041  IF (pol == 2) kap_hb(i,i) = 1.000000000000000e-003
2042  IF (pol == 2) parame(i,6) = 0.978330000000000
2043  IF (pol == 2) parame(i,11) = 3.60200000000000
2044  IF (pol == 2) parame(i,7) = 0.0
2045 
2046  IF (pol >= 1)mm(i) = 34.0820000000000 !PCP-SAFT D&Q
2047  IF (pol >= 1)parame(i,1) = mm(i)* 3.974667896078737e-002 ! = 1.35464631234155
2048  IF (pol >= 1)parame(i,2) = 3.30857082333438
2049  IF (pol >= 1)parame(i,3) = 234.248947273191
2050  IF (pol >= 1)nhb_typ(i) = 2
2051  IF (pol >= 1)nhb_no(i,1) = 1
2052  IF (pol >= 1)nhb_no(i,2) = 1
2053  IF (pol >= 1)eps_hb(i,i,1,2)= 780.770936834770
2054  IF (pol >= 1)eps_hb(i,i,2,1)= 780.770936834770
2055  IF (pol >= 1)eps_hb(i,i,1,1)= 0.0
2056  IF (pol >= 1)eps_hb(i,i,2,2)= 0.0
2057  IF (pol >= 1)kap_hb(i,i) = 1.000000000000000e-003
2058  IF (pol >= 1)parame(i,6) = 0.978330000000000
2059  IF (pol >= 1)parame(i,7) = 2.93750500000000
2060 
2061  ELSE IF (compna(i) == 'methanol') THEN
2062  mm(i) = 32.042 ! PC-SAFT
2063  parame(i,1) = mm(i)* .0476100379
2064  parame(i,2) = 3.23000005
2065  parame(i,3) = 188.904644
2066  nhb_typ(i) = 2
2067  nhb_no(i,1) = 1 ! no. of sites of type 1
2068  nhb_no(i,2) = 1 ! no. of sites of type 2
2069  eps_hb(i,i,1,2)= 2899.49055
2070  eps_hb(i,i,2,1)= 2899.49055
2071  eps_hb(i,i,1,1)= 0.0
2072  eps_hb(i,i,2,2)= 0.0
2073  kap_hb(i,i) = .0351760892
2074  IF (pol >= 1) mm(i) = 32.042 ! PCP-SAFT
2075  IF (pol >= 1) parame(i,1) = mm(i)* 7.213091821e-2 ! =2.31121888139672
2076  IF (pol >= 1) parame(i,2) = 2.8270129502
2077  IF (pol >= 1) parame(i,3) = 176.3760515
2078  IF (pol >= 1) nhb_typ(i) = 2
2079  IF (pol >= 1) nhb_no(i,1) = 1
2080  IF (pol >= 1) nhb_no(i,2) = 1
2081  IF (pol >= 1) eps_hb(i,i,1,2)= 2332.5845803
2082  IF (pol >= 1) eps_hb(i,i,2,1)= 2332.5845803
2083  IF (pol >= 1) eps_hb(i,i,1,1)= 0.0
2084  IF (pol >= 1) eps_hb(i,i,2,2)= 0.0
2085  IF (pol >= 1) kap_hb(i,i) = 8.9248658086e-2
2086  IF (pol >= 1) parame(i,6) = 1.7
2087  IF (pol >= 1) lli(i) = 1.75*parame(i,2)
2088  IF (pol >= 1) phi_criti(i)= 23.43
2089  IF (pol >= 1) chap(i) = 0.304
2090  IF (pol == 2) mm(i) = 32.042 ! PCIP-SAFT
2091  IF (pol == 2) parame(i,1) = 2.0693
2092  IF (pol == 2) parame(i,2) = 2.9547
2093  IF (pol == 2) parame(i,3) = 174.51
2094  IF (pol == 2) nhb_typ(i) = 2
2095  IF (pol == 2) nhb_no(i,1) = 1
2096  IF (pol == 2) nhb_no(i,2) = 1
2097  IF (pol == 2) eps_hb(i,i,1,2)= 2418.5
2098  IF (pol == 2) eps_hb(i,i,2,1)= 2418.5
2099  IF (pol == 2) eps_hb(i,i,1,1)= 0.0
2100  IF (pol == 2) eps_hb(i,i,2,2)= 0.0
2101  IF (pol == 2) kap_hb(i,i) = 0.06319
2102  IF (pol == 2) parame(i,6) = 1.7
2103  IF (pol == 2) parame(i,11)= 3.29
2104  ! mm(i) = 32.0420000000000 ! PCP-SAFT with adjusted QQ
2105  ! parame(i,1) = mm(i)* 6.241807629559099E-002
2106  ! ! parame(i,1) = 2.00000000066333
2107  ! parame(i,2) = 2.97610169698593
2108  ! parame(i,3) = 163.268505098639
2109  ! nhb_typ(i) = 2
2110  ! nhb_no(i,1) = 1
2111  ! nhb_no(i,2) = 1
2112  ! eps_hb(i,i,1,2)= 2449.55621933612
2113  ! eps_hb(i,i,2,1)= 2449.55621933612
2114  ! eps_hb(i,i,1,1)= 0.0
2115  ! eps_hb(i,i,2,2)= 0.0
2116  ! kap_hb(i,i) = 8.431015160393653E-002
2117  ! parame(i,6) = 1.72000000000000
2118  ! parame(i,7) = 1.59810028824523
2119  ELSE IF (compna(i) == 'ethanol') THEN
2120  mm(i) = 46.069
2121  parame(i,1) = mm(i)* .0517195521
2122  parame(i,2) = 3.17705595
2123  parame(i,3) = 198.236542
2124  nhb_typ(i) = 2
2125  nhb_no(i,1) = 1 ! no. of sites of type 1
2126  nhb_no(i,2) = 1 ! no. of sites of type 2
2127  eps_hb(i,i,1,2)= 2653.38367
2128  eps_hb(i,i,2,1)= 2653.38367
2129  eps_hb(i,i,1,1)= 0.0
2130  eps_hb(i,i,2,2)= 0.0
2131  kap_hb(i,i) = .0323840159
2132  IF (pol >= 1) mm(i) = 46.0690000000000
2133  IF (pol >= 1) parame(i,1) = mm(i)* 4.753626908781145e-002 ! =2.18994838060639
2134  IF (pol >= 1) parame(i,2) = 3.30120000000000
2135  IF (pol >= 1) parame(i,3) = 209.824555801706
2136  IF (pol >= 1) nhb_typ(i) = 2
2137  IF (pol >= 1) nhb_no(i,1) = 1
2138  IF (pol >= 1) nhb_no(i,2) = 1
2139  IF (pol >= 1) eps_hb(i,i,1,2)= 2584.53116785767
2140  IF (pol >= 1) eps_hb(i,i,2,1)= 2584.53116785767
2141  IF (pol >= 1) eps_hb(i,i,1,1)= 0.0
2142  IF (pol >= 1) eps_hb(i,i,2,2)= 0.0
2143  IF (pol >= 1) kap_hb(i,i) = 2.349382956935725e-002
2144  IF (pol >= 1) parame(i,6) = 1.69000000000000
2145  ! mm(i) = 46.0690000000000
2146  ! parame(i,1) = mm(i)* 5.117957752785066E-002 ! =2.357791957
2147  ! parame(i,2) = 3.24027031244304
2148  ! parame(i,3) = 175.657110615456
2149  ! nhb_typ(i) = 2
2150  ! nhb_no(i,1) = 1
2151  ! nhb_no(i,2) = 1
2152  ! eps_hb(i,i,1,2)= 2273.62670516146
2153  ! eps_hb(i,i,2,1)= 2273.62670516146
2154  ! eps_hb(i,i,1,1)= 0.0
2155  ! eps_hb(i,i,2,2)= 0.0
2156  ! kap_hb(i,i) = 7.030279197039477E-002
2157  ! parame(i,6) = 1.69000000000000
2158  ! parame(i,7) = 3.63701294195013
2159  IF (pol == 2) mm(i) = 46.0690000000000
2160  IF (pol == 2) parame(i,1) = mm(i)* 4.733436280008321e-002 ! =2.18064676
2161  IF (pol == 2) parame(i,2) = 3.31260000000000
2162  IF (pol == 2) parame(i,3) = 207.594119926613
2163  IF (pol == 2) nhb_typ(i) = 2
2164  IF (pol == 2) nhb_no(i,1) = 1
2165  IF (pol == 2) nhb_no(i,2) = 1
2166  IF (pol == 2) eps_hb(i,i,1,2)= 2589.68311382661
2167  IF (pol == 2) eps_hb(i,i,2,1)= 2589.68311382661
2168  IF (pol == 2) eps_hb(i,i,1,1)= 0.0
2169  IF (pol == 2) eps_hb(i,i,2,2)= 0.0
2170  IF (pol == 2) kap_hb(i,i) = 2.132561218631547e-002
2171  IF (pol == 2) parame(i,6) = 1.69000000000000
2172  IF (pol == 2) parame(i,7) = 0.0
2173  IF (pol == 2) parame(i,11)= 5.11000000000000
2174  ELSE IF (compna(i) == '1-propanol') THEN
2175  mm(i) = 60.096
2176  parame(i,1) = mm(i)* .0499154461
2177  parame(i,2) = 3.25221234
2178  parame(i,3) = 233.396705
2179  nhb_typ(i) = 2
2180  nhb_no(i,1) = 1 ! no. of sites of type 1
2181  nhb_no(i,2) = 1 ! no. of sites of type 2
2182  eps_hb(i,i,1,2)= 2276.77867
2183  eps_hb(i,i,2,1)= 2276.77867
2184  eps_hb(i,i,1,1)= 0.0
2185  eps_hb(i,i,2,2)= 0.0
2186  kap_hb(i,i) = .0152683094
2187  ELSE IF (compna(i) == '1-butanol') THEN
2188  mm(i) = 74.123
2189  parame(i,1) = mm(i)* .0341065046
2190  parame(i,2) = 3.72361538
2191  parame(i,3) = 269.798048
2192  nhb_typ(i) = 2
2193  nhb_no(i,1) = 1 ! no. of sites of type 1
2194  nhb_no(i,2) = 1 ! no. of sites of type 2
2195  eps_hb(i,i,1,2)= 2661.37119
2196  eps_hb(i,i,2,1)= 2661.37119
2197  eps_hb(i,i,1,1)= 0.0
2198  eps_hb(i,i,2,2)= 0.0
2199  kap_hb(i,i) = .00489087833
2200  mm(i) = 74.1230000000000
2201  parame(i,1) = mm(i)* 3.329202420547412e-002 ! =2.46770471018236
2202  parame(i,2) = 3.76179376417092
2203  parame(i,3) = 270.237284242002
2204  nhb_typ(i) = 2
2205  nhb_no(i,1) = 1
2206  nhb_no(i,2) = 1
2207  eps_hb(i,i,1,2)= 2669.28754983370
2208  eps_hb(i,i,2,1)= 2669.28754983370
2209  eps_hb(i,i,1,1)= 0.0
2210  eps_hb(i,i,2,2)= 0.0
2211  kap_hb(i,i) = 4.855584122733399e-003
2212  parame(i,6) = 1.66000000000000
2213  ELSE IF (compna(i) == '1-pentanol') THEN
2214  mm(i) = 88.15 ! PC-SAFT
2215  parame(i,1) = mm(i)* .041134139
2216  parame(i,2) = 3.45079143
2217  parame(i,3) = 247.278748
2218  nhb_typ(i) = 2
2219  nhb_no(i,1) = 1 ! no. of sites of type 1
2220  nhb_no(i,2) = 1 ! no. of sites of type 2
2221  eps_hb(i,i,1,2)= 2252.09237
2222  eps_hb(i,i,2,1)= 2252.09237
2223  eps_hb(i,i,1,1)= 0.0
2224  eps_hb(i,i,2,2)= 0.0
2225  kap_hb(i,i) = .0103189939
2226  IF (pol >= 1) mm(i) = 88.1500000000000 ! PCP-SAFT
2227  IF (pol >= 1) parame(i,1) = mm(i)* 4.138903382168521e-002 ! =3.64844333138155
2228  IF (pol >= 1) parame(i,2) = 3.44250118689142
2229  IF (pol >= 1) parame(i,3) = 246.078034174947
2230  IF (pol >= 1) nhb_typ(i) = 2
2231  IF (pol >= 1) nhb_no(i,1) = 1
2232  IF (pol >= 1) nhb_no(i,2) = 1
2233  IF (pol >= 1) eps_hb(i,i,1,2)= 2236.72830142446
2234  IF (pol >= 1) eps_hb(i,i,2,1)= 2236.72830142446
2235  IF (pol >= 1) eps_hb(i,i,1,1)= 0.0
2236  IF (pol >= 1) eps_hb(i,i,2,2)= 0.0
2237  IF (pol >= 1) kap_hb(i,i) = 1.040067895187016e-002
2238  IF (pol >= 1) parame(i,6) = 1.70000000000000
2239  IF (pol == 2) mm(i) = 88.1500000000000 ! PCIP-SAFT
2240  IF (pol == 2) parame(i,1) = mm(i)* 4.161521814399406e-002 ! =3.66838147939308
2241  IF (pol == 2) parame(i,2) = 3.43496654431777
2242  IF (pol == 2) parame(i,3) = 244.177313808431
2243  IF (pol == 2) nhb_typ(i) = 2
2244  IF (pol == 2) nhb_no(i,1) = 1
2245  IF (pol == 2) nhb_no(i,2) = 1
2246  IF (pol == 2) eps_hb(i,i,1,2)= 2241.27880639096
2247  IF (pol == 2) eps_hb(i,i,2,1)= 2241.27880639096
2248  IF (pol == 2) eps_hb(i,i,1,1)= 0.0
2249  IF (pol == 2) eps_hb(i,i,2,2)= 0.0
2250  IF (pol == 2) kap_hb(i,i) = 1.049516309928397e-002
2251  IF (pol == 2) parame(i,6) = 1.70000000000000
2252  IF (pol == 2) parame(i,11)= 10.8000000000000
2253  ELSE IF (compna(i) == '1-octanol') THEN
2254  mm(i) = 130.23
2255  parame(i,1) = mm(i)* .0334446084
2256  parame(i,2) = 3.714535
2257  parame(i,3) = 262.740637
2258  nhb_typ(i) = 2
2259  nhb_no(i,1) = 1 ! no. of sites of type 1
2260  nhb_no(i,2) = 1 ! no. of sites of type 2
2261  eps_hb(i,i,1,2)= 2754.77272
2262  eps_hb(i,i,2,1)= 2754.77272
2263  eps_hb(i,i,1,1)= 0.0
2264  eps_hb(i,i,2,2)= 0.0
2265  kap_hb(i,i) = .00219656803
2266  ELSE IF (compna(i) == '1-nonanol') THEN
2267  mm(i) = 144.257
2268  parame(i,1) = mm(i)* .0324692669
2269  parame(i,2) = 3.72924286
2270  parame(i,3) = 263.636673
2271  nhb_typ(i) = 2
2272  nhb_no(i,1) = 1 ! no. of sites of type 1
2273  nhb_no(i,2) = 1 ! no. of sites of type 2
2274  eps_hb(i,i,1,2)= 2941.9231
2275  eps_hb(i,i,2,1)= 2941.9231
2276  eps_hb(i,i,1,1)= 0.0
2277  eps_hb(i,i,2,2)= 0.0
2278  kap_hb(i,i) = .00142696883
2279  ELSE IF (compna(i) == '2-propanol') THEN
2280  mm(i) = 60.096
2281  parame(i,1) = mm(i)* .0514663133
2282  parame(i,2) = 3.20845858
2283  parame(i,3) = 208.420809
2284  nhb_typ(i) = 2
2285  nhb_no(i,1) = 1 ! no. of sites of type 1
2286  nhb_no(i,2) = 1 ! no. of sites of type 2
2287  eps_hb(i,i,1,2)= 2253.91064
2288  eps_hb(i,i,2,1)= 2253.91064
2289  eps_hb(i,i,1,1)= 0.0
2290  eps_hb(i,i,2,2)= 0.0
2291  kap_hb(i,i) = .0246746934
2292  ELSE IF (compna(i) == '2-methyl-2-butanol') THEN
2293  mm(i) = 88.15
2294  parame(i,1) = mm(i)* .0289135026
2295  parame(i,2) = 3.90526707
2296  parame(i,3) = 266.011828
2297  nhb_typ(i) = 2
2298  nhb_no(i,1) = 1 ! no. of sites of type 1
2299  nhb_no(i,2) = 1 ! no. of sites of type 2
2300  eps_hb(i,i,1,2)= 2618.80124
2301  eps_hb(i,i,2,1)= 2618.80124
2302  eps_hb(i,i,1,1)= 0.0
2303  eps_hb(i,i,2,2)= 0.0
2304  kap_hb(i,i) = .00186263367
2305  ELSE IF (compna(i) == 'acetic-acid') THEN
2306  mm(i) = 60.053
2307  parame(i,1) = mm(i)* .0227076949
2308  parame(i,2) = 3.79651163
2309  parame(i,3) = 199.225066
2310  nhb_typ(i) = 2
2311  nhb_no(i,1) = 1 ! no. of sites of type 1
2312  nhb_no(i,2) = 1 ! no. of sites of type 2
2313  eps_hb(i,i,1,2)= 3092.40109
2314  eps_hb(i,i,2,1)= 3092.40109
2315  eps_hb(i,i,1,1)= 0.0
2316  eps_hb(i,i,2,2)= 0.0
2317  kap_hb(i,i) = .0870093874
2318 
2319 
2320  mm(i) = 60.053
2321  parame(i,1) = mm(i)* .0181797646
2322  parame(i,2) = 4.13711044
2323  parame(i,3) = 207.552969
2324  nhb_typ(i) = 2
2325  nhb_no(i,1) = 1 ! no. of sites of type 1
2326  nhb_no(i,2) = 1 ! no. of sites of type 2
2327  eps_hb(i,i,1,2)= 3198.84362
2328  eps_hb(i,i,2,1)= 3198.84362
2329  eps_hb(i,i,1,1)= 0.0
2330  eps_hb(i,i,2,2)= 0.0
2331  kap_hb(i,i) = .0586552968
2332 
2333 ! mit gesetztem Dipol-Moment
2334  mm(i) = 60.0530000000000
2335  parame(i,1) = mm(i)* 1.736420143637533e-002
2336  parame(i,2) = 4.25220708070687
2337  parame(i,3) = 190.957247854820
2338  parame(i,6) = 3.50000000000000
2339  nhb_typ(i) = 2
2340  nhb_no(i,1) = 1 ! no. of sites of type 1
2341  nhb_no(i,2) = 1 ! no. of sites of type 2
2342  eps_hb(i,i,1,2)= 3096.36190957945
2343  eps_hb(i,i,2,1)= 3096.36190957945
2344  eps_hb(i,i,1,1)= 0.0
2345  eps_hb(i,i,2,2)= 0.0
2346  kap_hb(i,i) = 6.154307094782551e-002
2347 
2348  ELSE IF (compna(i) == 'propionic-acid') THEN
2349  mm(i) = 74.0800000000000
2350  parame(i,1) = mm(i)* 2.359519915877884e-002
2351  parame(i,2) = 3.99339224153844
2352  parame(i,3) = 295.947729838532
2353  nhb_typ(i) = 2
2354  nhb_no(i,1) = 1 ! no. of sites of type 1
2355  nhb_no(i,2) = 1 ! no. of sites of type 2
2356  eps_hb(i,i,1,2)= 2668.97826430874
2357  eps_hb(i,i,2,1)= 2668.97826430874
2358  eps_hb(i,i,1,1)= 0.0
2359  eps_hb(i,i,2,2)= 0.0
2360  kap_hb(i,i) = 3.660242292423115e-002
2361  ELSE IF (compna(i) == 'acrylic-acid') THEN
2362  mm(i) = 72.0636
2363  parame(i,1) = mm(i)* .0430585424
2364  parame(i,2) = 3.0545415
2365  parame(i,3) = 164.115604
2366  nhb_typ(i) = 2
2367  nhb_no(i,1) = 1 ! no. of sites of type 1
2368  nhb_no(i,2) = 1 ! no. of sites of type 2
2369  eps_hb(i,i,1,2)= 3065.40667
2370  eps_hb(i,i,2,1)= 3065.40667
2371  eps_hb(i,i,1,1)= 0.0
2372  eps_hb(i,i,2,2)= 0.0
2373  kap_hb(i,i) = .336261669
2374  ELSE IF (compna(i) == 'caproic-acid') THEN
2375  mm(i) = 116.16
2376  parame(i,1) = 5.87151
2377  parame(i,2) = 3.0694697
2378  parame(i,3) = 241.4569
2379  nhb_typ(i) = 1
2380  eps_hb(i,i,1,1)= 2871.37
2381  kap_hb(i,i) = 3.411613d-3
2382  ELSE IF (compna(i) == 'aniline') THEN
2383  mm(i) = 93.13
2384  parame(i,1) = mm(i)* .0285695992
2385  parame(i,2) = 3.70214085
2386  parame(i,3) = 335.471062
2387  nhb_typ(i) = 2
2388  nhb_no(i,1) = 1 ! no. of sites of type 1
2389  nhb_no(i,2) = 1 ! no. of sites of type 2
2390  eps_hb(i,i,1,2)= 1351.64234
2391  eps_hb(i,i,2,1)= 1351.64234
2392  eps_hb(i,i,1,1)= 0.0
2393  eps_hb(i,i,2,2)= 0.0
2394  kap_hb(i,i) = .0748830615
2395 
2396  mm(i) = 93.1300000000000
2397  parame(i,1) = mm(i)* 2.834372610192228e-002 ! =2.63965121187202
2398  parame(i,2) = 3.71326867619433
2399  parame(i,3) = 332.253796842009
2400  nhb_typ(i) = 2
2401  nhb_no(i,1) = 1
2402  nhb_no(i,2) = 1
2403  eps_hb(i,i,1,2)= 1392.14266886674
2404  eps_hb(i,i,2,1)= 1392.14266886674
2405  eps_hb(i,i,1,1)= 0.0
2406  eps_hb(i,i,2,2)= 0.0
2407  kap_hb(i,i) = 7.424612087328866e-002
2408  parame(i,6) = 1.55000000000000
2409  IF (pol == 2) parame(i,11)= 12.1000000000000
2410  ELSE IF (compna(i) == 'HF') THEN
2411  ! mm(i) = 20.006 ! PC-SAFT
2412  ! parame(i,1) = 0.87731
2413  ! parame(i,2) = 3.0006
2414  ! parame(i,3) = 112.24
2415  ! nhb_typ(i) = 2
2416  ! nhb_no(i,1) = 1
2417  ! nhb_no(i,2) = 1
2418  ! eps_hb(i,i,1,2)= 2208.22
2419  ! eps_hb(i,i,2,1)= 2208.22
2420  ! eps_hb(i,i,1,1)= 0.0
2421  ! eps_hb(i,i,2,2)= 0.0
2422  ! kap_hb(i,i) = 0.71265
2423  mm(i) = 20.0060000000000 ! PCP-SAFT
2424  parame(i,1) = 1.00030000000000
2425  parame(i,2) = 3.17603622195029
2426  parame(i,3) = 331.133373208282
2427  nhb_typ(i) = 2
2428  nhb_no(i,1) = 1
2429  nhb_no(i,2) = 1
2430  eps_hb(i,i,1,2)= 348.251433080979
2431  eps_hb(i,i,2,1)= 348.251433080979
2432  eps_hb(i,i,1,1)= 0.0
2433  eps_hb(i,i,2,2)= 0.0
2434  kap_hb(i,i) = 2.868887975449893e-002
2435  parame(i,6) = 1.82600000000000
2436  ELSE IF (compna(i) == 'HCl') THEN
2437  ! mm(i) = 36.4610000000000
2438  ! parame(i,1) = mm(i)* 3.922046741026943E-002
2439  ! parame(i,2) = 3.08731180727493
2440  ! parame(i,3) = 203.898845304388
2441  ! nhb_typ(i) = 2
2442  ! nhb_no(i,1) = 1
2443  ! nhb_no(i,2) = 1
2444  ! eps_hb(i,i,1,2)= 245.462773177367
2445  ! eps_hb(i,i,2,1)= 245.462773177367
2446  ! eps_hb(i,i,1,1)= 0.0
2447  ! eps_hb(i,i,2,2)= 0.0
2448  ! kap_hb(i,i) = 0.256454187330899
2449  mm(i) = 36.461 ! PCIP-SAFT
2450  parame(i,1) = 1.6335
2451  parame(i,2) = 2.9066
2452  parame(i,3) = 190.17
2453  parame(i,6) = 1.1086
2454  IF (pol == 2) parame(i,11)= 2.63
2455  ELSE IF (compna(i) == 'gen') THEN
2456  mm(i) = 302.0
2457  parame(i,1) = 8.7563
2458  parame(i,2) = 3.604243
2459  parame(i,3) = 255.6434
2460  nhb_typ(i) = 2
2461  nhb_no(i,1) = 1 ! no. of sites of type 1
2462  nhb_no(i,2) = 1 ! no. of sites of type 2
2463  eps_hb(i,i,1,2)= 0.0
2464  eps_hb(i,i,2,1)= 0.0
2465  eps_hb(i,i,1,1)= 0.0
2466  eps_hb(i,i,2,2)= 0.0
2467  kap_hb(i,i) = 0.02
2468  ELSE IF (compna(i) == 'h2o') THEN
2469  mm(i) = 18.015
2470  parame(i,1) = mm(i)* .05915
2471  parame(i,2) = 3.00068335
2472  parame(i,3) = 366.512135
2473  nhb_typ(i) = 2
2474  nhb_no(i,1) = 1 ! no. of sites of type 1
2475  nhb_no(i,2) = 1 ! no. of sites of type 2
2476  eps_hb(i,i,1,2)= 2500.6706
2477  eps_hb(i,i,2,1)= 2500.6706
2478  eps_hb(i,i,1,1)= 0.0
2479  eps_hb(i,i,2,2)= 0.0
2480  kap_hb(i,i) = .0348679836
2481 
2482  ! mm(i) = 18.015
2483  ! parame(i,1) = 1.706
2484  ! parame(i,2) = 2.429
2485  ! parame(i,3) = 242.19
2486  ! nhb_typ(i) = 2
2487  ! nhb_no(i,1) = 1 ! no. of sites of type 1
2488  ! nhb_no(i,2) = 1 ! no. of sites of type 2
2489  ! eps_hb(i,i,1,2)= 2644.2
2490  ! eps_hb(i,i,2,1)= 2644.2
2491  ! eps_hb(i,i,1,1)= 0.0
2492  ! eps_hb(i,i,2,2)= 0.0
2493  ! kap_hb(i,i) = 0.153
2494 
2495  ! mm(i) = 18.015
2496  ! parame(i,1) = mm(i)* .0588185709
2497  ! parame(i,2) = 3.02483704
2498  ! parame(i,3) = 382.086672
2499  !c! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
2500  ! nhb_typ(i) = 2
2501  ! nhb_no(i,1) = 1 ! no. of sites of type 1
2502  ! nhb_no(i,2) = 2 ! no. of sites of type 2
2503  !c! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
2504  ! eps_hb(i,i,1,2)= 2442.49782
2505  ! eps_hb(i,i,2,1)= 2442.49782
2506  ! eps_hb(i,i,1,1)=0.0
2507  ! eps_hb(i,i,2,2)=0.0
2508  ! kap_hb(i,i) = .0303754635
2509 
2510  ! mit gefittetem Dipol-Moment - Haarlem-night
2511  ! mm(i) = 18.015
2512  ! parame(i,1) = mm(i)* 7.0037160952278E-2
2513  ! parame(i,2) = 2.79276650240763
2514  ! parame(i,3) = 270.970053834558
2515  ! nhb_typ(i) = 2
2516  ! nhb_no(i,1) = 1 ! no. of sites of type 1
2517  ! nhb_no(i,2) = 1 ! no. of sites of type 2
2518  ! eps_hb(i,i,1,2)= 1427.8287
2519  ! eps_hb(i,i,2,1)= 1427.8287
2520  ! eps_hb(i,i,1,1)=0.0
2521  ! eps_hb(i,i,2,2)=0.0
2522  ! kap_hb(i,i) = 4.335167238E-2
2523  ! parame(i,6) = 3.968686856378
2524 
2525  IF (pol >= 1) mm(i) = 18.015 ! PCP-SAFT
2526  IF (pol >= 1) parame(i,1) = 0.922688825223317
2527  IF (pol >= 1) parame(i,2) = 3.17562052023944
2528  IF (pol >= 1) parame(i,3) = 388.462197714696
2529  IF (pol >= 1) nhb_typ(i) = 2
2530  IF (pol >= 1) nhb_no(i,1) = 1
2531  IF (pol >= 1) nhb_no(i,2) = 1
2532  IF (pol >= 1) eps_hb(i,i,1,2)= 2000.67247409031
2533  IF (pol >= 1) eps_hb(i,i,2,1)= 2000.67247409031
2534  IF (pol >= 1) eps_hb(i,i,1,1)= 0.0
2535  IF (pol >= 1) eps_hb(i,i,2,2)= 0.0
2536  IF (pol >= 1) kap_hb(i,i) = 2.040614952751225e-003
2537  IF (pol >= 1) parame(i,6) = 1.85500000000000
2538  IF (pol >= 1) parame(i,7) = 2.00000000000000
2539  ! IF (pol.EQ.2) mm(i) = 18.015 ! PCIP-SAFT - DQ with my=my_RPT
2540  ! IF (pol.EQ.2) parame(i,1) = 1.0
2541  ! IF (pol.EQ.2) parame(i,2) = 3.14540664928026
2542  ! IF (pol.EQ.2) parame(i,3) = 320.283823615925
2543  ! IF (pol.EQ.2) nhb_typ(i) = 2
2544  ! IF (pol.EQ.2) nhb_no(i,1) = 2
2545  ! IF (pol.EQ.2) nhb_no(i,2) = 2
2546  ! IF (pol.EQ.2) eps_hb(i,i,1,2)= 1335.72887678032
2547  ! IF (pol.EQ.2) eps_hb(i,i,2,1)= 1335.72887678032
2548  ! IF (pol.EQ.2) eps_hb(i,i,1,1)= 0.0
2549  ! IF (pol.EQ.2) eps_hb(i,i,2,2)= 0.0
2550  ! IF (pol.EQ.2) kap_hb(i,i) = 4.162619960844732E-003
2551  ! IF (pol.EQ.2) parame(i,6) = 1.85500000000000
2552  ! IF (pol.EQ.2) parame(i,7) = 2.00000000000000
2553  ! IF (pol.EQ.2) parame(i,11)= 1.45000000000000
2554  ! mm(i) = 18.0150000000000
2555  ! parame(i,1) = 1.0
2556  ! parame(i,2) = 3.11505069470915
2557  ! parame(i,3) = 320.991387913502
2558  ! nhb_typ(i) = 2
2559  ! nhb_no(i,1) = 1
2560  ! nhb_no(i,2) = 1
2561  ! eps_hb(i,i,1,2)= 2037.76329812542
2562  ! eps_hb(i,i,2,1)= 2037.76329812542
2563  ! eps_hb(i,i,1,1)= 0.0
2564  ! eps_hb(i,i,2,2)= 0.0
2565  ! kap_hb(i,i) = 3.763148982832804E-003
2566  ! parame(i,6) = 1.85500000000000
2567  ! parame(i,7) = 2.00000000000000
2568  ! IF (pol.EQ.2) parame(i,11)= 1.45000000000000
2569  IF (pol == 2) mm(i) = 18.015 ! PCIP-SAFT - DQ with my=my_0
2570  IF (pol == 2) parame(i,1) = 1.0
2571  IF (pol == 2) parame(i,2) = 3.11574491885322
2572  IF (pol == 2) parame(i,3) = 322.699984283499
2573  IF (pol == 2) nhb_typ(i) = 2
2574  IF (pol == 2) nhb_no(i,1) = 1
2575  IF (pol == 2) nhb_no(i,2) = 1
2576  IF (pol == 2) eps_hb(i,i,1,2)= 2033.87777692450
2577  IF (pol == 2) eps_hb(i,i,2,1)= 2033.87777692450
2578  IF (pol == 2) eps_hb(i,i,1,1)= 0.0
2579  IF (pol == 2) eps_hb(i,i,2,2)= 0.0
2580  IF (pol == 2) kap_hb(i,i) = 3.815764667176484e-003
2581  IF (pol == 2) parame(i,6) = 1.85500000000000
2582  IF (pol == 2) parame(i,7) = 2.00000000000000
2583  IF (pol == 2) parame(i,11)= 1.45000000000000
2584  ! mm(i) = 18.015 ! Dortmund
2585  ! parame(i,1) = 0.11065254*mm(i)
2586  ! parame(i,2) = 2.36393615
2587  ! parame(i,3) = 300.288589
2588  ! nhb_typ(i) = 2
2589  ! nhb_no(i,1) = 1
2590  ! nhb_no(i,2) = 1
2591  ! eps_hb(i,i,1,2)= 1193.45585
2592  ! eps_hb(i,i,2,1)= 1193.45585
2593  ! eps_hb(i,i,1,1)= 0.0
2594  ! eps_hb(i,i,2,2)= 0.0
2595  ! kap_hb(i,i) = 0.091203519
2596  ! parame(i,6) = 1.8546
2597  ! parame(i,7) = 0.0
2598  ! parame(i,11)= 0.0
2599  ELSE IF (compna(i) == 'MBBA') THEN
2600  mm(i) = 267.37
2601  parame(i,1) = 12.194
2602  parame(i,2) = 3.064
2603  parame(i,3) = 270.7
2604  e_lc(i,i) = 13.7 !Hino & Prausnitz
2605  s_lc(i,i) = 0.176 !Hino & Prausnitz
2606  ELSE IF (compna(i) == 'PCH5') THEN
2607  mm(i) = 255.41
2608  parame(i,1) = 11.6
2609  parame(i,2) = 3.2
2610  parame(i,3) = 270.7
2611  ! E_LC(i,i) = 16.7 !Hino & Prausnitz
2612  ! S_LC(i,i) = 0.176 !Hino & Prausnitz
2613  e_lc(i,i) = 8.95
2614  s_lc(i,i) = 0.2
2615 
2616  ! mm(i) = 255.41
2617  ! parame(i,1) = 11.6
2618  ! parame(i,2) = 3.2
2619  ! parame(i,3) = 290.7
2620  ! E_LC(i,i) = 7.18
2621  ! S_LC(i,i) = 0.2
2622 
2623  ELSE IF (compna(i) == 'Li') THEN
2624  mm(i) = 6.9
2625  parame(i,1) = 1.0
2626  parame(i,2) = 1.4
2627  parame(i,3) = 96.83
2628  parame(i,10)= 1.0
2629 ! the self-association is set to zero in routine F_EXPL for ions
2630  ! nhb_typ(i) = 1
2631  ! nhb_no(i,1) = 3 ! no. of sites of type 1
2632  ! eps_hb(i,i,1,1)= 2000.0
2633  ! kap_hb(i,i) = 0.008
2634  ELSE IF (compna(i) == 'Na') THEN
2635  mm(i) = 23.0
2636  parame(i,1) = 1.0
2637  parame(i,2) = 1.9
2638  parame(i,3) = 147.38
2639  parame(i,10)= 1.0
2640 ! the self-association is set to zero in routine F_EXPL for ions
2641  nhb_typ(i) = 1
2642  nhb_no(i,1) = 3 ! no. of sites of type 1
2643  eps_hb(i,i,1,1)= 8946.28257 ! 25C, 3 sites, dG-ref-1
2644  kap_hb(i,i) = 0.001648933
2645  ELSE IF (compna(i) == 'Ka') THEN
2646  mm(i) = 39.1
2647  parame(i,1) = 1.0
2648  parame(i,2) = 2.66
2649  parame(i,3) = 221.44
2650  parame(i,10)= 1.0
2651  ! the self-association is set to zero in routine F_EXPL for ions
2652  nhb_typ(i) = 1
2653  nhb_no(i,1) = 3 ! no. of sites of type 1
2654  eps_hb(i,i,1,1)= 3118.336216 ! 25C, 3 sites, dG-ref-1
2655  kap_hb(i,i) = 0.00200559
2656  ELSE IF (compna(i) == 'Cs') THEN
2657  mm(i) = 132.9
2658  parame(i,1) = 1.0
2659  parame(i,2) = 3.38
2660  parame(i,3) = 523.28
2661  parame(i,10)= 1.0
2662  ! the self-association is set to zero in routine F_EXPL for ions
2663  ! nhb_typ(i) = 1
2664  ! nhb_no(i,1) = 3 ! no. of sites of type 1
2665  ! eps_hb(i,i,1,1)= 2000.0
2666  ! kap_hb(i,i) = 0.00200559
2667  ELSE IF (compna(i) == 'Cl') THEN
2668  mm(i) = 35.5
2669  parame(i,1) = 1.0
2670  parame(i,2) = 3.62
2671  parame(i,3) = 225.44
2672  parame(i,10)= -1.0
2673 ! the self-association is set to zero in routine F_EXPL for ions
2674  nhb_typ(i) = 1
2675  nhb_no(i,1) = 4 ! no. of sites of type 1
2676  eps_hb(i,i,1,1)= 6744.12509 ! 25C, 3 sites, dG-ref-1
2677  kap_hb(i,i) = 0.00155252
2678  ELSE IF (compna(i) == 'Br') THEN
2679  mm(i) = 79.9
2680  parame(i,1) = 1.0
2681  parame(i,2) = 3.9
2682  parame(i,3) = 330.82
2683  parame(i,10)= -1.0
2684 ! the self-association is set to zero in routine F_EXPL for ions
2685  nhb_typ(i) = 1
2686  nhb_no(i,1) = 4 ! no. of sites of type 1
2687  eps_hb(i,i,1,1)= 4516.033227 ! 25C, 3 sites, dG-ref-1
2688  kap_hb(i,i) = 0.00200559
2689  ELSE IF (compna(i) == 'Io') THEN
2690  mm(i) = 126.9
2691  parame(i,1) = 1.0
2692  parame(i,2) = 4.4
2693  parame(i,3) = 380.60
2694  parame(i,10)= -1.0
2695 ! the self-association is set to zero in routine F_EXPL for ions
2696  nhb_typ(i) = 1
2697  nhb_no(i,1) = 4 ! no. of sites of type 1
2698  eps_hb(i,i,1,1)= 1631.203342 ! 25C, 3 sites, dG-ref-1
2699  kap_hb(i,i) = 0.00200559
2700  ELSE IF (compna(i) == 'OH') THEN
2701  mm(i) = 17.0
2702  parame(i,1) = 1.0
2703  parame(i,2) = 3.06
2704  parame(i,3) = 217.26
2705  parame(i,10)= -1.0
2706  ! the self-association is set to zero in routine F_EXPL for ions
2707  nhb_typ(i) = 1
2708  nhb_no(i,1) = 4 ! no. of sites of type 1
2709  eps_hb(i,i,1,1)= 14118.68089 ! 25C, 3 sites, dG-ref-1
2710  kap_hb(i,i) = 0.00200559
2711  ELSE IF (compna(i) == 'NO3') THEN
2712  mm(i) = 62.0
2713  parame(i,1) = 1.0
2714  parame(i,2) = 4.12
2715  parame(i,3) = 239.48
2716  parame(i,10)= -1.0
2717  ! the self-association is set to zero in routine F_EXPL for ions
2718  ! nhb_typ(i) = 1
2719  ! nhb_no(i,1) = 4 ! no. of sites of type 1
2720  ! eps_hb(i,i,1,1)= 2000.0
2721  ! kap_hb(i,i) = 0.00200559
2722  ELSE IF (compna(i) == 'bf4') THEN
2723  mm(i) = 86.8
2724  parame(i,1) = 1.0
2725  parame(i,2) = 4.51 ! *0.85
2726  parame(i,3) = 164.7
2727  parame(i,10)= -1.0
2728  ELSE IF (compna(i) == 'pf6') THEN
2729  mm(i) = 145.0
2730  parame(i,1) = 1.0
2731  parame(i,2) = 5.06
2732  parame(i,3) = 224.9
2733  parame(i,10)= -1.0
2734  ELSE IF (compna(i) == 'emim') THEN
2735  mm(i) = 111.16
2736  parame(i,1) = 3.11
2737  parame(i,2) = 4.0
2738  parame(i,3) = 250.0
2739  parame(i,10)= 1.0
2740  ELSE IF (compna(i) == 'bmim') THEN
2741  mm(i) = 139.21
2742  ! parame(i,1) = 2.81
2743  ! parame(i,2) = 3.5
2744  parame(i,1) = 3.81
2745  parame(i,2) = 4.0
2746  parame(i,3) = 250.0
2747  parame(i,6) = 0.0
2748  parame(i,10)= 1.0
2749  ELSE IF (compna(i) == 'hmim') THEN
2750  mm(i) = 167.27
2751  parame(i,1) = 4.53
2752  parame(i,2) = 4.0
2753  parame(i,3) = 250.0
2754  parame(i,10)= 1.0
2755  ELSE IF (compna(i) == 'omim') THEN
2756  mm(i) = 195.32
2757  parame(i,1) = 5.30
2758  parame(i,2) = 4.0
2759  parame(i,3) = 250.0
2760  parame(i,10)= 1.0
2761  ELSE IF (compna(i) == 'sw') THEN
2762  parame(i,1) = 1.0
2763  parame(i,2) = 1.0
2764  parame(i,3) = 100.0
2765  parame(i,4) = 0.0
2766  parame(i,5) = 0.0
2767  mm(i) = 1.0
2768  parame(i,6) = 0.1175015839*2.0
2769  ! use Temp. in Kelvin in the input-file. For dimensionless quantities
2770  ! (P*=P*sig**3/epsilon, T*=T*kBol/epsilon, rho*=rho*sig**3) calculate
2771  ! P* = P *1E5 * (1.e-10)^3 / (100*8.31441/6.022045E+23)
2772  ! T* = (T+273.15)/100
2773  ! for rho* go to utilities.f (subroutine SI_DENS) and write
2774  ! density(ph) = dense(ph)*6.0/PI
2775  ELSE IF (compna(i) == 'c8-sim') THEN
2776  mm(i) = 114.231
2777  parame(i,1) = mm(i)* 4.095944e-2 ! =4.67883774717337
2778  parame(i,2) = 3.501769
2779  parame(i,3) = 163.8606
2780  ! mm(i) = 114.231000000000
2781  ! parame(i,1) = mm(i)* 3.547001476437745E-002 ! =4.05177525654960
2782  ! parame(i,2) = 3.70988567055814
2783  ! parame(i,3) = 192.787548176343
2784  ELSE IF (compna(i) == 'argon_ge') THEN
2785  mm(i) = 39.948
2786  parame(i,1) = mm(i)*0.030327
2787  parame(i,2) = 3.149910
2788  parame(i,3) = 100.188975
2789  ELSE IF (compna(i) == 'argon_ge2') THEN
2790  mm(i) = 39.948
2791  parame(i,1) = mm(i)*0.030327
2792  parame(i,2) = 3.149910
2793  parame(i,3) = 0.8*100.188975
2794  ELSE
2795  WRITE (*,*) ' pure component parameters missing for ',compna(i)
2796  stop
2797  END IF
2798 
2799  IF (pol == 2.AND.parame(i,11) == 0.0) THEN
2800  WRITE (*,*) ' polarizability missing for comp. ',compna(i)
2801  stop
2802  END IF
2803 
2804  IF (nhb_typ(i) /= 0) THEN
2805  parame(i,12) = dble(nhb_typ(i))
2806  parame(i,13) = kap_hb(i,i)
2807  no = 0
2808  DO j=1,nhb_typ(i)
2809  DO k=1,nhb_typ(i)
2810  parame(i,(14+no))=eps_hb(i,i,j,k)
2811  no=no+1
2812  END DO
2813  END DO
2814  DO j=1,nhb_typ(i)
2815  parame(i,(14+no))=dble(nhb_no(i,j))
2816  no=no+1
2817  END DO
2818  ELSE
2819  DO k=12,25
2820  parame(i,k)=0.0
2821  END DO
2822  END IF
2823 
2824 END DO
2825 
2826 
2827 DO i = 1,ncomp
2828  DO j = 1,ncomp
2829  IF (compna(i) == 'ps'.AND.compna(j) == 'cyclohexane')THEN
2830  kij(i,j) = 0.0075
2831  ELSE IF(compna(i) == 'peva'.AND.compna(j) == 'ethylene')THEN
2832 ! -- 0 Gew.% VA-------------
2833  ! kij(i,j) = 0.039
2834 ! -- 7.5 Gew.% VA-------------
2835  ! kij(i,j) = 0.0377325
2836  ! kij(i,j) = 0.0374867
2837 ! ---12.7 Gew.% VA------------
2838  ! kij(i,j) = 0.036854
2839  ! kij(i,j) = 0.0366508
2840 ! ---27.3 Gew.% VA------------
2841  ! kij(i,j) = 0.034386
2842  ! kij(i,j) = 0.0352375
2843 ! ---31.8 Gew.% VA------------
2844  kij(i,j) = 0.033626
2845  ! kij(i,j) = 0.0350795
2846 ! ---42.7 Gew.% VA------------
2847  ! kij(i,j) = 0.031784
2848  ! kij(i,j) = 0.035239
2849  ELSE IF(compna(i) == 'ps_J'.AND.compna(j) == 'co2_J')THEN !from: Xu, Diego: DFT for polymer-co2 mixtures: A PC-SAFT approach
2850  kij(i,j) = - 0.00296
2851  ELSE IF(compna(i) == 'gen'.AND.compna(j) == 'h2o')THEN
2852  kij(i,j) = - 0.2
2853  ELSE IF(compna(i) == 'peva'.AND.compna(j) == 'vinylacetate')THEN
2854  kij(i,j) = 0.019
2855  ELSE IF(compna(i) == 'ps'.AND.compna(j) == 'co2') THEN
2856  IF ( pol == 0 ) kij(i,j) = 0.195
2857  IF ( pol == 1 ) kij(i,j) = 0.06
2858  ELSE IF(compna(i) == 'ps'.AND.compna(j) == 'acetone') THEN
2859  kij(i,j) = 0.021
2860  ELSE IF(compna(i) == 'ps'.AND.compna(j) == 'hexane') THEN
2861  kij(i,j) = 0.012
2862  ELSE IF(compna(i) == 'ps'.AND.compna(j) == 'pentane')THEN
2863  kij(i,j) = 0.005
2864  ELSE IF(compna(i) == 'ps'.AND.compna(j) == 'methylcyclohexane') THEN
2865  kij(i,j) = 0.0073
2866  ELSE IF(compna(i) == 'ps'.AND.compna(j) == 'ethylbenzene')THEN
2867  kij(i,j) = 0.008
2868  ELSE IF(compna(i) == 'pe'.AND.compna(j) == 'co2') THEN
2869  ! kij(i,j) = 0.181
2870  kij(i,j) = 0.088
2871  ELSE IF(compna(i) == 'pe'.AND.compna(j) == 'propane') THEN
2872  kij(i,j) = 0.0206
2873  ELSE IF(compna(i) == 'pe'.AND.compna(j) == 'butane') THEN
2874  kij(i,j) = 0.01
2875  ELSE IF(compna(i) == 'methane'.AND.compna(j) == 'argon') THEN
2876  kij(i,j) = 0.01
2877  ELSE IF(compna(i) == 'methane'.AND.compna(j) == 'butane') THEN
2878  kij(i,j) = 0.026
2879  ELSE IF(compna(i) == 'pe'.AND.compna(j) == 'pentane') THEN
2880  ! kij(i,j) = -0.0195
2881  ELSE IF(compna(i) == 'pe'.AND.compna(j) == 'hexane') THEN
2882  ! kij(i,j) = 0.008
2883  kij(i,j) = 0.004
2884  ELSE IF(compna(i) == 'pe'.AND.compna(j) == 'ethylene') THEN
2885  kij(i,j) = 0.0404
2886  ! kij(i,j) = 0.0423
2887  ! kij(i,j) = 0.044
2888  ELSE IF(compna(i) == 'pe'.AND.compna(j) == 'cyclohexane') THEN
2889  kij(i,j) = -0.1
2890  ELSE IF(compna(i) == 'ldpe'.AND.compna(j) == 'cyclopentane')THEN
2891  kij(i,j) = -0.016
2892  ELSE IF(compna(i) == 'pp'.AND.compna(j) == 'propane') THEN
2893  kij(i,j) = 0.0242
2894  ELSE IF(compna(i) == 'pp'.AND.compna(j) == 'pentane') THEN
2895  kij(i,j) = 0.0137583176
2896  ELSE IF(compna(i) == 'pp'.AND.compna(j) == 'co2') THEN
2897  kij(i,j) = 0.1767 ! without quadrupol-term
2898  kij(i,j) = 0.063 ! with quadrupol-term
2899  ELSE IF(compna(i) == 'pba'.AND.compna(j) == 'ethylene') THEN
2900  kij(i,j) = 0.026
2901  ELSE IF(compna(i) == 'decane'.AND.compna(j) == 'ethane') THEN
2902  kij(i,j) = 0.017
2903  ELSE IF(compna(i) == 'n2'.AND.compna(j) == 'co2') THEN
2904  ! kij(i,j) = -0.04
2905  ELSE IF(compna(i) == 'methane'.AND.compna(j) == 'co2') THEN
2906  kij(i,j) = 0.051875 ! PC-SAFT
2907  IF (pol == 1) kij(i,j) = -0.0353125 ! PCP-SAFT
2908  ELSE IF(compna(i) == 'methane'.AND.compna(j) == 'co') THEN
2909  ! IF (pol == 1) kij(i,j) = -0.003 ! PCP-SAFT
2910  IF (pol == 1) kij(i,j) = 0.018 ! PCP-SAFT
2911  ELSE IF(compna(i) == 'ethane'.AND.compna(j) == 'co2') THEN
2912  kij(i,j) = 0.095
2913  kij(i,j) = 0.021
2914  ! kij(i,j) = 0.024
2915  ELSE IF(compna(i) == 'propane'.AND.compna(j) == 'co2') THEN
2916  kij(i,j) = 0.042
2917  ELSE IF(compna(i) == 'argon_ge'.AND.compna(j) == 'argon_ge2') THEN
2918  read (*,*) kij(i,j)
2919  ELSE IF(compna(i) == 'butane'.AND.compna(j) == 'co2') THEN
2920  ! kij(i,j) = 0.115
2921  ! kij(i,j) = 0.048
2922  kij(i,j) = 0.036
2923  ELSE IF(compna(i) == 'pentane'.AND.compna(j) == 'co2') THEN
2924  kij(i,j) = 0.143 ! without quadrupol-term
2925  kij(i,j) = 0.0 ! with quadrupol-term
2926  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == 'co2') THEN
2927  ! kij(i,j) = 0.125 ! without quadrupol-term
2928  kij(i,j) = 0.0495
2929  ELSE IF(compna(i) == 'heptane'.AND.compna(j) == 'co2') THEN
2930  kij(i,j) = 0.11 ! without quadrupol-term
2931  ! kij(i,j) = 0.05
2932  ! kij(i,j) = 0.039 ! with quadrupol-term
2933  ELSE IF(compna(i) == 'decane'.AND.compna(j) == 'co2') THEN
2934  ! kij(i,j) = 0.128 ! without quadrupol-term
2935  kij(i,j) = 0.053 ! with quadrupol-term
2936  ELSE IF(compna(i) == 'dodecane'.AND.compna(j) == 'co2') THEN
2937  kij(i,j) = 0.12 ! without quadrupol-term
2938  kij(i,j) = 0.0508 ! with quadrupol-term
2939  ELSE IF(compna(i) == 'benzene'.AND.compna(j) == 'co2') THEN
2940  ! kij(i,j) = 0.087968750000 ! without quadrupol-term
2941  ! kij(i,j) = 0.008203125 ! only co2 quadrupol
2942  kij(i,j) = 0.042 ! both quadrupol
2943  ! kij(i,j) = 0.003 ! both quadrupol
2944  ELSE IF(compna(i) == 'toluene'.AND.compna(j) == 'co2') THEN
2945  ! kij(i,j) = 0.110784912 ! without quadrupol-term
2946  kij(i,j) = 0.0305 ! with quadrupol-term
2947  ELSE IF(compna(i) == 'cyclohexane'.AND.compna(j) == 'co2') THEN
2948  kij(i,j) = 0.13
2949  lij(i,j) = - 0.00
2950  ! kij(i,j) = 0.045
2951  ELSE IF(compna(i) == 'chloromethane'.AND.compna(j) == 'co2')THEN
2952  ! kij(i,j) = 0.04 ! PC-SAFT
2953  kij(i,j) = 0.025 ! PCP-SAFT
2954  ! kij(i,j) = 0.083 ! PCIP-SAFT
2955  ELSE IF(compna(i) == 'acetone'.AND.compna(j) == 'n2')THEN
2956  kij(i,j) = 0.035211 ! PCP-SAFT
2957  lij(i,j) = + 0.013225 ! PCP-SAFT
2958  kij(i,j) = 0.023 ! PCP-SAFT
2959  lij(i,j) = + 0.013225 ! PCP-SAFT
2960  !kij(i,j) = 1.722238535635467E-002 ! PCP-SAFT
2961  !lij(i,j) = 2.815974678394451E-003 ! PCP-SAFT
2962  !kij(i,j) = 1.931522058164026E-002 ! PCP-SAFT
2963  !lij(i,j) = 0.0 ! PCP-SAFT
2964  !kij(i,j) = 1.641053794134795E-002 ! PCP-SAFT
2965  !lij(i,j) = -5.850421759950764E-003 ! PCP-SAFT
2966  if ( num == 0 ) write (*,*) 'calculation with lij only possible with num=1'
2967  if ( num == 0 ) stop 5
2968  ELSE IF(compna(i) == 'acetone'.AND.compna(j) == 'co2')THEN
2969  kij(i,j) = 0.015 ! PC-SAFT
2970  IF (pol == 1) kij(i,j) = -0.02 ! PCP-SAFT
2971  IF (pol == 2) kij(i,j) = -0.005 ! PCIP-SAFT where DQ with my=my_vacuum
2972  ! IF (pol.EQ.2) kij(i,j) = 0.0 ! PCIP-SAFT where DQ with my=my_RPT
2973  ELSE IF(compna(i) == 'methanol'.AND.compna(j) == 'co2')THEN
2974  ! kij(i,j) = 0.0288 ! PC-SAFT
2975  ! kij(i,j) = - 0.035 ! PCP-SAFT for co2 and PC-SAFT methanol
2976  ! kij(i,j) = - 0.035 ! PCP-SAFT
2977  ! lij(i,j) = 0.3 ! PCP-SAFT
2978  ELSE IF(compna(i) == 'dimethyl-ether'.AND.compna(j) == 'co2')THEN
2979  kij(i,j) = 0.00896894 ! PC-SAFT
2980  ! kij(i,j) = - 0.015 ! PCP-SAFT
2981  ELSE IF(compna(i) == 'dimethyl-ether'.AND.compna(j) == 'h2o')THEN
2982  ! kij(i,j) = -0.134 ! PC-SAFT
2983  ELSE IF(compna(i) == 'dichloromethane'.AND.compna(j) == 'co2')THEN
2984  ! kij(i,j) = 0.06881725 ! PC-SAFT
2985  ! kij(i,j) = 0.05839145 ! PCP-SAFT
2986  kij(i,j) = -0.00944346 ! PCP-SAFT co2 dichloromethane PC-SAFT
2987  ! kij(i,j) = 0.06 ! PCIP-SAFT
2988  ELSE IF(compna(i) == 'h2s'.AND.compna(j) == 'methane')THEN
2989  ! kij(i,j) = 0.0414 ! PC-SAFT
2990  kij(i,j) = 0.0152 ! PCP-SAFT Dipole momnet (d with Q)
2991  ELSE IF(compna(i) == 'butane'.AND.compna(j) == 'h2s')THEN
2992  kij(i,j) = -0.002 ! PCP-SAFT
2993  ELSE IF(compna(i) == 'methanol'.AND.compna(j) == 'h2s')THEN
2994  kij(i,j) = 0.0 ! PCP-SAFT
2995  lij(i,j) = 0.0 ! PCP-SAFT
2996  ELSE IF(compna(i) == 'co2'.AND.compna(j) == 'hydrogen') THEN
2997  ! lij(i,j) = -0.08 !!!!! Lij not kij !!!!
2998  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == 'n2') THEN
2999  kij(i,j) = 0.11
3000  ELSE IF(compna(i) == 'propane'.AND.compna(j) == 'n2') THEN
3001  kij(i,j) = 0.0251171875
3002  ELSE IF(compna(i) == 'co2'.AND.compna(j) == 'hexadecane') THEN
3003  ! kij(i,j) = 0.1194 ! PC-SAFT ohne QQ
3004  kij(i,j) = 0.0588
3005  ELSE IF(compna(i) == 'ethane'.AND.compna(j) == 'acetone') THEN
3006  ! kij(i,j) = 0.065 ! no DD
3007  kij(i,j) = 0.038 ! DD non-polarizable
3008  ! kij(i,j) = 0.025 ! DD polarizable
3009  ELSE IF(compna(i) == 'butane'.AND.compna(j) == 'acetone') THEN
3010  ! kij(i,j) = 0.065 ! no DD
3011  kij(i,j) = 0.037 ! DD non-polarizable
3012  ! kij(i,j) = 0.025 ! DD polarizable
3013  ELSE IF(compna(i) == 'pentane'.AND.compna(j) == 'acetone') THEN
3014  ! kij(i,j) = 0.072 ! no DD
3015  ! kij(i,j) = 0.041 ! DD non-polarizable
3016  kij(i,j) = 0.039 ! DD polarizable
3017  ! kij(i,j) = 0.035 ! DD polarizable
3018  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == 'acetone') THEN
3019  ! kij(i,j) = 0.063
3020  kij(i,j) = 0.038 ! PCP-SAFT
3021  ! kij(i,j) = 0.036 ! PCIP-SAFT
3022  ELSE IF(compna(i) == 'heptane'.AND.compna(j) == 'acetone') THEN
3023  kij(i,j) = 0.035 ! PCP-SAFT
3024  ELSE IF(compna(i) == 'decane'.AND.compna(j) == 'acetone') THEN
3025  ! kij(i,j) = 0.059 ! no DD
3026  ! kij(i,j) = 0.03281250 ! DD non-polarizable
3027  kij(i,j) = 0.028 ! DD polarizable
3028  ELSE IF(compna(i) == 'hexadecane'.AND.compna(j) == 'acetone') THEN
3029  ! kij(i,j) = 0.07 ! no DD
3030  ! kij(i,j) = 0.0415 ! DD non-polarizable
3031  kij(i,j) = 0.035 ! DD polarizable
3032  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == 'butanone')THEN
3033  kij(i,j) = 0.027 ! PCP-SAFT
3034  ! kij(i,j) = 0.033 ! PCP-SAFT with lij
3035  ! lij(i,j) = 0.13 ! PCP-SAFT
3036  ! kij(i,j) = 0.042 ! PC-SAFT
3037  ELSE IF(compna(i) == 'heptane'.AND.compna(j) == 'butanone')THEN
3038  kij(i,j) = 0.042 ! no DD
3039  ! kij(i,j) = 0.027 ! DD non-polarizable
3040  ELSE IF(compna(i) == 'heptane'.AND.compna(j) == '2-pentanone')THEN
3041  kij(i,j) = 0.041 ! no DD
3042  ! kij(i,j) = 0.031 ! DD non-polarizable
3043  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == '3-pentanone')THEN
3044  kij(i,j) = 0.0
3045  ELSE IF(compna(i) == 'pentane'.AND.compna(j) == 'propanal')THEN
3046  ! kij(i,j) = 0.055 ! no DD
3047  kij(i,j) = 0.027 ! DD non-polarizable
3048  ! kij(i,j) = 0.026 ! DD polarizable 22
3049  ELSE IF(compna(i) == 'cyclohexane'.AND.compna(j) == 'propanal')THEN
3050  ! kij(i,j) = 0.06 ! no DD
3051  kij(i,j) = 0.036 ! DD non-polarizable
3052  kij(i,j) = 0.035 ! DD polarizable 22
3053  ELSE IF(compna(i) == 'heptane'.AND.compna(j) == 'butanal')THEN
3054  kij(i,j) = 0.041 ! no DD
3055  ! kij(i,j) = 0.025 ! DD non-polarizable
3056  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == 'thf')THEN
3057  kij(i,j) = 0.012 ! PCP-SAFT
3058  ELSE IF(compna(i) == 'octane'.AND.compna(j) == 'thf')THEN
3059  kij(i,j) = 0.012 ! PCP-SAFT
3060  ELSE IF(compna(i) == 'decane'.AND.compna(j) == 'thf')THEN
3061  kij(i,j) = 0.012 ! PCP-SAFT
3062  ELSE IF(compna(i) == 'toluene'.AND.compna(j) == 'dmso')THEN
3063  ! kij(i,j) = 0.025 ! no DD
3064  kij(i,j) = - 0.0105 ! DD non-polarizable
3065  ! kij(i,j) = - 0.019 ! DD polarizable
3066  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == 'acrylonitrile')THEN
3067  kij(i,j) = - 0.05 ! DD polarizable
3068  ELSE IF(compna(i) == 'heptane' .AND. compna(j) == 'butyronitrile')THEN
3069  kij(i,j) = - 0.002 ! DD polarizable 11
3070  kij(i,j) = 0.002 ! DD polarizable 22
3071  ELSE IF(compna(i) == '1-butene'.AND.compna(j) == 'dmf')THEN
3072  ! kij(i,j) = 0.04 ! no DD
3073  ! kij(i,j) = 0.004 ! DD non-polarizable
3074  kij(i,j) = 0.005 ! DD polarizable 22
3075  ELSE IF(compna(i) == 'cyclohexane'.AND.compna(j) == 'dmf')THEN
3076  kij(i,j) = 0.0135 ! DD polarizable 11
3077  kij(i,j) = 0.022 ! DD polarizable 22
3078  ELSE IF(compna(i) == 'ethylene'.AND.compna(j) == 'dmf')THEN
3079  ! kij(i,j) = - 0.0215 ! DD polarizable 11
3080  kij(i,j) = - 0.01 ! DD polarizable 22
3081  ELSE IF(compna(i) == 'nbutyl-ethanoate'.AND.compna(j) == 'dmf')THEN
3082  ! kij(i,j) = 0.016 ! no DD
3083  ! kij(i,j) = -0.01 ! DD non-polarizable
3084  kij(i,j) = - 0.015 ! DD polarizable 22
3085  ELSE IF(compna(i) == 'methylacetate' .AND. compna(j) == 'cyclohexane')THEN
3086  kij(i,j) = 0.066 ! PC-SAFT
3087  ! kij(i,j) = 0.061 ! PCP-SAFT
3088  ! kij(i,j) = 0.0625 ! PCIP-SAFT
3089  ELSE IF(compna(i) == 'methylacetate'.AND.compna(j) == 'decane')THEN
3090  kij(i,j) = 0.0625 ! PCIP-SAFT
3091  ELSE IF(compna(i) == 'methylacetate' .AND. compna(j) == 'methanol')THEN
3092  ! kij(i,j) = -0.07 ! PCIP-SAFT
3093  ELSE IF(compna(i) == 'pentane' .AND. compna(j) == 'propionitrile')THEN
3094  kij(i,j) = 0.0498
3095  IF (pol >= 1) kij(i,j) = -0.01
3096  IF (pol >= 2) kij(i,j) = -0.027
3097  ELSE IF(compna(i) == 'hexane' .AND. compna(j) == 'propionitrile')THEN
3098  kij(i,j) = 0.05
3099  IF (pol >= 1) kij(i,j) = 0.0
3100  IF (pol >= 2) kij(i,j) = -0.03
3101  ELSE IF(compna(i) == 'octane' .AND. compna(j) == 'propionitrile')THEN
3102  kij(i,j) = 0.0 ! DD polarizable 22
3103  ELSE IF(compna(i) == 'cyclohexane' .AND. compna(j) == 'nitromethane')THEN
3104  kij(i,j) = 0.14 ! no DD
3105  ! kij(i,j) = 0.07 ! DD non-polarizable
3106  ! kij(i,j) = 0.055 ! DD polarizable 22
3107  ELSE IF(compna(i) == 'cyclohexane' .AND. compna(j) == 'nitroethane')THEN
3108  ! kij(i,j) = 0.06 ! no DD
3109  kij(i,j) = 0.03 ! DD polarizable 22
3110  ELSE IF(compna(i) == 'acetone' .AND. compna(j) == 'nitromethane')THEN
3111  ! kij(i,j) = - 0.017 ! no DD
3112  kij(i,j) = - 0.021 ! DD non-polarizable
3113  ! kij(i,j) = - 0.023 ! DD polarizable 22
3114  ELSE IF(compna(i) == 'acetone' .AND. compna(j) == 'h2o')THEN
3115  kij(i,j) = - 0.2 ! PCP-SAFT (no cross-association)
3116  ELSE IF(compna(i) == 'methylcyclohexane' .AND. compna(j) == 'acetonitrile')THEN
3117  ! kij(i,j) = 0.09 ! no DD
3118  ! kij(i,j) = 0.033 ! DD non-polarizable
3119  ! kij(i,j) = 0.025 ! DD polarizable 22
3120  kij(i,j) = 0.04 ! DD polarizable 22 und my angepasst
3121  ELSE IF(compna(i) == 'ethylacetate' .AND. compna(j) == 'acetonitrile')THEN
3122  kij(i,j) = 0.007 ! no DD
3123  ! kij(i,j) = -0.045 ! DD polarizable 22
3124  ELSE IF(compna(i) == 'dimethyl-ether' .AND. compna(j) == 'propane')THEN
3125  ! kij(i,j) = 0.03 ! no DD
3126  kij(i,j) = 0.0225 ! DD non-polarizable
3127  ELSE IF(compna(i) == 'benzene' .AND. compna(j) == 'pentane')THEN
3128  ! kij(i,j) = 0.012968750 ! ohne QQ
3129  ! kij(i,j) = 0.004921875 ! mit QQ=5.6D (gefittet)
3130  ! kij(i,j) = -0.006406250 ! mit QQ=7.45D (Literatur)
3131  ELSE IF(compna(i) == 'benzene' .AND. compna(j) == 'heptane')THEN
3132  kij(i,j) = 0.01328125
3133  ! kij(i,j) = 0.0038
3134  ELSE IF(compna(i) == 'benzene' .AND. compna(j) == '1-hexene')THEN
3135  kij(i,j) = 0.0067
3136  ELSE IF(compna(i) == 'ethylene' .AND. compna(j) == 'co2') THEN
3137  kij(i,j) = 0.04
3138  kij(i,j) = -0.029
3139  ELSE IF(compna(i) == 'ethylene' .AND. compna(j) == 'vinylacetate') THEN
3140  kij(i,j) = - 0.013847
3141  ELSE IF(compna(i) == 'triacontane' .AND. compna(j) == 'ethylene') THEN
3142  kij(i,j) = 0.028
3143  ELSE IF(compna(i) == 'triacontane' .AND. compna(j) == 'methane')THEN
3144  ! kij(i,j) = 0.061953125 ! polyethylene parameters
3145  kij(i,j) = 0.039609375 ! param. by extrapolation of n-alkanes
3146  ELSE IF(compna(i) == 'tetracontane' .AND. compna(j) == 'methane')THEN
3147  ! kij(i,j) = 0.06515625 ! polyethylene parameters
3148  kij(i,j) = 0.04453125 ! param. by extrapolation of n-alkanes
3149  ! --- kij and lij adjusted -------
3150  ! kij(i,j) = 0.045786119 ! param. by extrapolation of n-alkanes
3151  ! lij(i,j) = +8.53466437d-4 ! param. by extrapolation of n-alkanes
3152  ELSE IF(compna(i) == 'eicosane' .AND. compna(j) == 'methane')THEN
3153  kij(i,j) = 0.0360134457445
3154  ELSE IF(compna(i) == 'tetracontane' .AND. compna(j) == 'methane')THEN
3155  kij(i,j) = 0.0360134457445 ! assumed equal to eicosane-C1
3156  ELSE IF(compna(i) == 'chlorobenzene' .AND. compna(j) == 'cyclohexane') THEN
3157  kij(i,j) = 0.013
3158  ELSE IF(compna(i) == 'chloroethane' .AND. compna(j) == 'butane')THEN
3159  kij(i,j) = 0.025
3160  ELSE IF(compna(i) == 'tetrachloromethane' .AND. compna(j) == '2-methylpentane') THEN
3161  kij(i,j) = 0.0070105
3162  ELSE IF(compna(i) == 'tetrachloromethane' .AND. compna(j) == 'hexane') THEN
3163  kij(i,j) = 0.004
3164  ELSE IF(compna(i) == 'hydrogen' .AND. compna(j) == 'hexane') THEN
3165  kij(i,j) = 0.1501
3166  ELSE IF(compna(i) == 'ethanol' .AND. compna(j) == 'co2') THEN
3167  ! kij(i,j) = -0.08
3168  ELSE IF(compna(i) == 'ethanol' .AND. compna(j) == 'propane') THEN
3169  kij(i,j) = - 0.07
3170  ELSE IF(compna(i) == 'ethanol' .AND. compna(j) == 'ethane') THEN
3171  kij(i,j) = 0.0
3172  ELSE IF(compna(i) == 'ethanol' .AND. compna(j) == 'butane') THEN
3173  kij(i,j) = 0.028
3174  kij(i,j) = 0.016
3175  ELSE IF(compna(i) == 'ethanol' .AND. compna(j) == 'cyclohexane')THEN
3176  kij(i,j) = 0.037
3177  ELSE IF(compna(i) == 'ethanol' .AND. compna(j) == '2-methylpentane') THEN
3178  kij(i,j) = 0.028
3179  ELSE IF(compna(i) == 'ethanol' .AND. compna(j) == '1-octanol')THEN
3180  kij(i,j) = 0.06
3181  ELSE IF(compna(i) == 'methanol' .AND. compna(j) == 'cyclohexane') THEN
3182  kij(i,j) = 0.0508
3183  ! kij(i,j) = 0.03
3184  ELSE IF(compna(i) == 'methanol' .AND. compna(j) == 'heptane')THEN
3185  kij(i,j) = 0.034
3186  ELSE IF(compna(i) == 'methanol' .AND. compna(j) == 'decane')THEN
3187  ! kij(i,j) = 0.042 ! PC-SAFT
3188  ! kij(i,j) = 0.011 ! PCP-SAFT
3189  kij(i,j) = 0.000 ! PCIP-SAFT
3190  ELSE IF(compna(i) == 'methanol' .AND. compna(j) == 'isobutane') THEN
3191  kij(i,j) = 0.051
3192  ELSE IF(compna(i) == 'methanol' .AND. compna(j) == '1-octanol') THEN
3193  kij(i,j) = 0.02
3194  ELSE IF(compna(i) == '1-butanol' .AND. compna(j) == 'butane') THEN
3195  kij(i,j) = 0.015
3196  ELSE IF(compna(i) == '1-nonanol' .AND. compna(j) == 'co2') THEN
3197  kij(i,j) = 0.076
3198  kij(i,j) = 0.01443
3199  ELSE IF(compna(i) == '1-propanol' .AND. compna(j) == 'ethylbenzene') THEN
3200  kij(i,j) = 0.0251757813
3201  ELSE IF(compna(i) == 'decane'.AND.compna(j) == 'ethanol') THEN
3202  kij(i,j) = 0.085
3203  ELSE IF(compna(i) == 'hexane'.AND.compna(j) == '1-chlorobutane') THEN
3204  kij(i,j) = 0.017
3205  ELSE IF(compna(i) == 'aniline'.AND.compna(j) == 'methylcyclopentane') THEN
3206  kij(i,j) = 0.0153
3207  ELSE IF(compna(i) == 'heptane'.AND.compna(j) == 'nbutyl-ethanoate')THEN
3208  kij(i,j) = 0.027
3209  ELSE IF(compna(i) == '1-hexene'.AND.compna(j) == 'ethyl-ethanoate')THEN
3210  kij(i,j) = 0.026
3211  ELSE IF(compna(i) == 'co2'.AND.compna(j) == '1-butanol')THEN
3212  ! kij(i,j) = 0.075
3213  kij(i,j) = 0.0
3214  ELSE IF(compna(i) == 'acrylic-acid'.AND.compna(j) == 'co2')THEN
3215  kij(i,j) = -0.1
3216  ELSE IF(compna(i) == 'bmim'.AND.compna(j) == 'hydrogen')THEN
3217  lij(i,j) = 0.55 !!!!! Lij not kij !!!!
3218  ELSE IF(compna(i) == 'bf4'.AND.compna(j) == 'hydrogen')THEN
3219  lij(i,j) = 0.55 !!!!! Lij not kij !!!!
3220  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'butane')THEN !K.R.Hall FPE 2007 254 112-125 kij=0.1850
3221  kij(i,j) = -0.07
3222  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == '1-butanol')THEN
3223  kij(i,j) = -0.12
3224  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'aniline')THEN
3225  kij(i,j) = 0.0
3226  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'methanol') THEN
3227  kij(i,j) = -0.02
3228  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'ethanol') THEN
3229  kij(i,j) = -0.027
3230  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'styrene') THEN
3231  kij(i,j) = 0.1
3232  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'propyl-ethanoate') THEN
3233  kij(i,j) = -0.205
3234  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'ethyl-propanoate') THEN
3235  kij(i,j) = 0.0
3236  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == '1-pentanol') THEN
3237  kij(i,j) = 0.0165
3238  ! kij(i,j) = 0.0294
3239  ! kij(i,j) = -0.082
3240  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'methane') THEN
3241  ! kij(i,j) = +0.06
3242  kij(i,j) = -0.08
3243  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'propane') THEN
3244  kij(i,j) = 0.02
3245  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'hexane') THEN
3246  kij(i,j) = -0.02
3247  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'acetic-acid') THEN
3248  kij(i,j) = -0.0
3249  ELSE IF(compna(i) == 'h2o'.AND.compna(j) == 'co2') THEN
3250  if (pol == 0) kij(i,j) = 0.0030625 ! for T=50C, according to X.Tang
3251  stop 5 ! very T-dependent
3252  ELSE IF(compna(i) == 'toluene'.AND.compna(j) == 'acetic-acid') THEN
3253  kij(i,j) = -0.1
3254  ELSE IF(compna(i) == 'caproic-acid'.AND.compna(j) == 'cyclohexane') THEN
3255  kij(i,j) = 0.041531
3256  ELSE IF(compna(i) == '1-octanol'.AND.compna(j) == 'h2o')THEN
3257  kij(i,j) = 0.07
3258  ELSE IF(compna(i) == 'acetone'.AND.compna(j) == 'benzene')THEN
3259  kij(i,j) = 0.02132466 ! PC-SAFT
3260  ! kij(i,j) = 0.01495148 ! PCP-SAFT
3261  ! kij(i,j) = -0.00735575 ! PCP-SAFT but non-polar benzene
3262  ELSE IF(compna(i) == '1-propanol'.AND.compna(j) == 'benzene')THEN
3263  kij(i,j) = 0.02017
3264  ELSE IF(compna(i) == '2-propanol'.AND.compna(j) == 'benzene')THEN
3265  kij(i,j) = 0.021386
3266  ELSE IF(compna(i) == '1-pentanol'.AND.compna(j) == 'benzene')THEN
3267  kij(i,j) = 0.0129638671875
3268  ELSE IF(compna(i) == 'CH2F2' .AND. compna(j) == 'co2') THEN
3269  kij(i,j) = 2.2548828125e-2
3270  ELSE IF(compna(i) == 'dmso' .AND. compna(j) == 'co2') THEN
3271  kij(i,j) = -0.00
3272  ELSE IF(compna(i) == 'dmf'.AND.compna(j) == 'h2o')THEN
3273  kij(i,j) = -0.0
3274  ELSE IF(compna(i) == 'decane'.AND.compna(j) == 'h2o')THEN
3275  kij(i,j) = 0.11
3276  ELSE IF(compna(i) == '11difluoroethane'.AND.compna(j) == 'HF')THEN
3277  kij(i,j) = 0.032 ! association: eps_kij = 0.16
3278  ELSE IF(compna(i) == '11difluoroethane'.AND.compna(j) == 'co2')THEN
3279  kij(i,j) = -0.004 ! PCP-SAFT (taken from simulation)
3280  ELSE IF(compna(i) == 'difluoromethane'.AND.compna(j) == 'HF')THEN
3281  kij(i,j) = -0.02
3282  ELSE IF(compna(i) == 'naphthalene'.AND.compna(j) == 'co2')THEN
3283  kij(i,j) = 0.137 ! angepasst an SVLE-Linie (tradition.CO2-Parameter)
3284  kij(i,j) = 0.09 ! angepasst an SVLE-Linie (tradition.CO2-Parameter)
3285  ELSE IF(compna(i) == 'pg2'.AND.compna(j) == 'methanol')THEN
3286  kij(i,j) = 0.03
3287  ELSE IF(compna(i) == 'pg2'.AND.compna(j) == 'co2')THEN
3288  ! kij(i,j) = 0.05
3289  ELSE IF(compna(i) == 'PCH5'.AND.compna(j) == 'co2')THEN
3290  ! kij(i,j) = -0.047
3291  kij(i,j) = +0.055
3292  ! kij(i,j) = +0.036
3293  ELSE
3294  END IF
3295  kij(j,i) = kij(i,j)
3296  lij(j,i) = -lij(i,j)
3297 
3298  END DO
3299 END DO
3300 
3301 END SUBROUTINE pcsaft_par
3302 
3303 
3304 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3305 ! SUBROUTINE init_vars
3306 !
3307 ! This subroutine writes variables from an array "val_init" to the
3308 ! system-variables. Those variables
3309 ! include some specifications but also some starting values for a
3310 ! phase equilibrium calculation. (val_init stands for 'initial value')
3311 
3312 ! The array comprises the following elements
3313 ! element 0 density of third phase
3314 ! element 1 density of first phase
3315 ! element 2 density of second phase
3316 ! element 3 temperature [K]
3317 ! element 4 pressure [Pa]
3318 ! element 5,..(5+NCOMP) mole-fraction of comp. i in log. from (phase 1)
3319 ! element ... mole-fraction of comp. i in log. from (phase 2)
3320 ! element ... mole-fraction of comp. i in log. from (phase 3)
3321 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3322 !
3323  SUBROUTINE init_vars
3324 !
3325  USE basic_variables
3326  IMPLICIT NONE
3327 !
3328  INTEGER :: i, ph
3329 ! ----------------------------------------------------------------------
3330 
3331 densta(3)=val_init(0)
3332 densta(1)=val_init(1)
3333 densta(2)=val_init(2)
3334 t = val_init(3)
3335 p = val_init(4)
3336 DO ph = 1,nphas
3337  DO i = 1,ncomp
3338  lnx(ph,i) = val_init(4+i+(ph-1)*ncomp)
3339  END DO
3340 END DO
3341 
3342 END SUBROUTINE init_vars
3343 
3344 
3345 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3346 ! SUBROUTINE converged
3347 !
3348 ! Once a converged solution for an equilibrium calculation is found,
3349 ! this subroutine writes variables to an array "val_conv".
3350 ! (= short for converged values)
3351 ! The array comprises the following elements
3352 ! element 0 density of third phase
3353 ! element 1 density of first phase
3354 ! element 2 density of second phase
3355 ! element 3 temperature [K]
3356 ! element 4 pressure [Pa]
3357 ! element 5,..(4+NCOMP) mole-fraction of comp. i in log. from (phase 1)
3358 ! element ... mole-fraction of comp. i in log. from (phase 2)
3359 ! element ... mole-fraction of comp. i in log. from (phase 3)
3360 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3361 !
3362  SUBROUTINE converged
3363 !
3364  USE basic_variables
3365  IMPLICIT NONE
3366 !
3367  INTEGER :: i, ph
3368 ! ----------------------------------------------------------------------
3369 
3370 val_conv(0) = dense(3)
3371 val_conv(1) = dense(1)
3372 val_conv(2) = dense(2)
3373 val_conv(3) = t
3374 val_conv(4) = p
3375 DO ph = 1,nphas
3376  DO i = 1,ncomp
3377  val_conv(4+i+(ph-1)*ncomp) = lnx(ph,i)
3378  END DO
3379 END DO
3380 
3381 END SUBROUTINE converged
3382 
3383 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3384 ! SUBROUTINE PERTURBATION_PARAMETER
3385 !
3386 ! calculates density-independent parameters of the equation of state.
3387 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3388 !
3389  SUBROUTINE perturbation_parameter
3390 !
3391  USE parameters, ONLY: pi, kbol, rgas, nav, tau
3392  USE eos_variables
3393  USE eos_constants
3394  IMPLICIT NONE
3395 !
3396 ! --- local variables --------------------------------------------------
3397  INTEGER :: i, j, k, l, m, no
3398  LOGICAL :: assoc, qudpole, dipole
3399  REAL :: m_mean
3400  REAL, DIMENSION(nc) :: v00, v0, d00, u
3401  REAL, DIMENSION(nc,nc,nsite,nsite) :: eps_hb
3402  REAL, DIMENSION(nc,nc) :: kap_hb
3403  REAL :: zmr, nmr
3404  REAL :: eps_kij, k_kij
3405 ! ----------------------------------------------------------------------
3406 
3407 ! ----------------------------------------------------------------------
3408 ! pure component parameters
3409 ! ----------------------------------------------------------------------
3410 DO i = 1, ncomp
3411  u(i) = parame(i,3) * (1.0 + parame(i,4)/t)
3412  mseg(i) = parame(i,1)
3413  IF (eos == 0) THEN
3414  v00(i) = parame(i,2)
3415  v0(i) = v00(i)*(1.0-0.12*exp(-3.0*parame(i,3)/t))**3
3416  d00(i) = (1.d30/1.d6 *tau *v00(i)*6.0/pi /nav)**(1.0/3.0)
3417  dhs(i) = d00(i)*(1.0-0.12*exp(-3.0*parame(i,3)/t))
3418  ELSE
3419  dhs(i) = parame(i,2)*(1.0-0.12*exp(-3.0*parame(i,3)/t))
3420  d00(i) = parame(i,2)
3421  END IF
3422 END DO
3423 
3424 
3425 ! ----------------------------------------------------------------------
3426 ! combination rules
3427 ! ----------------------------------------------------------------------
3428 DO i = 1, ncomp
3429  DO j = 1, ncomp
3430  sig_ij(i,j) = 0.5 * ( d00(i) + d00(j) )
3431  uij(i,j) = ( 1.0 - kij(i,j) ) * ( u(i)*u(j) )**0.5
3432  vij(i,j) = ( 0.5*( v0(i)**(1.0/3.0) + v0(j)**(1.0/3.0) ) )**3
3433  END DO
3434 END DO
3435 
3436 
3437 ! ----------------------------------------------------------------------
3438 ! abbreviations
3439 ! ----------------------------------------------------------------------
3440 z0t = pi / 6.0 * sum( x(1:ncomp) * mseg(1:ncomp) )
3441 z1t = pi / 6.0 * sum( x(1:ncomp) * mseg(1:ncomp) * dhs(1:ncomp) )
3442 z2t = pi / 6.0 * sum( x(1:ncomp) * mseg(1:ncomp) * dhs(1:ncomp)**2 )
3443 z3t = pi / 6.0 * sum( x(1:ncomp) * mseg(1:ncomp) * dhs(1:ncomp)**3 )
3444 
3445 m_mean = z0t/(pi/6.0)
3446 
3447 DO i = 1, ncomp
3448  DO j = 1, ncomp
3449  dij_ab(i,j) = dhs(i)*dhs(j) / ( dhs(i) + dhs(j) )
3450  END DO
3451 END DO
3452 
3453 ! ----------------------------------------------------------------------
3454 ! dispersion term parameters for chain molecules
3455 ! ----------------------------------------------------------------------
3456 DO m = 0, 6
3457  apar(m) = ap(m,1) + (1.0-1.0/m_mean)*ap(m,2) &
3458  + (1.0-1.0/m_mean)*(1.0-2.0/m_mean)*ap(m,3)
3459  bpar(m) = bp(m,1) + (1.0-1.0/m_mean)*bp(m,2) &
3460  + (1.0-1.0/m_mean)*(1.0-2.0/m_mean)*bp(m,3)
3461 END DO
3462 
3463 
3464 ! ----------------------------------------------------------------------
3465 ! van der Waals mixing rules for perturbation terms
3466 ! ----------------------------------------------------------------------
3467 order1 = 0.0
3468 order2 = 0.0
3469 DO i = 1, ncomp
3470  DO j = 1, ncomp
3471  order1 = order1 + x(i)*x(j)* mseg(i)*mseg(j)*sig_ij(i,j)**3 * uij(i,j)/t
3472  order2 = order2 + x(i)*x(j)* mseg(i)*mseg(j)*sig_ij(i,j)**3 * (uij(i,j)/t)**2
3473  END DO
3474 END DO
3475 
3476 
3477 ! ----------------------------------------------------------------------
3478 ! SAFT parameters
3479 ! ----------------------------------------------------------------------
3480 IF (eos == 0) THEN
3481  zmr = 0.0
3482  nmr = 0.0
3483  DO i = 1, ncomp
3484  DO j = 1, ncomp
3485  zmr = zmr + x(i)*x(j)*mseg(i)*mseg(j)*vij(i,j)*uij(i,j)
3486  nmr = nmr + x(i)*x(j)*mseg(i)*mseg(j)*vij(i,j)
3487  END DO
3488  END DO
3489  um = zmr / nmr
3490 END IF
3491 
3492 
3493 
3494 ! ----------------------------------------------------------------------
3495 ! association and polar parameters
3496 ! ----------------------------------------------------------------------
3497 assoc = .false.
3498 qudpole = .false.
3499 dipole = .false.
3500 DO i = 1, ncomp
3501  IF (nint(parame(i,12)) /= 0) assoc = .true.
3502  IF (parame(i,7) /= 0.0) qudpole = .true.
3503  IF (parame(i,6) /= 0.0) dipole = .true.
3504 END DO
3505 
3506 ! --- dipole and quadrupole constants ----------------------------------
3507 IF (qudpole) CALL qq_const ( qqp2, qqp3, qqp4 )
3508 IF (dipole) CALL dd_const ( ddp2, ddp3, ddp4 )
3509 IF (dipole .AND. qudpole) CALL dq_const ( dqp2, dqp3, dqp4 )
3510 
3511 
3512 ! --- TPT-1-association parameters -------------------------------------
3513 IF (assoc) THEN
3514 
3515  eps_kij = 0.0
3516  k_kij = 0.0
3517 
3518  DO i = 1, ncomp
3519  IF (nint(parame(i,12)) /= 0) THEN
3520  nhb_typ(i) = nint(parame(i,12))
3521  kap_hb(i,i) = parame(i,13)
3522  no = 0
3523  DO j = 1, nhb_typ(i)
3524  DO k = 1, nhb_typ(i)
3525  eps_hb(i,i,j,k) = parame(i,(14+no))
3526  no=no+1
3527  END DO
3528  END DO
3529  DO j = 1, nhb_typ(i)
3530  nhb_no(i,j) = parame(i,(14+no))
3531  no=no+1
3532  END DO
3533  ELSE
3534  nhb_typ(i) = 0
3535  kap_hb(i,i)= 0.0
3536  DO k = 1, nsite
3537  DO l = 1, nsite
3538  eps_hb(i,i,k,l) = 0.0
3539  END DO
3540  END DO
3541  END IF
3542  END DO
3543 
3544  DO i = 1, ncomp
3545  DO j = 1, ncomp
3546  IF (i /= j .AND. (nhb_typ(i) /= 0 .AND. nhb_typ(j) /= 0)) THEN
3547  kap_hb(i,j)= (kap_hb(i,i)*kap_hb(j,j))**0.5 &
3548  *((parame(i,2)*parame(j,2))**3 )**0.5 &
3549  /(0.5*(parame(i,2)+parame(j,2)))**3
3550  kap_hb(i,j)= kap_hb(i,j)*(1.0-k_kij)
3551  DO k = 1, nhb_typ(i)
3552  DO l = 1, nhb_typ(j)
3553  IF (k /= l) THEN
3554  eps_hb(i,j,k,l) = (eps_hb(i,i,k,l)+eps_hb(j,j,l,k))/2.0
3555  eps_hb(i,j,k,l) = eps_hb(i,j,k,l)*(1.0-eps_kij)
3556  END IF
3557  END DO
3558  END DO
3559  END IF
3560  END DO
3561  END DO
3562  IF (nhb_typ(1) == 3) THEN
3563 ! write(*,*)'eps_hb manuell eingegeben'
3564  eps_hb(1,2,3,1) = 0.5*(eps_hb(1,1,3,1)+eps_hb(2,2,1,2))
3565  eps_hb(2,1,1,3) = eps_hb(1,2,3,1)
3566  END IF
3567  IF (nhb_typ(2) == 3) THEN
3568  eps_hb(2,1,3,1) = 0.5*(eps_hb(2,2,3,1)+eps_hb(1,1,1,2))
3569  eps_hb(1,2,1,3) = eps_hb(2,1,3,1)
3570  END IF
3571 
3572  DO i = 1, ncomp
3573  DO k = 1, nhb_typ(i)
3574  DO j = 1, ncomp
3575  DO l = 1, nhb_typ(j)
3576  ass_d(i,j,k,l) = kap_hb(i,j) *sig_ij(i,j)**3 *(exp(eps_hb(i,j,k,l)/t)-1.0)
3577  END DO
3578  END DO
3579  END DO
3580  END DO
3581 
3582 END IF
3583 
3584 END SUBROUTINE perturbation_parameter
3585 
3586 
3587 
3588 
3589 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3590 ! SUBROUTINE OUTPUT
3591 !
3592 ! The purpose of this subroutine is obvious.
3593 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3594 !
3595  SUBROUTINE output
3596 !
3597  USE basic_variables
3598  IMPLICIT NONE
3599 !
3600 ! ----------------------------------------------------------------------
3601  INTEGER :: i
3602  CHARACTER (LEN=4) :: t_ind
3603  CHARACTER (LEN=4) :: p_ind
3604  CHARACTER (LEN=4) :: char_ncomp
3605  REAL :: density(np),w(np,nc)
3606 ! ----------------------------------------------------------------------
3607 
3608  CALL si_dens (density,w)
3609 
3610  IF (u_in_p == 1.e5) THEN
3611  p_ind = ' bar'
3612  ELSE IF (u_in_p == 1.e2) THEN
3613  p_ind = 'mbar'
3614  ELSE IF (u_in_p == 1.e6) THEN
3615  p_ind = ' MPa'
3616  ELSE IF (u_in_p == 1.e3) THEN
3617  p_ind = ' kPa'
3618  ELSE
3619  p_ind = ' Pa'
3620  END IF
3621  IF (u_in_t == 273.15) THEN
3622  t_ind = ' C'
3623  ELSE
3624  t_ind = ' K'
3625  END IF
3626 
3627  WRITE(*,*) '--------------------------------------------------'
3628  WRITE (char_ncomp,'(I3)') ncomp
3629  WRITE(*,'(t2,a,f7.2,2a,f9.4,a)') ' T =',t-u_out_t,t_ind &
3630  ,' P =',p/u_out_p,p_ind
3631  WRITE(*,'(t15,4(a12,1x),10x,a)') (compna(i),i=1,ncomp)
3632  WRITE(*,'(2x,a,'//char_ncomp//'(g13.6,1x))') 'PHASE I w', (w(1,i),i=1,ncomp)
3633  WRITE(*,'(2x,a,'//char_ncomp//'(g13.6,1x))') 'PHASE II w', (w(2,i),i=1,ncomp)
3634  WRITE(*,'(2x,a,'//char_ncomp//'(g13.6,1x))') 'PHASE I x', (exp(lnx(1,i)),i=1,ncomp)
3635  WRITE(*,'(2x,a,'//char_ncomp//'(g13.6,1x))') 'PHASE II x', (exp(lnx(2,i)),i=1,ncomp)
3636  WRITE(*,'(2x,a,2(g13.6,1x))') 'DENSITY ', density(1),density(2)
3637 
3638  !-----output to files--------------------------------------------------
3639  IF (ncomp == 1) THEN
3640  WRITE (40,'(7(2x,f18.8))') t-u_out_t, p/u_out_p, &
3641  density(1), density(2),h_lv,cpres(1),cpres(2)
3642  ! & ,(enthal(2)-enthal(1))/mm(1)
3643  ! WRITE (40,'(4(2x,f15.8))') t, p, 0.3107*dense(1)
3644  ! & /0.1617*(0.689+0.311*(T/1.328)**0.3674),0.3107
3645  ! & *dense(2)/0.1617*(0.689+0.311*(T/1.328)**0.3674)
3646  ELSE IF (ncomp == 2) THEN
3647  WRITE (40,'(12(2x,G15.8))') 1.0-xi(1,1),1.0-xi(2,1), &
3648  w(1,1),w(2,1),t-u_out_t, p/u_out_p, density(1),density(2) &
3649  ,enthal(1),enthal(2),cpres(1),cpres(2)
3650  ELSE IF (ncomp == 3) THEN
3651  WRITE (40,'(10(2x,f15.8))') xi(1,1),xi(1,2),xi(1,3),xi(2,1),xi(2,2), &
3652  xi(2,3),t-u_out_t, p/u_out_p, density(1),density(2)
3653  END IF
3654 
3655  END SUBROUTINE output
3656 
3657 
3658 
3659 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3660 ! SUBROUTINE neutr_charge
3661 !
3662 ! This subroutine is called for electrolye solutions, where a
3663 ! neutral overall-charge has to be enforced in all phases. The basic
3664 ! philosophy is similar to the above described routine X_SUMMATION.
3665 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3666 !
3667  SUBROUTINE neutr_charge(i)
3668 !
3669  USE basic_variables
3670  IMPLICIT NONE
3671 !
3672 ! ----------------------------------------------------------------------
3673  INTEGER, INTENT(IN) :: i
3674 !
3675 ! ----------------------------------------------------------------------
3676  INTEGER :: comp_e, ph_e
3677  REAL :: sum_c
3678  CHARACTER (LEN=2) :: phasno
3679  CHARACTER (LEN=2) :: compno
3680 ! ----------------------------------------------------------------------
3681 
3682 phasno = sum_rel(i)(2:2)
3683 READ(phasno,*) ph_e
3684 compno = sum_rel(i)(3:3)
3685 READ(compno,*) comp_e
3686 
3687 sum_c = 0.0
3688 write (*,*) 'there must be an error in neutr_charge'
3689 stop 5
3690 ! there is an error in the following passage. The index i is an
3691 ! argument to this subroutine - I guess it is INTENT(IN), so the
3692 ! index in the following loop can not be i.
3693 !
3694 ! I have commented the loop until I check the code.
3695 !DO i=1,ncomp
3696 ! IF ( comp_e /= i .AND. parame(i,10) /= 0.0) &
3697 ! sum_c = sum_c + xi(ph_e,i)*parame(i,10)
3698 !END DO
3699 
3700 xi(ph_e,comp_e) = - sum_c
3701 IF (xi(ph_e,comp_e) < 0.0) xi(ph_e,comp_e)=0.0
3702 IF (xi(ph_e,comp_e) /= 0.0) THEN
3703  lnx(ph_e,comp_e) = log(xi(ph_e,comp_e))
3704 ELSE
3705  lnx(ph_e,comp_e) = -100000.0
3706 END IF
3707 
3708 ! xi(2,1) = xi(2,2)
3709 ! IF (xi(2,1).NE.0.0) lnx(2,1) = LOG(xi(2,1))
3710 
3711 END SUBROUTINE neutr_charge
3712 
3713 
3714 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3715 !
3716 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3717 !
3718  SUBROUTINE flash_sum
3719 !
3720  USE basic_variables
3721  IMPLICIT NONE
3722 !
3723  INTEGER :: i, j, ph_i, phase1, phase2
3724 ! ----------------------------------------------------------------------
3725 
3726 phase1=0
3727 phase2=0
3728 DO j=1,ncomp
3729  IF (it(j)(2:2) == '1') phase1=phase1+1
3730  IF (it(j)(2:2) == '2') phase2=phase2+1
3731 END DO
3732 
3733 IF (phase1 == ncomp-1) THEN
3734  ph_i = 1
3735 ELSE IF (phase2 == ncomp-1) THEN
3736  ph_i = 2
3737 ELSE
3738  WRITE (*,*) ' FLASH_SUM: undefined flash-case'
3739  stop
3740 END IF
3741 
3742 
3743 
3744 IF (ph_i == 1) THEN
3745  DO i=1,ncomp
3746  IF (alpha > dmin1(1.0,xif(i)/xi(1,i), &
3747  (xif(i)-1.0)/(xi(1,i)-1.0),alpha)) THEN
3748  WRITE (*,*) ' FLASH_SUM: exeeded 1st alpha-bound'
3749  alpha=dmin1(1.0,xif(i)/xi(1,i),(xif(i)-1.0)/(xi(1,i)-1.0))
3750  END IF
3751  END DO
3752  DO i=1,ncomp
3753  xi(2,i) = ( xif(i) - alpha*xi(1,i) ) / (1.0-alpha)
3754  IF (xi(2,i) > 0.0) THEN
3755  lnx(2,i) = log(xi(2,i))
3756  ELSE
3757  xi(2,i) = 0.0
3758  lnx(2,i) = -100000.0
3759  END IF
3760  END DO
3761 ELSE IF (ph_i == 2) THEN
3762  DO i=1,ncomp
3763  IF (alpha > dmax1(0.0,(xif(i)-xi(2,i))/(1.0-xi(2,i)), &
3764  1.0-xif(i)/xi(2,i),alpha)) THEN
3765  WRITE (*,*) ' FLASH_SUM: exeeded 2nd alpha-bound'
3766  WRITE (*,*) 0.0,(xif(i)-xi(2,i))/(1.0-xi(2,i)), 1.0-xif(i)/xi(2,i)
3767  alpha=dmax1(0.0,(xif(i)-xi(2,i))/(1.0-xi(2,i)), 1.0-xif(i)/xi(2,i))
3768  END IF
3769  END DO
3770  DO i=1,ncomp
3771  xi(1,i) = ( xif(i) - (1.0-alpha)*xi(2,i) ) / alpha
3772 ! write (*,*) 'x1,i',xi(1,i),xi(2,i),alpha
3773  IF (xi(1,i) > 0.0) THEN
3774  lnx(1,i) = log(xi(1,i))
3775  ELSE
3776  xi(1,i) = 0.0
3777  lnx(1,i) = -100000.0
3778  END IF
3779  END DO
3780 END IF
3781 
3782 ! pause
3783 
3784 RETURN
3785 END SUBROUTINE flash_sum
3786 
3787 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3788 ! SUBROUTINE flash_alpha
3789 !
3790 ! This subroutine calculates all molefractions of one phase
3791 ! from a component balance. What is needed for this calculation
3792 ! are all molefractions of the other phase (nphas=2, so far)
3793 ! and the phase fraction alpha.
3794 ! Alpha is calculated from the mole fraction
3795 ! of component {sum_rel(j)(3:3)}. If for example sum_rel(2)='fl3',
3796 ! then the alpha is determined from the molefraction of comp. 3 and
3797 ! all molefractions of one phase are calculated using that alpha-value.
3798 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3799 !
3800  SUBROUTINE flash_alpha
3801 !
3802  USE basic_variables
3803  IMPLICIT NONE
3804 !
3805 ! ----------------------------------------------------------------------
3806  INTEGER :: i, j, comp_i, phase1, phase2
3807  CHARACTER (LEN=2) :: compno
3808 ! ----------------------------------------------------------------------
3809 
3810 
3811 ! ----------------------------------------------------------------------
3812 ! first calculate the phase fraction alpha from a known composition
3813 ! of component sum_rel(j)(3:3).
3814 ! ----------------------------------------------------------------------
3815 
3816 DO j = 1, nphas
3817  IF ( sum_rel(j)(1:2) == 'fl' ) THEN
3818  compno = sum_rel(j)(3:3)
3819  READ(compno,*) comp_i
3820  IF ( (xi(1,comp_i)-xi(2,comp_i)) /= 0.0 ) THEN
3821  alpha = (xif(comp_i)-xi(2,comp_i)) / (xi(1,comp_i)-xi(2,comp_i))
3822  write (*,*) 'flsh',(xif(comp_i)-xi(2,comp_i)),(xi(1,comp_i)-xi(2,comp_i))
3823  ELSE
3824  alpha = 0.5
3825  WRITE (*,*) 'FLASH_ALPHA:error in calc. of phase fraction',comp_i
3826  END IF
3827  ! IF (alpha <= 0.0 .OR. alpha >= 1.0) WRITE(*,*) 'FLASH_ALPHA: error',alpha
3828  IF (alpha > 1.0) alpha = 1.0
3829  IF (alpha < 0.0) alpha = 0.0
3830  END IF
3831 END DO
3832 
3833 ! ----------------------------------------------------------------------
3834 ! determine which phase is fully determined by iterated molefractions (+ summation relation)
3835 ! ----------------------------------------------------------------------
3836 phase1 = 0
3837 phase2 = 0
3838 DO i = 1, ncomp
3839  IF ( it(i)(2:2) == '1' ) phase1 = phase1 + 1
3840  IF ( it(i)(2:2) == '2' ) phase2 = phase2 + 1
3841 END DO
3842 DO i = 1, ncomp
3843  IF ( sum_rel(i)(2:2) == '1' ) phase1 = phase1 + 1
3844  IF ( sum_rel(i)(2:2) == '2' ) phase2 = phase2 + 1
3845 END DO
3846 
3847 
3848 IF ( phase1 == ncomp ) THEN
3849  ! --------------------------------------------------------------------
3850  ! phase 1 is defined by iterated molefractions + summation relation
3851  ! phase 2 is determined from componennt balance (using alpha)
3852  ! --------------------------------------------------------------------
3853  IF ( alpha == 1.0 ) alpha = 1.0 - 1.0e-10
3854  DO i=1,ncomp
3855  xi(2,i) = ( xif(i) - alpha*xi(1,i) ) / (1.0-alpha)
3856  IF ( xi(2,i) < 0.0 ) xi(2,i) = 0.0
3857  IF ( xi(2,i) > 1.0 ) xi(2,i) = 1.0
3858  IF ( xi(2,i) /= 0.0 ) THEN
3859  lnx(2,i) = log( xi(2,i) )
3860  ELSE
3861  lnx(2,i) = -100000.0
3862  END IF
3863  write (*,*) 'fl_cal ph=2',i,lnx(2,i),xi(2,i)
3864  END DO
3865 ELSE IF ( phase2 == ncomp ) THEN
3866  ! --------------------------------------------------------------------
3867  ! phase 2 is defined by iterated molefractions + summation relation
3868  ! phase 1 is determined from componennt balance (using alpha)
3869  ! --------------------------------------------------------------------
3870  DO i = 1, ncomp
3871  xi(1,i) = ( xif(i) - (1.0-alpha)*xi(2,i) ) /alpha
3872  IF ( xi(1,i) < 0.0 ) xi(1,i) = 0.0
3873  IF ( xi(1,i) > 1.0 ) xi(1,i) = 1.0
3874  IF ( xi(1,i) /= 0.0 ) THEN
3875  lnx(1,i) = log( xi(1,i) )
3876  ELSE
3877  lnx(1,i) = -100000.0
3878  END IF
3879  write (*,*) 'fl_cal ph=1',i,lnx(1,i),xi(1,i),alpha
3880  END DO
3881 ELSE
3882  WRITE (*,*) ' FLASH_ALPHA: undefined flash-case'
3883  stop
3884 END IF
3885 
3886 END SUBROUTINE flash_alpha
3887 
3888 
3889 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3890 ! SUBROUTINE SI_DENS (density,w)
3891 !
3892 ! This subroutine calculates the (macroskopic) fluid-density in
3893 ! units [kg/m3] from the dimensionless density (eta=zeta3).
3894 ! Further, mass fractions are calculated from mole fractions.
3895 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3896 !
3897  SUBROUTINE si_dens (density,w)
3898 !
3899  USE parameters, ONLY: pi, nav, tau
3900  USE basic_variables
3901  IMPLICIT NONE
3902 !
3903 ! ----------------------------------------------------------------------
3904  REAL, INTENT(OUT) :: density(np)
3905  REAL, INTENT(OUT) :: w(np,nc)
3906 !
3907 ! ----------------------------------------------------------------------
3908  INTEGER :: i, ph
3909  REAL :: mm_mean, rho, z3t
3910  REAL :: dhs(nc), d00(nc), t_p, pcon, l_st
3911 ! ----------------------------------------------------------------------
3912 
3913 
3914 DO i = 1,ncomp
3915  IF (eos == 1) THEN
3916  dhs(i) = parame(i,2) * ( 1.0 - 0.12 *exp( -3.0*parame(i,3)/t ) )
3917  ELSE IF (eos == 0) THEN
3918  d00(i) = ( 1.e30/1.e6*tau*parame(i,2)*6.0/pi/nav )**(1.0/3.0)
3919  dhs(i) = d00(i) * ( 1.0 - 0.12 *exp( -3.0*parame(i,3)/t ) )
3920  ELSE IF (eos == 4) THEN
3921  dhs(i) = ( 0.1617/0.3107 / ( 0.689+0.311*(t/parame(i,3)/1.328)**0.3674 ) &
3922  / ( pi/6.0 ) )**(1.0/3.0) * parame(i,2)
3923  ELSE IF (eos == 5.OR.eos == 6) THEN
3924  l_st = parame(1,25)
3925  IF (ncomp /= 1) write (*,*) ' ERROR for EOS = 5'
3926  t_p =((34.037352+17.733741*l_st) /(1.0+0.53237307*l_st+12.860239*l_st**2 ))**0.5
3927  IF (l_st == 0.0) t_p = t_p/4.0
3928  IF (eos == 5 .AND. l_st /= 0.0) t_p = t_p/4.0*parame(1,1)**2
3929  t_p = t/parame(i,3)/t_p
3930  pcon =0.5256+3.2088804*l_st**2 -3.1499114*l_st**2.5 +0.43049357*l_st**4
3931  dhs(i) = ( pcon/(0.67793+0.32207*(t_p)**0.3674) /(pi/6.0) )**(1.0/3.0) *parame(i,2)
3932  ELSE IF (eos == 8) THEN
3933  dhs(i) = parame(i,2)*(1.0+0.2977*t/parame(i,3)) &
3934  /(1.0+0.33163*t/parame(i,3) +1.0477e-3*(t/parame(i,3))**2 )
3935  ELSE
3936  write (*,*) 'define EOS in subroutine: SI_DENS'
3937  stop 5
3938  END IF
3939 END DO
3940 
3941 DO ph = 1,nphas
3942  mm_mean = 0.0
3943  z3t = 0.0
3944  DO i = 1, ncomp
3945  mm_mean = mm_mean + xi(ph,i)*mm(i)
3946  z3t = z3t + xi(ph,i) * parame(i,1) * dhs(i)**3
3947  END DO
3948  z3t = pi/6.0 * z3t
3949  rho = dense(ph)/z3t
3950  density(ph) = rho * mm_mean * 1.e27 /nav
3951  DO i = 1, ncomp
3952  w(ph,i) = xi(ph,i) * mm(i)/mm_mean
3953  END DO
3954 ! write (*,*) density(ph),rho,mm_mean,1.d27 /NAV
3955 END DO
3956 
3957 END SUBROUTINE si_dens
3958 
3959 
3960 
3961 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3962 !
3963 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
3964 !
3965  REAL FUNCTION f_stability ( optpara, n )
3966 !
3967  USE basic_variables
3968  USE starting_values
3969  USE eos_variables, ONLY: dhs, pi
3970  IMPLICIT NONE
3971 !
3972 ! ----------------------------------------------------------------------
3973  INTEGER, INTENT(IN) :: n
3974  REAL, INTENT(IN OUT) :: optpara(n)
3975 !
3976 ! ----------------------------------------------------------------------
3977  INTEGER :: i, stabil
3978  REAL :: rhoi(nc),gradterm
3979  REAL :: fden,punish
3980  REAL :: dens
3981 ! ----------------------------------------------------------------------
3982 
3983 COMMON /stabil / stabil
3984 
3985 punish = 0.0
3986 stabil = 1
3987 
3988 DO i = 1, n
3989  IF ( optpara(i) < 0.5 ) rhoi(i) = exp(optpara(i) )
3990  IF ( optpara(i) >= 0.5) rhoi(i) = exp(0.5)
3991 END DO
3992 
3993 dens = pi/6.0 * sum( rhoi(1:ncomp) * parame(1:ncomp,1) * dhs(1:ncomp)**3 )
3994 
3995 IF (dens > 0.65) THEN
3996  punish = punish + (dens-0.65)*10000.0
3997  rhoi(1:n) = rhoi(1:n)*0.65/dens
3998 END IF
3999 
4000 CALL fden_calc (fden, rhoi)
4001 
4002 gradterm = sum( grad_fd(1:n) * ( rhoi(1:n) - rhoif(1:n) ) )
4003 
4004 f_stability = fden - fdenf - gradterm + punish
4005 
4006 ! write (*,'(5G16.8)') F_STABILITY,(rhoi(i),i=1,n)
4007 ! pause
4008 
4009 stabil = 0
4010 
4011 END FUNCTION f_stability
4012 
4013 
4014 
4015 
4016 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
4017 ! SUBROUTINE p_calc (pges_transfer, zges)
4018 !
4019 ! This subroutine serves as an iterface to the EOS-routines. The
4020 ! system pressure corresponding to given (desity,T,xi) is calculated.
4021 ! (Note: the more common interface is SUBROUTINE FUGACITY. This
4022 ! routine is only used for one-phase systems, e.g. calculation of
4023 ! virial coefficients)
4024 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
4025 !
4026  SUBROUTINE p_calc (pges_transfer, zges)
4027 !
4028  USE basic_variables
4029  USE eos_variables
4030  IMPLICIT NONE
4031 !
4032 ! ----------------------------------------------------------------------
4033  REAL, INTENT(IN OUT) :: pges_transfer
4034  REAL, INTENT(OUT) :: zges
4035 ! ----------------------------------------------------------------------
4036 
4037 IF (nphas /= 1 ) THEN
4038  write (*,*) 'P_CALC: can only be called for single phases'
4039  stop 5
4040 ENDIF
4041 
4042 IF (eos < 2) THEN
4043 
4044  phas = 1
4045  eta = dense(1)
4046  x(1:ncomp) = xi(1,1:ncomp)
4047 
4048  CALL perturbation_parameter
4049  IF (num == 0) CALL p_eos
4050  IF(num == 1) CALL p_numerical
4051  !! IF(num == 2) CALL F_EOS_RN
4052 
4053  pges_transfer = pges
4054  rho = eta/z3t
4055  zges = (pges * 1.e-30) / (kbol*t*rho)
4056 
4057 ELSE
4058  write (*,*) ' SUBROUTINE P_CALC not available for cubic EOS'
4059  stop 5
4060 END IF
4061 
4062 END SUBROUTINE p_calc
4063 
4064 
4065 
4066 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
4067 !
4068 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
4069 !
4070 SUBROUTINE only_one_term_eos_numerical ( only_term, type_of_term )
4071 !
4073  IMPLICIT NONE
4074 !
4075  character (LEN=9) :: only_term, type_of_term
4076 ! ----------------------------------------------------------------------
4077 
4078  save_eos_terms(1) = ideal_gas
4079  save_eos_terms(2) = hard_sphere
4080  save_eos_terms(3) = chain_term
4081  save_eos_terms(4) = disp_term
4082  save_eos_terms(5) = hb_term
4083  save_eos_terms(6) = lc_term
4084  save_eos_terms(7) = branch_term
4085  save_eos_terms(8) = ii_term
4086  save_eos_terms(9) = id_term
4087 
4088  ideal_gas = 'no'
4089  hard_sphere = 'no'
4090  chain_term = 'no'
4091  disp_term = 'no'
4092  hb_term = 'no'
4093  lc_term = 'no'
4094  branch_term = 'no'
4095  ii_term = 'no'
4096  id_term = 'no'
4097 
4098  IF ( only_term == 'ideal_gas' ) ideal_gas = trim( adjustl( type_of_term ) )
4099  IF ( only_term == 'hard_sphere' ) hard_sphere = trim( adjustl( type_of_term ) )
4100  IF ( only_term == 'chain_term' ) chain_term = trim( adjustl( type_of_term ) )
4101  IF ( only_term == 'disp_term' ) disp_term = trim( adjustl( type_of_term ) )
4102  IF ( only_term == 'hb_term' ) hb_term = trim( adjustl( type_of_term ) )
4103  IF ( only_term == 'LC_term' ) lc_term = trim( adjustl( type_of_term ) )
4104  IF ( only_term == 'branch_term' ) branch_term = trim( adjustl( type_of_term ) )
4105  IF ( only_term == 'II_term' ) ii_term = trim( adjustl( type_of_term ) )
4106  IF ( only_term == 'ID_term' ) id_term = trim( adjustl( type_of_term ) )
4107 
4108 END SUBROUTINE only_one_term_eos_numerical
4109 
4110 
4111 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
4112 !
4113 !WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
4114 !
4115 SUBROUTINE restore_previous_eos_numerical
4116 !
4118  IMPLICIT NONE
4119 !
4120 ! ----------------------------------------------------------------------
4121  ideal_gas = trim( adjustl( save_eos_terms(1) ) )
4122  hard_sphere = trim( adjustl( save_eos_terms(2) ) )
4123  chain_term = trim( adjustl( save_eos_terms(3) ) )
4124  disp_term = trim( adjustl( save_eos_terms(4) ) )
4125  hb_term = trim( adjustl( save_eos_terms(5) ) )
4126  lc_term = trim( adjustl( save_eos_terms(6) ) )
4127  branch_term = trim( adjustl( save_eos_terms(7) ) )
4128  ii_term = trim( adjustl( save_eos_terms(8) ) )
4129  id_term = trim( adjustl( save_eos_terms(9) ) )
4130 
4131 END SUBROUTINE restore_previous_eos_numerical
4132 
4133 
4134 
4135 
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains constant...
Definition: modules.f90:6
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains paramete...
Definition: modules.f90:200
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains paramete...
Definition: modules.f90:120
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW Module STARTING_VALUES This m...
Definition: modules.f90:251
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains paramete...
Definition: modules.f90:29
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains paramete...
Definition: modules.f90:220