41 1 IGRPART ,IPART ,ISUBMOD ,FLAG ,NGRPRT ,
55#include "implicit_f.inc"
65 INTEGER IPART(LIPART1,*),ISUBMOD(*)
68 TYPE (SUBSET_) ,
DIMENSION(NSUBS) :: SUBSET
69 TYPE (GROUP_) ,
DIMENSION(NGRPRT) :: IGRPART
73 INTEGER I,J,K,L,ID,NEL,IGS,JREC,
74 . IT0,IT1,IT2,IT3,IT4,IT5,
75 . flag_fmt,flag_fmt_tmp,ifix_tmp,ibid,n1,n2,ok,nindx,
76 . nn,idmin,idmax,offset,nentity
77 INTEGER J10(10),BUFTMP(NSUBS+NPART),INDX(NSUBS+NPART),
78 . LIST_IGR(NGRPRT),UID,KK
80 CHARACTER(LEN=NCHARTITLE) :: TITR,TITR1
81 CHARACTER(LEN=NCHARKEY) :: KEY,KEY2
83 LOGICAL IS_AVAILABLE, IS_ENCRYPTED
85 DATA mes/
' PART GROUP'/
141 igrpart(igs)%NENTITY = 0
142 igrpart(igs)%GRTYPE = 0
143 igrpart(igs)%SORTED = 0
144 igrpart(igs)%GRPGRP = 0
145 igrpart(igs)%LEVEL = 0
146 igrpart(igs)%R2R_ALL = 0
147 igrpart(igs)%R2R_SHARE = 0
151 igrpart(igs)%GRTYPE=-1
152 igrpart(igs)%TITLE=titr
154 IF(key(1:6) ==
'GRPART')
THEN
156 igrpart(igs)%NENTITY=-1
157 igrpart(igs)%GRPGRP=2
159 ELSEIF(key(1:4) ==
'PART' .OR. key(1:6) ==
'SUBSET' .OR. key(1:3) ==
'MAT' .OR. key(1:4) ==
'PROP')
THEN
163 igrpart(igs)%NENTITY=0
164 igrpart(igs)%GRPGRP=3
166 ELSEIF(key(1:4) ==
'GENE' )
THEN
170 igrpart(igs)%NENTITY=0
171 igrpart(igs)%GRPGRP=4
173 ELSEIF(key(1:6) ==
'SUBMOD')
THEN
177 igrpart(igs)%NENTITY=0
178 igrpart(igs)%GRPGRP=5
180 ELSEIF(key(1:8) ==
'GEN_INCR' )
THEN
184 igrpart(igs)%NENTITY=0
185 igrpart(igs)%GRPGRP=4
196 list_igr(igs) = igrpart(igs)%ID
208 . option_titr = titr ,
212 IF (key(1:6)==
'SUBSET'.OR.key(1:4)==
'PART'.OR. key(1:3)==
'MAT' .OR.key(1:4)==
'PROP')
THEN
216 CALL hm_tagpart(buftmp ,ipart ,key ,igrpart(igs)%ID,titr ,titr1 ,flag ,subset ,lsubmodel)
219 IF (buftmp(j) == 1) nel=nel+1
221 igrpart(igs)%NENTITY=nel
222 CALL my_alloc(igrpart(igs)%ENTITY,nel)
223 igrpart(igs)%ENTITY = 0
224 ELSEIF (flag == 1)
THEN
226 IF (buftmp(j) == 1)
THEN
246 . option_titr = titr ,
250 IF(key(1:4) ==
'GENE')
THEN
254 CALL hm_get_intv (
'grnodGenArrCnt' ,nentity,is_available,lsubmodel)
259 IF (ipart(4,k) >= n1.AND.ipart(4,k) <= n2)buftmp(k)=1
265 IF (buftmp(j) == 1) nel=nel+1
267 igrpart(igs)%NENTITY=nel
268 CALL my_alloc(igrpart(igs)%ENTITY,nel)
269 igrpart(igs)%ENTITY = 0
270 ELSEIF (flag == 1)
THEN
272 IF (buftmp(j) == 1)
THEN
274 igrpart(igs)%ENTITY(nn)=j
290 . option_titr = titr ,
294 IF (key(1:6) ==
'SUBMOD')
THEN
300 . mes ,titr,titr1,indx,nindx ,
304 IF (buftmp(j) == 1) nel=nel+1
306 igrpart(igs)%NENTITY=nel
307 CALL my_alloc(igrpart(igs)%ENTITY,nel)
308 igrpart(igs)%ENTITY = 0
309 ELSEIF (flag == 1)
THEN
311 IF (buftmp(j) == 1)
THEN
313 igrpart(igs)%ENTITY(nn)=j
336 IF(key(1:8) ==
'GEN_INCR')
THEN
340 CALL hm_get_intv (
'grnodGenArrCnt' ,nentity,is_available,lsubmodel)
348 IF(id<idmin .OR. id>idmax)cycle
349 IF(mod(id-idmin,offset)==0)buftmp(k
364 IF (buftmp(j) == 1) nel=nel+1
366 igrpart(igs)%NENTITY=nel
367 CALL my_alloc(igrpart(igs)%ENTITY,nel)
368 igrpart(igs)%ENTITY = 0
369 ELSEIF (flag == 1)
THEN
371 IF (buftmp(j) == 1)
THEN
373 igrpart(igs)%ENTITY(nn)=j