C EXTR11    SOURCE    CB215821  20/11/25    13:28:40     10792          
      SUBROUTINE EXTR11(MCHPOI,MLMOTS)
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
C-----------------------------------------------------------------------
C
C                             E X T R 1 1
C                             -----------
C
C FONCTION:
C ---------
C
C     EXTRAIT LES COMPOSANTES DU CHPOINT "ICHP" ET LES RANGE DANS
C       UN LISTMOTS MLMOTS
C
C MODULES UTILISES:
C -----------------
C
-INC SMCHPOI
-INC PPARAM
-INC SMLMOTS
C
C PARAMETRES:   (E)=ENTREE   (S)=SORTIE   (+ = CONTENU DANS UN COMMUN)
C -----------
C
C     MCHPOI  (E)  POINTEUR SUR LE CHPOINT
C     MLMOTS  (S)  POINTEUR SUR LE LISTMOTS
C
C-----------------------------------------------------------------------

      SEGACT MCHPOI
      JGN   =LOCOMP
      JGM   =0
      INCJGM=10
      SEGINI,MLMOTS
      NSOUPO=IPCHP(/1)
      
      IF (NSOUPO.EQ.0) GOTO 90
      
      DO 10 I=1,NSOUPO
         MSOUPO=IPCHP(I)
         SEGACT,MSOUPO
 10   CONTINUE

      MSOUPO=IPCHP(1)
      JGM=NOCOMP(/2)
      SEGADJ,MLMOTS
      DO 20 I=1,JGM
        MOTS(I)=NOCOMP(I)
 20   CONTINUE

      NBCOMP=JGM
      IF (NSOUPO.GT.1) THEN
         DO 30 I=2,NSOUPO
            MSOUPO=IPCHP(I)
            DO 40 K=1,NOCOMP(/2)
               DO 50 J=1,NBCOMP
                 IF (MOTS(J).EQ.NOCOMP(K)) GOTO 40
 50            CONTINUE
               NBCOMP = NBCOMP + 1
               IF (NBCOMP .GT. JGM)THEN
                 JGM=JGM+INCJGM
                 INCJGM = INCJGM * 2
                 SEGADJ,MLMOTS
               ENDIF
               MOTS(NBCOMP)=NOCOMP(K)
 40         CONTINUE
 30      CONTINUE
      ENDIF
      
      IF (NBCOMP .NE. JGM)THEN
        JGM=NBCOMP
        SEGADJ,MLMOTS
      ENDIF

 90   RETURN
      END
 
 
