Télécharger g2moco.eso

Retour à la liste

Numérotation des lignes :

g2moco
  1. C G2MOCO SOURCE CHAT 05/01/13 00:14:37 5004
  2. C
  3. SUBROUTINE G2MOCO(IGR1,NBLIG1,NBCOL1,
  4. > NBAJ,INCOAJ,NBCOAJ,INDICE,INCREM,
  5. > IGR2,NBLIG2,NBCOL2)
  6. C **********************************************************************
  7. C OBJET G2MOCO : AJOUTE DES COLONNES D'INDICES A UNE GRILLE
  8. C
  9. C EN ENTREE :
  10. C IGR1(NBLIG1,NBCOL1) : LE TABLEAU INITIAL
  11. C
  12. C NBAJ : NOMBRE D'AJOUTS
  13. C INCOAJ() : TABLEAU DES POSITIONS D'AJOUT
  14. C NBCOAJ(I) : NOMBRE DE COLONNES A AJOUTER
  15. C AVANT INCOAJ(I) SI NEGATIF
  16. C APRES INCOAJ(I) SI POSITIF
  17. C
  18. C INDICE : INDICE POUR REMPLIR LES NOUVELLES COLONNES
  19. C INCREM : INCREMENT DE L'INDICE
  20. C
  21. C EN SORTIE :
  22. C IGR2(NBLIG2,NBCOL2) : LE TABLEAU AVEC LES COLONNES SUPPLEMENTAIRES
  23. C
  24. C **********************************************************************
  25. IMPLICIT INTEGER(I-N)
  26. INTEGER IGR1(*),NBLIG1,NBCOL1
  27. INTEGER NBAJ,INCOAJ(*),NBCOAJ(*),INDICE,INCREM
  28. INTEGER IGR2(*),NBLIG2,NBCOL2
  29. C
  30. INTEGER ICOAJ,I,J,K,JJ,NBCO
  31. C
  32. NBCO = 0
  33. DO 10 I=1,NBAJ
  34. NBCO = NBCO + NBCOAJ(I)
  35. 10 CONTINUE
  36. ICOAJ = 1
  37. NBCOL2 = NBCOL1+NBCO
  38. NBLIG2 = NBLIG1
  39. JJ = 1
  40. DO 50 J=1,NBCOL1
  41. C
  42. C --- ON AJOUTE DES COLONNES AVANT ---
  43. C
  44. IF( J.EQ. -INCOAJ(ICOAJ) )THEN
  45. DO 25 K=1,NBCOAJ(ICOAJ)
  46. DO 20 I = 1,NBLIG1
  47. IGR2((I-1)*NBCOL2+JJ) = INDICE
  48. INDICE = INDICE + INCREM
  49. 20 CONTINUE
  50. JJ = JJ + 1
  51. 25 CONTINUE
  52. ICOAJ = ICOAJ+1
  53. ENDIF
  54. C
  55. DO 30 I=1,NBLIG1
  56. IGR2((I-1)*NBCOL2+JJ) = IGR1((I-1)*NBCOL1+J)
  57. 30 CONTINUE
  58. JJ = JJ + 1
  59. C
  60. C --- ON AJOUTE DES COLONNES APRES ---
  61. C
  62. IF((NBAJ.GE.ICOAJ).AND.( J.EQ. INCOAJ(ICOAJ)))THEN
  63. DO 45 K=1,NBCOAJ(ICOAJ)
  64. DO 40 I = 1,NBLIG1
  65. IGR2((I-1)*NBCOL2+JJ) = INDICE
  66. INDICE = INDICE + INCREM
  67. 40 CONTINUE
  68. JJ = JJ + 1
  69. 45 CONTINUE
  70. ICOAJ = ICOAJ+1
  71. ENDIF
  72. 50 CONTINUE
  73. C
  74. 9999 END
  75.  
  76.  
  77.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales