30
31
32
33#include "implicit_f.inc"
34
35
36
37#include "com01_c.inc"
38#include "param_c.inc"
39
40
41
42 INTEGER PROC, NGROUP_L, LEN_IA, IPARG(NPARG,*)
43
44
45
46 INTEGER NG, NG_L, NFT_LOC, ITY, ITY_OLD, LB_L, J, LBUFELI,
47 . SHIFT_XFE
48 INTEGER, DIMENSION(:,:), ALLOCATABLE :: IPARG_L
49
50
51
52 ALLOCATE( iparg_l(nparg,ngroup_l) )
53
54 ng_l = 0
55 nft_loc = 0
56 ity_old = 0
57 lb_l = 1
58 DO ng = 1, ngroup
59 IF(iparg(32,ng)==proc) THEN
60 ng_l = ng_l + 1
61 DO j = 1, nparg
62 iparg_l(j,ng_l) = iparg(j,ng)
63 ENDDO
64 ity = iparg(5,ng)
65 IF(ity/=ity_old) THEN
66 nft_loc = 0
67 ity_old = ity
68 ENDIF
69 iparg_l(3,ng_l) = nft_loc
70 iparg_l(4,ng_l) = lb_l
71 IF(iparg(54,ng) > 0)THEN
72 shift_xfe = iparg(67,ng) - iparg(4,ng)
73 iparg_l(67,ng_l) = iparg_l(4,ng_l) + shift_xfe
74 ENDIF
75 nft_loc = nft_loc + iparg(2,ng)
76 IF(ng<ngroup) THEN
77 lbufeli = iparg(4,ng+1) - iparg(4,ng)
78 ELSE
79 lbufeli = lbufel + 1 - iparg(4,ng)
80 ENDIF
81 lb_l = lb_l + lbufeli
82 ENDIF
83 ENDDO
84
86 len_ia = len_ia + nparg*ngroup_l
87
88
89
90 DEALLOCATE( iparg_l )
91
92 RETURN
void write_i_c(int *w, int *len)