Télécharger ecnuag.eso

Retour à la liste

Numérotation des lignes :

  1. C ECNUAG SOURCE CB215821 15/05/04 21:15:03 8516
  2. SUBROUTINE ECNUAG(INUA)
  3. C----------------------------------------------------------------------
  4. C IMPRESSION D'UN OBJET DE TYPE NUAGE
  5. C----------------------------------------------------------------------
  6. IMPLICIT INTEGER(I-N)
  7. -INC CCOPTIO
  8. -INC SMNUAGE
  9. -INC CCNOYAU
  10. CHARACTER*(8) ITYPE,INOM,IWR(5)
  11. CHARACTER*4 FAUX,VRAI
  12. CHARACTER*8 IWRI
  13. REAL*8 XRR(5)
  14. INTEGER INRE(5)
  15. LOGICAL BRET
  16. MNUAGE=INUA
  17. SEGACT MNUAGE
  18. NVAR=NUAPOI(/1)
  19.  
  20. IF (NVAR .EQ. 0) THEN
  21. NBCOUP = 0
  22. ELSE
  23. ITYPE=NUATYP(1)
  24. IF( ITYPE.EQ.'FLOTTANT') THEN
  25. NUAVFL=NUAPOI(1)
  26. SEGACT NUAVFL
  27. NBCOUP=NUAFLO(/1)
  28. ELSEIF(ITYPE.EQ.'LOGIQUE ') THEN
  29. NUAVLO=NUAPOI(1)
  30. SEGACT NUAVLO
  31. NBCOUP=NUALOG(/1)
  32. ELSEIF(ITYPE.EQ.'MOT ') THEN
  33. NUAVMO=NUAPOI(1)
  34. SEGACT NUAVMO
  35. NBCOUP=NUAMOT(/2)
  36. ELSE
  37. NUAVIN=NUAPOI(1)
  38. SEGACT NUAVIN
  39. NBCOUP=NUAINT(/1)
  40. ENDIF
  41. ENDIF
  42.  
  43. INTERR(1) = MNUAGE
  44. INTERR(2) = NVAR
  45. INTERR(3)=NBCOUP
  46. CALL ERREUR(-287)
  47.  
  48. IF (NVAR .EQ. 0) THEN
  49. SEGDES MNUAGE
  50. RETURN
  51. ENDIF
  52.  
  53. 513 FORMAT(5(2X,I8))
  54. 514 FORMAT(5(1X,1PE9.2))
  55. 515 FORMAT(5(2X,A8))
  56.  
  57. DO 1 IV = 1,NVAR
  58. MOTERR(1:8) = NUANOM(IV)
  59. MOTERR(9:16)= NUATYP(IV)
  60. INTERR(1) = IV
  61. CALL ERREUR(-288)
  62.  
  63. ITYPE=NUATYP(IV)
  64. IF( ITYPE.EQ.'FLOTTANT') THEN
  65. NUAVFL=NUAPOI(IV)
  66. SEGACT NUAVFL
  67. NBCOUP=NUAFLO(/1)
  68. NN = 0
  69. DO 12 K = 1,NBCOUP,5
  70. NI = MIN ( 5 , NBCOUP - NN)
  71. DO 13 NW = 1, NI
  72. XRR(NW)=NUAFLO(K-1+NW)
  73. 13 CONTINUE
  74. WRITE(IOIMP,514) (XRR(IK),IK=1,NI)
  75. NN = NN + 5
  76. 12 CONTINUE
  77. SEGDES NUAVFL
  78.  
  79. ELSEIF(ITYPE.EQ.'LOGIQUE ') THEN
  80. NUAVLO=NUAPOI(IV)
  81. SEGACT NUAVLO
  82. NBCOUP=NUALOG(/1)
  83. NN = 0
  84. DO 121 K = 1,NBCOUP,5
  85. NI = MIN ( 5 , NBCOUP - NN)
  86. DO 131 NW = 1, NI
  87. IWR(NW) = 'FAUX'
  88. IF( NUALOG(K-1+NW)) IWR(NW) ='VRAI'
  89. 131 CONTINUE
  90. WRITE(IOIMP,515) (IWR(IK),IK=1,NI)
  91. NN = NN + 5
  92. 121 CONTINUE
  93. SEGDES NUAVLO
  94.  
  95. ELSEIF(ITYPE.EQ.'MOT ') THEN
  96. NUAVMO=NUAPOI(IV)
  97. SEGACT NUAVMO
  98. NBCOUP=NUAMOT(/2)
  99. NN = 0
  100. DO 122 K = 1,NBCOUP,5
  101. NI = MIN ( 5 , NBCOUP - NN)
  102. DO 132 NW = 1, NI
  103. IWR(NW) = NUAMOT(K-1+NW)
  104. 132 CONTINUE
  105. WRITE(IOIMP,515) (IWR(IK),IK=1,NI)
  106. NN = NN + 5
  107. 122 CONTINUE
  108. SEGDES NUAVMO
  109.  
  110. ELSE
  111. NUAVIN=NUAPOI(IV)
  112. SEGACT NUAVIN
  113. NBCOUP=NUAINT(/1)
  114. NN = 0
  115. DO 123 K = 1,NBCOUP,5
  116. NI = MIN ( 5 , NBCOUP - NN)
  117. DO 133 NW = 1, NI
  118. INRE(NW) = NUAINT(K-1+NW)
  119. 133 CONTINUE
  120. WRITE(IOIMP,513) (INRE(IK),IK=1,NI)
  121. NN = NN + 5
  122. 123 CONTINUE
  123. SEGDES NUAVIN
  124. ENDIF
  125. 1 CONTINUE
  126.  
  127. SEGDES MNUAGE
  128. RETURN
  129. END
  130.  
  131.  
  132.  

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