Télécharger g2molg.eso

Retour à la liste

Numérotation des lignes :

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

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