Télécharger normv2.eso

Retour à la liste

Numérotation des lignes :

normv2
  1. C NORMV2 SOURCE GOUNAND 25/04/30 21:15:25 12258
  2. SUBROUTINE NORMV2(VECT,NORMV,
  3. $ IMPR,IRET)
  4. IMPLICIT REAL*8 (A-H,O-Z)
  5. IMPLICIT INTEGER (I-N)
  6. C***********************************************************************
  7. C NOM : NORMV2
  8. C DESCRIPTION : Equilibrage d'un vecteur dual
  9. C <=> Déséquilibrage d'un vecteur primal
  10. C
  11. C
  12. C
  13. C LANGAGE : ESOPE
  14. C AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF)
  15. C mél : gounand@semt2.smts.cea.fr
  16. C********************************************************
  17. C***********************************************************************
  18. C SYNTAXE GIBIANE :
  19. C ENTREES : NORMV
  20. C ENTREES/SORTIES : VECT
  21. C SORTIES :
  22. C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  23. C***********************************************************************
  24. C VERSION : v1, 29/04/2003, version initiale
  25. C HISTORIQUE : v1, 29/04/2003, création
  26. C HISTORIQUE :
  27. C HISTORIQUE :
  28. C***********************************************************************
  29. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  30. C en cas de modification de ce sous-programme afin de faciliter
  31. C la maintenance !
  32. C***********************************************************************
  33. -INC PPARAM
  34. -INC CCOPTIO
  35. POINTEUR VECT.IZA
  36. POINTEUR NORMV.IZA
  37. *
  38. INTEGER IMPR,IRET
  39. *
  40. * Executable statements
  41. *
  42. IF (IMPR.GT.5) WRITE(IOIMP,*) 'Entrée dans normv2.eso'
  43. NTTDDL=NORMV.A(/1)
  44. NTTDD2=VECT.A(/1)
  45. IF (NTTDD2.NE.NTTDDL) THEN
  46. WRITE(IOIMP,*) 'Erreur grave'
  47. GOTO 9999
  48. ENDIF
  49. DO ITTDDL=1,NTTDDL
  50. VAL=VECT.A(ITTDDL)
  51. VAL=VAL/SQRT(NORMV.A(ITTDDL))
  52. VECT.A(ITTDDL)=VAL
  53. ENDDO
  54. *
  55. * Normal termination
  56. *
  57. IRET=0
  58. RETURN
  59. *
  60. * Format handling
  61. *
  62. *
  63. * Error handling
  64. *
  65. 9999 CONTINUE
  66. IRET=1
  67. WRITE(IOIMP,*) 'An error was detected in subroutine normv2'
  68. RETURN
  69. *
  70. * End of subroutine NORMV2
  71. *
  72. END
  73.  
  74.  

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