Télécharger dimens.eso

Retour à la liste

Numérotation des lignes :

dimens
  1. C DIMENS SOURCE CB215821 22/09/20 21:15:03 11459
  2. SUBROUTINE DIMENS
  3. ************************************************************************
  4. *
  5. * D I M E N S
  6. * -----------
  7. *
  8. * SOUS-PROGRAMME ASSOCIE A L'OPERATEUR "DIMENSION"
  9. *
  10. * FONCTION:
  11. * ---------
  12. *
  13. * FOURNIR LA DIMENSION D'UN OBJET, LA SIGNIFICATION DU MOT
  14. * "DIMENSION" DEPENDANT DE L'OBJET CONSIDERE.
  15. *
  16. * PHRASE D'APPEL (EN GIBIANE):
  17. * ----------------------------
  18. *
  19. * LONG = DIMENSION OBJ ;
  20. *
  21. * OPERANDE ET RESULTAT:
  22. * ---------------------
  23. *
  24. * LONG 'ENTIER ' DIMENSION DE "OBJ".
  25. * OBJ 'LISTREEL' OBJET DONT ON PEUT DEFINIR UNE "DIMENSION".
  26. * OU 'LISTCHPO'
  27. * OU 'RIGIDITE'
  28. * OU 'LISTENTI'
  29. * OU 'SOLUTION'
  30. * OU 'LISTMOTS'
  31. * OU 'TABLE '
  32. * OU 'EVOLUTIO'
  33. * OU 'CHARGEME'
  34. * OU 'NUAGE ' ('COMP' ou 'UPLE')
  35. * OU 'LISTOBJ'
  36. * OU 'MOT'
  37. *
  38. *
  39. * MODE DE FONCTIONNEMENT:
  40. * -----------------------
  41. *
  42. * APPEL D'UN SOUS-PROGRAMME DISTINCT SELON LE TYPE D'OBJET DONT ON
  43. * CHERCHE LA DIMENSION.
  44. *
  45. * SOUS-PROGRAMMES APPELES:
  46. * ------------------------
  47. *
  48. * QUETYP,ECRENT,DIMEN1,DIMEN2,DIMEN3,DIMEN4,DIMEN5,DIMEN6
  49. * DIMEN7,DIMEN8,DIMEN9,DIME10
  50. *
  51. * AUTEUR, DATE DE CREATION:
  52. * -------------------------
  53. *
  54. * PASCAL MANIGOT 1ER OCTOBRE 1984
  55. * MODIFIE LE 13 OCTOBRE 1987 PAR DENIS ROBERT
  56. *
  57. * LANGAGE:
  58. * --------
  59. *
  60. * FORTRAN77 + EXTENSION: CARACTERES MIS DANS DES ENTIERS
  61. *
  62. ************************************************************************
  63. *
  64. IMPLICIT INTEGER(I-N)
  65. IMPLICIT REAL*8(A-H,O-Z)
  66.  
  67. -INC PPARAM
  68. -INC CCOPTIO
  69. *
  70. CHARACTER*512 CMOT
  71. CHARACTER*4 MOTCLE(2)
  72. DATA MOTCLE/'COMP','UPLE'/
  73. *
  74. 10 CONTINUE
  75. CALL LIROBJ('LISTREEL',IPOINT,0,IRETOU)
  76. IF (IRETOU.NE.1) GOTO 20
  77. CALL DIMEN1 (IPOINT,IDIMEN)
  78. GOTO 5000
  79. 20 CONTINUE
  80. CALL LIROBJ('LISTCHPO',IPOINT,0,IRETOU)
  81. IF (IRETOU.NE.1) GOTO 30
  82. CALL DIMEN2 (IPOINT,IDIMEN)
  83. GOTO 5000
  84. 30 CONTINUE
  85. CALL LIROBJ('RIGIDITE',IPOINT,0,IRETOU)
  86. IF (IRETOU.NE.1) GOTO 40
  87. CALL DIMEN3 (IPOINT,IDIMEN)
  88. GOTO 5000
  89. 40 CONTINUE
  90. CALL LIROBJ('LISTENTI',IPOINT,0,IRETOU)
  91. IF (IRETOU.NE.1) GOTO 50
  92. CALL DIMEN4 (IPOINT,IDIMEN)
  93. GOTO 5000
  94. 50 CONTINUE
  95. CALL LIROBJ('SOLUTION',IPOINT,0,IRETOU)
  96. IF (IRETOU.NE.1) GOTO 60
  97. CALL DIMEN5 (IPOINT,IDIMEN)
  98. GOTO 5000
  99. 60 CONTINUE
  100. CALL LIROBJ('LISTMOTS',IPOINT,0,IRETOU)
  101. IF (IRETOU.NE.1) GOTO 70
  102. CALL DIMEN6 (IPOINT,IDIMEN)
  103. GOTO 5000
  104. 70 CONTINUE
  105. CALL LIROBJ('TABLE ',IPOINT,0,IRETOU)
  106. IF (IRETOU.NE.1) GOTO 80
  107. CALL DIMEN7 (IPOINT,IDIMEN)
  108. GOTO 5000
  109. 80 CONTINUE
  110. CALL LIROBJ('EVOLUTIO',IPOINT,0,IRETOU)
  111. IF (IRETOU.NE.1) GO TO 90
  112. CALL DIMEN8 (IPOINT,IDIMEN)
  113. GO TO 5000
  114. 90 CONTINUE
  115. CALL LIROBJ('CHARGEME',IPOINT,0,IRETOU)
  116. IF (IRETOU.NE.1) GO TO 100
  117. CALL DIMEN9 (IPOINT,IDIMEN)
  118. GO TO 5000
  119. 100 CONTINUE
  120. CALL LIROBJ('NUAGE ',IPOINT,0,IRETOU)
  121. IF (IRETOU.NE.1) GO TO 110
  122. CALL LIRMOT(MOTCLE,2,JEMIL,1)
  123. IF (IERR.NE.0) RETURN
  124. CALL DIME10 (IPOINT,JEMIL,IDIMEN)
  125. GO TO 5000
  126. 110 CONTINUE
  127. CALL LIROBJ('LISTOBJE',IPOINT,0,IRETOU)
  128. IF (IRETOU.NE.1) GO TO 120
  129. CALL DIME11 (IPOINT,IDIMEN)
  130. GO TO 5000
  131. 120 CONTINUE
  132. CALL LIRCHA(CMOT,0,LMOT)
  133. IF (LMOT.EQ.0) GO TO 666
  134. IDIMEN=LMOT
  135. GO TO 5000
  136. C
  137. C PAS D OPERANDE CORRECTE TROUVE
  138. C
  139. 666 CALL QUETYP(MOTERR(1:8),0,IRETOU)
  140. IF(IRETOU.NE.0) THEN
  141. CALL ERREUR (39)
  142. ELSE
  143. CALL ERREUR(533)
  144. ENDIF
  145. RETURN
  146. *
  147. 5000 CONTINUE
  148. *
  149. CALL ECRENT(IDIMEN)
  150. RETURN
  151. *
  152. END
  153.  
  154.  
  155.  
  156.  
  157.  

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