C G2MOCO    SOURCE    CHAT      05/01/13    00:14:37     5004
C
      SUBROUTINE G2MOCO(IGR1,NBLIG1,NBCOL1,
     >                  NBAJ,INCOAJ,NBCOAJ,INDICE,INCREM,
     >                  IGR2,NBLIG2,NBCOL2)
C     **********************************************************************
C     OBJET G2MOCO : AJOUTE DES COLONNES D'INDICES A UNE GRILLE
C
C     EN ENTREE   :
C       IGR1(NBLIG1,NBCOL1) : LE TABLEAU INITIAL
C
C       NBAJ       : NOMBRE D'AJOUTS
C       INCOAJ()   : TABLEAU DES POSITIONS D'AJOUT
C       NBCOAJ(I)  : NOMBRE DE COLONNES A AJOUTER
C                    AVANT INCOAJ(I) SI NEGATIF
C                    APRES INCOAJ(I) SI POSITIF
C
C       INDICE     : INDICE POUR REMPLIR LES NOUVELLES COLONNES
C       INCREM     : INCREMENT DE L'INDICE
C
C     EN SORTIE   :
C       IGR2(NBLIG2,NBCOL2) : LE TABLEAU AVEC LES COLONNES SUPPLEMENTAIRES
C
C     **********************************************************************
      IMPLICIT INTEGER(I-N)
      INTEGER IGR1(*),NBLIG1,NBCOL1
      INTEGER NBAJ,INCOAJ(*),NBCOAJ(*),INDICE,INCREM
      INTEGER IGR2(*),NBLIG2,NBCOL2
C
      INTEGER  ICOAJ,I,J,K,JJ,NBCO
C
      NBCO = 0
      DO 10 I=1,NBAJ
        NBCO = NBCO + NBCOAJ(I)
   10 CONTINUE
      ICOAJ = 1
      NBCOL2 = NBCOL1+NBCO
      NBLIG2 = NBLIG1
      JJ = 1
      DO 50 J=1,NBCOL1
C
C       --- ON AJOUTE DES COLONNES AVANT ---
C
        IF( J.EQ. -INCOAJ(ICOAJ) )THEN
        DO 25 K=1,NBCOAJ(ICOAJ)
          DO 20 I = 1,NBLIG1
            IGR2((I-1)*NBCOL2+JJ) = INDICE
            INDICE = INDICE + INCREM
   20     CONTINUE
          JJ = JJ + 1
   25   CONTINUE
          ICOAJ = ICOAJ+1
        ENDIF
C
        DO 30 I=1,NBLIG1
          IGR2((I-1)*NBCOL2+JJ) = IGR1((I-1)*NBCOL1+J)
   30   CONTINUE
        JJ = JJ + 1
C
C       --- ON AJOUTE DES COLONNES APRES ---
C
        IF((NBAJ.GE.ICOAJ).AND.( J.EQ. INCOAJ(ICOAJ)))THEN
        DO 45 K=1,NBCOAJ(ICOAJ)
          DO 40 I = 1,NBLIG1
            IGR2((I-1)*NBCOL2+JJ) = INDICE
            INDICE = INDICE + INCREM
   40     CONTINUE
          JJ = JJ + 1
   45   CONTINUE
          ICOAJ = ICOAJ+1
        ENDIF
   50 CONTINUE
C
 9999 END


