1 : C DOUBLO SOURCE PV 06/03/31 21:03:52 5366 2 : SUBROUTINE DOUBLO(IEN,IND,NC,N, NF,IDU) 3 : C_______________________________________________________________________ 4 : C 5 : C DETECTION DE DOUBLON DANS UNE LISTE DE NC-UPLET 6 : C 7 : C Entrees: 8 : C -------- 9 : C IEN=COLLECTION DE N NC-UPLET PARAMETRES CARACTERISTIQUES 10 : C IND=ORDRE INITIAL DANS IEN 11 : C 12 : C Sorties: 13 : C -------- 14 : C NF =NOMBRE DE NC-UPLET DIFFERENT 15 : C IDU=NOMBRE DE DOUBLON ASSOCIE A CHAQUE NC-UPLET DIFFERENT 16 : C IEN=COLLECTION DES NC-UPLET DIFFERENT 17 : C IND=ORDRE FINAL DES IDEX DES NC-UPLET 18 : C 19 : C Appele par: NLOVEP 20 : C ----------- 21 : C 22 : C P.PEGON 9/11/92 23 : C_______________________________________________________________________ 24 : C 25 : 26 : IMPLICIT INTEGER(I-N) 27 : DIMENSION IND(N),IEN(NC,N),IDU(N) 28 : LOGICAL LOK 29 : C 30 : C INITIALISATION 31 : C 32 : NF=1 33 : IDU(1)=1 34 : IF (N.EQ.1)RETURN 35 : C 36 : C MISE EN ORDRE DES NC-UPLET 37 : C 38 : C 39 : DO IR=1,N-1 40 : DO IA=IR+1,N 41 : LOK=(IA.EQ.IA) 42 : DO IC=1,NC 43 : LOK=LOK.AND.(IEN(IC,IA).EQ.IEN(IC,IR)) 44 : ENDDO 45 : IF (LOK)THEN 46 : IDUM=IND(IR+1) 47 : IND(IR+1)=IND(IA) 48 : IND(IA)=IDUM 49 : DO IC=1,NC 50 : IDUM=IEN(IC,IR+1) 51 : IEN(IC,IR+1)=IEN(IC,IA) 52 : IEN(IC,IA)=IDUM 53 : ENDDO 54 : GOTO 1 55 : ENDIF 56 : ENDDO 57 : 1 CONTINUE 58 : ENDDO 59 : C 60 : C DETECTION DES DOUBLONS 61 : C 62 : DO IR=2,N 63 : LOK=(IR.EQ.IR) 64 : DO IC=1,NC 65 : LOK=LOK.AND.(IEN(IC,NF).EQ.IEN(IC,IR)) 66 : ENDDO 67 : IF(LOK)THEN 68 : IDU(NF)=IDU(NF)+1 69 : ELSE 70 : NF=NF+1 71 : IDU(NF)=1 72 : DO IC=1,NC 73 : IEN(IC,NF)=IEN(IC,IR) 74 : ENDDO 75 : ENDIF 76 : ENDDO 77 : C 78 : RETURN 79 : END 80 : 81 :
© Cast3M 2003 - All rights reserved.
Disclaimer