Télécharger normax.eso

Retour à la liste

Numérotation des lignes :

  1. C NORMAX SOURCE CHAT 05/01/13 02:00:14 5004
  2. SUBROUTINE NORMAX
  3. ************************************************************************
  4. *
  5. * N O R M A X
  6. * -----------
  7. *
  8. * SOUS-PROGRAMME ASSOCIE A L'OPERATEUR "MAX1"
  9. *
  10. * FONCTION:
  11. * ---------
  12. *
  13. * NORMER UN OBJET EN LE DIVISANT PAR SA PLUS GRANDE VALEUR (DE
  14. * TELLE SORTE QUE SON PLUS GRAND TERME DEVIENNE 1).
  15. *
  16. * PHRASE D'APPEL (EN GIBIANE):
  17. * ----------------------------
  18. *
  19. * |(AVEC)|
  20. * OBJET2 = MAX1 OBJET1 (| | COMPOS ) ;
  21. * | SANS |
  22. *
  23. * LES PARENTHESES INDIQUANT DES ARGUMENTS FACULTATIFS.
  24. *
  25. * ARGUMENTS (EN GIBIANE):
  26. * -----------------------
  27. *
  28. * OBJET1 TYPE_1 OBJET QUE L'ON NORME.
  29. * OBJET2 TYPE_1 OBJET NORME ISSU DE "OBJET1".
  30. * AVEC 'MOT ' MOT-CLE INDIQUANT QUE L'ON REGARDE
  31. * UNIQUEMENT,DANS LA RECHERCHE DU MAXIMUM,
  32. * LES VALEURS ASSOCIEES AUX COMPOSANTES CITEES
  33. * DANS "COMPOS".
  34. * C'EST L'OPTION PAR DEFAUT.
  35. * SANS 'MOT ' MOT-CLE INDIQUANT QUE L'ON EXCLUT, DANS LA
  36. * RECHERCHE DU MAXIMUM, LES VALEURS ASSOCIEES
  37. * AUX COMPOSANTES CITEES DANS "COMPOS".
  38. * COMPOS 'LISTMOTS' LISTE DES NOMS DES COMPOSANTES COMPRISES
  39. * OU EXCLUES.
  40. *
  41. * LES VALEURS POSSIBLES DE "TYPE_1" SONT:
  42. * - 'CHPOINT' (LES COMPOSANTES SONT ALORS UX, UY, UZ, LX, ...),
  43. * - ... (A COMPLETER AU FUR ET A MESURE)
  44. *
  45. * DICTIONNAIRE DES VARIABLES: (ORDRE ALPHABETIQUE)
  46. * ---------------------------
  47. *
  48. * IPOIN2 ENTIER POINTEUR DE L'OBJET NORME "OBJET2".
  49. * IPLMOT ENTIER POINTEUR DE L'OBJET "COMPOS".
  50. * IPOINT ENTIER POINTEUR DE L'OBJET "OBJET1".
  51. * IPOS ENTIER NUMERO D'ORDRE DU TYPE DE L'OBJET "OBJET1" DANS
  52. * LA LISTE CONTENUE DANS "LISTYP".
  53. * LISTYP ENTIER CONTIENT LES NOMS DES DIFFERENTS TYPES D'OBJET
  54. * DONT ON PEUT RECHERCHER LA PLUS GRANDE VALEUR.
  55. * MOTCLE CHARACTER CONTIENT LA CHAINE DE CARACTERES 'AVEC' OU
  56. * 'SANS'.
  57. * NBTYPE ENTIER NOMBRE DE NOMS DANS "LISTYP".
  58. *
  59. * MODE DE FONCTIONNEMENT:
  60. * -----------------------
  61. *
  62. * APPEL D'UN SOUS-PROGRAMME DISTINCT SELON LE TYPE DE L'OBJET
  63. * "OBJET1".
  64. *
  65. * SOUS-PROGRAMMES APPELES:
  66. * ------------------------
  67. *
  68. * LIROBJ, LIRTYP, ECROBJ, NORMA1
  69. *
  70. * AUTEUR, DATE DE CREATION:
  71. * -------------------------
  72. *
  73. * PASCAL MANIGOT 5 NOVEMBRE 1984
  74. *
  75. * LANGAGE:
  76. * --------
  77. *
  78. * FORTRAN77 + EXTENSION: CARACTERES MIS DANS DES ENTIERS
  79. *
  80. ************************************************************************
  81. *
  82. IMPLICIT INTEGER(I-N)
  83. -INC CCOPTIO
  84. *
  85. PARAMETER (NBTYPE = 1)
  86. *
  87. CHARACTER*8 LISTYP(NBTYPE)
  88. *
  89. CHARACTER*(4) MOTCLE
  90. *
  91. DATA LISTYP/'CHPOINT '/
  92. *
  93. * -- LECTURE DU MOT-CLE --
  94. *
  95. ICODE = 0
  96. CALL LIRCHA (MOTCLE,ICODE,IRETOU)
  97. IF (IRETOU .EQ. 0) THEN
  98. MOTCLE = ' '
  99. END IF
  100. *
  101. * -- LECTURE DE LA LISTE DE TYPES DE COMPOSANTE --
  102. *
  103. ICODE = 0
  104. CALL LIROBJ ('LISTMOTS',IPLMOT,ICODE,IRETOU)
  105. IF (IRETOU .EQ. 0) THEN
  106. IPLMOT = 0
  107. ELSE IF (MOTCLE .EQ. ' ') THEN
  108. * PAR DEFAUT, LES COMPOSANTES NOMMEES SONT LES COMPOSANTES
  109. * PRISES EN COMPTE (ET NON PAS LES COMPOSANTES EXCLUES):
  110. MOTCLE = 'AVEC'
  111. END IF
  112. *
  113. * -- LECTURE DE L'OBJET --
  114. *
  115. NBTYP = NBTYPE
  116. ICODE = 1
  117. CALL LIROBJ (LISTYP(1),IPOINT,ICODE,IRETOU)
  118. IF (IERR .NE. 0) RETURN
  119. *
  120. * -- NORMALISATION --
  121. *
  122. * NORMALISATION D'UN "CHPOINT":
  123. CALL NORMA1 (IPOINT,IPLMOT,MOTCLE, IPOIN2)
  124. IF (IERR .NE. 0) RETURN
  125. CALL ECROBJ ('CHPOINT ',IPOIN2)
  126. *
  127. *
  128. END
  129.  
  130.  

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