Télécharger respro.eso

Retour à la liste

Numérotation des lignes :

  1. C RESPRO SOURCE CB215821 19/12/03 21:15:01 10403
  2. SUBROUTINE RESPRO
  3.  
  4. IMPLICIT INTEGER(I-N)
  5. IMPLICIT REAL*8 (A-H,O-Z)
  6.  
  7. -INC PPARAM
  8. -INC CCOPTIO
  9. -INC SMBLOC
  10. -INC CCNOYAU
  11. -INC CCASSIS
  12.  
  13. CHARACTER*(8) MMM
  14.  
  15. IARGUM=MARGUM
  16. IF(IARGUM.EQ.0) THEN
  17. MOTERR=' '
  18. CALL ERREUR (154)
  19. RETURN
  20. ENDIF
  21. C
  22. C SAUVETAGE DES POINTEURS ET DES TYPES DES RESULTATS
  23. C
  24. SEGACT,IARGUM
  25. MTRESU=ITRESU
  26. IF(MTRESU.EQ.0) THEN
  27. NRES=10
  28. SEGINI,MTRESU
  29. MTRESU.NRESI=0
  30. IF(IIMPI.EQ.1754) WRITE(6,*) ' DANS RESPRO MTRESU ..',MTRESU
  31. SEGACT IARGUM*MOD
  32. ITRESU=MTRESU
  33. ELSE
  34. IF(IIMPI.EQ.1754) WRITE(6,*) ' DANS RESPRO MTRESU ..',MTRESU
  35. SEGACT,MTRESU*MOD
  36. NRES=IVARES(/1)
  37. ENDIF
  38.  
  39. C On passe en INTEGER FORTRAN plutot que ARGUMENT DE SEGMENT (vitesse)
  40. MRESI = MTRESU.NRESI
  41.  
  42. 432 CONTINUE
  43. MMM =' '
  44. LECTAB = 1
  45. INTEXT = 1
  46. C LODESL =.TRUE.
  47. CALL SETASS(1)
  48. CALL LIRABJ(MMM,IRET,0,IRETOU)
  49. C LODESL = .FALSE.
  50. CALL SETASS(0)
  51. C write(6,*) ' respro mmmiret ', mmm ,iret
  52. IF (IRETOU .NE. 0) THEN
  53. MRESI = MRESI + 1
  54. IF(MRESI .GT. NRES)THEN
  55. NRES = MRESI + MAX(INT(REAL(MRESI * 0.2)),10)
  56. SEGADJ,MTRESU
  57. ENDIF
  58. MTYRES(MRESI) = MMM
  59. IVARES(MRESI) = IRET
  60. IF(MMM.EQ.'FLOTTANT') THEN
  61. if(nbesc.ne.0) SEGACT,IPILOC
  62. XFLRES(MRESI)=XIFLOT(IRET)
  63. if(nbesc.ne.0) SEGDES,IPILOC
  64. ENDIF
  65. GOTO 432
  66. ENDIF
  67.  
  68.  
  69. C On repasse MRESI dans MTRESU.NRESI
  70. MTRESU.NRESI = MRESI
  71.  
  72. LECTAB=0
  73.  
  74. END
  75.  
  76.  

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