Télécharger prbpol.eso

Retour à la liste

Numérotation des lignes :

  1. C PRBPOL SOURCE CB215821 18/09/27 21:15:37 9936
  2. SUBROUTINE PRBPOL(BAPOLY,
  3. $ IMPR,IRET)
  4. IMPLICIT REAL*8 (A-H,O-Z)
  5. IMPLICIT INTEGER (I-N)
  6. C***********************************************************************
  7. C NOM : PRBPOL
  8. C DESCRIPTION : Imprime un segment décrivant une liste de polynômes.
  9. C
  10. C LANGAGE : ESOPE
  11. C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  12. C mél : gounand@semt2.smts.cea.fr
  13. C***********************************************************************
  14. C APPELES : -
  15. C APPELES (E/S) : OOOETA
  16. C APPELE PAR : PRLRF
  17. C***********************************************************************
  18. C ENTREES : BAPOLY
  19. C ENTREES/SORTIES : -
  20. C SORTIES : -
  21. C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  22. C***********************************************************************
  23. C VERSION : v1, 10/05/2000, version initiale
  24. C HISTORIQUE : v1, 10/05/2000, création
  25. C HISTORIQUE :
  26. C HISTORIQUE :
  27. C***********************************************************************
  28. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  29. C en cas de modification de ce sous-programme afin de faciliter
  30. C la maintenance !
  31. C***********************************************************************
  32. -INC PPARAM
  33. -INC CCOPTIO
  34. CBEGININCLUDE SPOLYNO
  35. SEGMENT POLYNO
  36. REAL*8 COEMON(NBMON)
  37. INTEGER EXPMON(NDIML,NBMON)
  38. ENDSEGMENT
  39. SEGMENT POLYNS
  40. POINTEUR LIPOLY(NBPOLY).POLYNO
  41. ENDSEGMENT
  42. CENDINCLUDE SPOLYNO
  43. POINTEUR BAPOLY.POLYNS
  44. POINTEUR MYPOLY.POLYNO
  45. *
  46. INTEGER IMPR,IRET
  47. *
  48. INTEGER BAPETA,MYPETA
  49. INTEGER NMONO,NPOLY,NDIML
  50. INTEGER IMONO,IPOLY,INDIML
  51. *
  52. * Executable statements
  53. *
  54. IF (IMPR.GT.6) WRITE(IOIMP,*) 'Entrée dans prbpol.eso'
  55. CALL OOOETA(BAPOLY,BAPETA,IMOD)
  56. IF (BAPETA.NE.1) SEGACT BAPOLY
  57. NPOLY=BAPOLY.LIPOLY(/1)
  58. DO 1 IPOLY=1,NPOLY
  59. WRITE(IOIMP,*) 'Polynôme ',IPOLY
  60. MYPOLY=BAPOLY.LIPOLY(IPOLY)
  61. CALL OOOETA(MYPOLY,MYPETA,IMOD)
  62. IF (MYPETA.NE.1) SEGACT MYPOLY
  63. NMONO=MYPOLY.COEMON(/1)
  64. NDIML=MYPOLY.EXPMON(/1)
  65. DO 12 IMONO=1,NMONO
  66. WRITE(IOIMP,*) 'Monôme : ',IMONO,
  67. $ ' coeff. et puissances de ksi_i'
  68. WRITE(IOIMP,4004) MYPOLY.COEMON(IMONO)
  69. WRITE(IOIMP,3004)
  70. $ (MYPOLY.EXPMON(INDIML,IMONO),INDIML=1,NDIML)
  71. 12 CONTINUE
  72. IF (MYPETA.NE.1) SEGDES MYPOLY
  73. 1 CONTINUE
  74. IF (BAPETA.NE.1) SEGDES BAPOLY
  75. *
  76. * Normal termination
  77. *
  78. IRET=0
  79. RETURN
  80. *
  81. * Format handling
  82. *
  83. 3004 FORMAT (2X,10(1X,I4))
  84. 4004 FORMAT (2X,6(1X,1PE13.5))
  85. *
  86. * Error handling
  87. *
  88. 9999 CONTINUE
  89. IRET=1
  90. WRITE(IOIMP,*) 'An error was detected in subroutine prbpol'
  91. RETURN
  92. *
  93. * End of subroutine PRBPOL
  94. *
  95. END
  96.  
  97.  
  98.  
  99.  
  100.  

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