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