34
35
36
39
40
41
42#include "implicit_f.inc"
43
44
45
46 INTEGER :: IKAD(0:*), KALEONOFF, NBALEONOFF
47 CHARACTER :: KEY0(*)*5
48
49
50
51#include "units_c.inc"
52
53
54
55 INTEGER K, IKEY, II, NB_PARTS, KK
56 CHARACTER KEY1*5
57 INTEGER, DIMENSION(:), ALLOCATABLE ::
58 k = 0
59 ikey = kaleonoff
60 DO ii = 1, nbaleonoff
61 READ (iusc1, rec = ikad(ikey) + k, fmt = '(7X, A, 37X, I10)')
62 . key1, nb_parts
63 ALLOCATE (part_ids(nb_parts))
64 IF (key1(1:2) == 'ON') THEN
65 DO kk = 1, nb_parts
66 CALL wriusc2 (ikad(ikey) + kk + k, 1, key0(ikey))
67 READ (iusc2, * , err = 9990, END = 9990) PART_IDS(KK)
68 WRITE (iin, '(I10, I10)') part_ids(kk), 1
69 ENDDO
70 ENDIF
71 IF (key1(1:3) == 'OFF') THEN
72 DO kk = 1, nb_parts
73 CALL wriusc2 (ikad(ikey) + kk + k, 1, key0(ikey))
74 READ (iusc2, * , err = 9990, END = 9990) PART_IDS(KK)
75 WRITE'(I10, I10)') part_ids(kk), 0
76 ENDDO
77 ENDIF
78 DEALLOCATE (part_ids)
79 k = k + 1 + nb_parts
80 ENDDO
81 9990 CONTINUE
integer, parameter ncharline100
subroutine wriusc2(irec, nbc, key0)