27!||--- calls -----------------------------------------------------
35!||====================================================================
37 . CLAUSE ,IPARTM1 ,JCLAUSE ,OPT_G ,IS_AVAILABLE ,
68#include "implicit_f.inc"
77 LOGICAL :: IS_AVAILABLE
78 INTEGER,
INTENT(IN),
DIMENSION(NPART,2) :: IPARTM1
81 TYPE(SUBMODEL_DATA),
INTENT(IN):: LSUBMODEL(*)
87 CALL ancmsg(msgid=2007,anmode=aninfo,
90 . c1=trim(clause%TITLE),
118 . CLAUSE, IPARTM1 ,JCLAUSE ,IS_AVAILABLE ,LSUBMODEL)
145#include "implicit_f.inc"
149#include "com04_c.inc"
154 LOGICAL :: IS_AVAILABLE
155 INTEGER,
INTENT(IN),
DIMENSION(NPART,2) :: IPARTM1
157 TYPE (SET_) :: CLAUSE
162 INTEGER I,,NINDX,LIST_SIZE,IDS_MAX,PARTM
165 INTEGER,
ALLOCATABLE,
DIMENSION(:) :: PART_READ_TMP,SORTED_PARTS,INDEX
173 ALLOCATE(part_read_tmp(ids_max))
174 ALLOCATE(sorted_parts(ids_max))
176 ALLOCATE(index(2*ids_max))
187 partm = set_usrtos(ids,ipartm1,npart)
190 CALL ancmsg(msgid=1902,anmode=aninfo,
191 . msgtype=msgwarning,
192 . i1 = clause%SET_ID,
194 . c1=trim(clause%TITLE),
198 partm=ipartm1(partm,2)
201 part_read_tmp(nindx) = partm
212 CALL my_orders(0,iwork,part_read_tmp,index,nindx,1)
215 sorted_parts(i) = part_read_tmp(index(i))
218 CALL remove_duplicates( sorted_parts,nindx,list_size)
222 clause%NB_PART = list_size
223 ALLOCATE( clause%PART( list_size ) )
226 clause%PART(i) = sorted_parts(i)
231 DEALLOCATE(part_read_tmp)
232 DEALLOCATE(sorted_parts)
246!||--- uses -----------------------------------------------------
252 . CLAUSE, IPARTM1 ,JCLAUSE ,IS_AVAILABLE ,LSUBMODEL)
279#include "implicit_f.inc"
283#include "com04_c.inc"
288 LOGICAL :: IS_AVAILABLE
289 INTEGER,
INTENT(IN),
DIMENSION(NPART,2) :: IPARTM1
291 TYPE (SET_) :: CLAUSE
292 TYPE(),
INTENT(IN):: LSUBMODEL(*)
296 INTEGER ,IDS,LIST_SIZE,IDS_MAX,PARTM,GENE_MAX,K,P,P1
297 INTEGER START_GENE,END_GENE,INCR_GENE,PSTART,PSTOP,STACK,STACK_ONE,NB_RESULT
299 INTEGER,
ALLOCATABLE,
DIMENSION(:) :: PART_READ_TMP,
300 . part_read_one,result
302 INTEGER SET_USRTOS_NEAREST
303 EXTERNAL set_usrtos_nearest
308 ALLOCATE(part_read_tmp(npart))
309 ALLOCATE(part_read_one(npart))
311 IF (gene_max > 1)
THEN
312 ALLOCATE(result(npart))
323 IF (incr_gene == 0) incr_gene = 1
325 pstart = set_usrtos_nearest(start_gene,ipartm1,npart,1)
326 pstop = set_usrtos_nearest(end_gene,ipartm1,npart,2)
332 IF ( mod( p1-start_gene , incr_gene) == 0 )
THEN
333 stack_one = stack_one+1
334 part_read_one(stack_one) = ipartm1(p,2)
339 part_read_tmp(1:stack_one) = part_read_one(1:stack_one)
343 CALL union_2_sorted_sets( part_read_tmp, stack ,
345 * result, nb_result )
347 part_read_tmp(1:nb_result) = result(1:nb_result)
352 clause%NB_PART = stack
353 ALLOCATE(clause%PART(stack))
354 clause%PART(1:stack) = part_read_tmp(1:stack)
356 DEALLOCATE (part_read_tmp)
357 DEALLOCATE (part_read_one)
358 IF (
ALLOCATED(result))
DEALLOCATE (result)
subroutine create_part_list_g(clause, ipartm1, jclause, is_available, lsubmodel)
subroutine create_part_clause(clause, ipartm1, jclause, opt_g, is_available, lsubmodel)
subroutine create_part_list(clause, ipartm1, jclause, is_available, lsubmodel)
subroutine hm_get_int_array_2indexes(name, ival, index1, index2, is_available, lsubmodel)
subroutine hm_get_int_array_index(name, ival, index, is_available, lsubmodel)
subroutine hm_set(set, lsubmodel, inv_group, map_tables, ipart, igrsurf, igrnod, igrslin, igrpart, igrbric, igrquad, igrsh4n, igrsh3n, igrtruss, igrbeam, igrspring, ixs, ixs10, ixc, ixtg, knod2els, nod2els, knod2elc, nod2elc, knod2eltg, nod2eltg, ipartc, ipartg, iparts, sh4tree, sh3tree, ixq, knod2elq, nod2elq, x, ixt, ixp, ixr, ixx, kxx, kxsp, ixs20, ixs16, geo, itabm1, ibox, skew, ipartq, ipartt, ipartp, ipartr, subset, rby_msn, iskn, rtrans, unitab, bufsf, iad, siskwn, sskew, rootnam, rootlen, infile_name, infile_name_len)
void my_orders(int *mode, int *iwork, int *data, int *index, int *n, int *irecl)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)