Télécharger convcp.eso

Retour à la liste

Numérotation des lignes :

  1. C CONVCP SOURCE CHAT 05/01/12 22:19:14 5004
  2. SUBROUTINE CONVCP(DREE,DIMA,DMOD,DPHA,NP,INV)
  3. IMPLICIT INTEGER(I-N)
  4. IMPLICIT REAL*8(A-H,O-Z)
  5. C
  6. C=======================================================================
  7. C INV=1
  8. C CALCUL DU MODULE ET DE LA PHASE D'UN COMPLEXE DOUBLE PRECISION
  9. C A PARTIR DE LA PARTIE REELLE ET DE LA PARTIE IMAGINAIRE
  10. C
  11. C ( ET VICE-VERSA INV=-1 )
  12. C
  13. C CREATION : 15/12/87
  14. C F.ROULLIER
  15. C=======================================================================
  16. C
  17. -INC CCOPTIO
  18. -INC CCREEL
  19. DIMENSION DREE(*),DIMA(*),DMOD(*),DPHA(*)
  20. C
  21. IF (INV.EQ.1) THEN
  22. RAP=180./XPI
  23. DO 10 I=1,NP
  24. DR=DREE(I)
  25. DI=DIMA(I)
  26. DM=SQRT(DR*DR+DI*DI)
  27. IF (ABS(DR).GT.XPETIT) THEN
  28. DP=ATAN2(DI,DR)
  29. ELSE
  30. IF (DI.EQ.0.D0) DP=0.D0
  31. IF (DI.GT.0.D0) DP=XPI/2.D0
  32. IF (DI.LT.0.D0) DP=-XPI/2.D0
  33. ENDIF
  34. DMOD(I)=DM
  35. DPHA(I)=DP*RAP
  36. 10 CONTINUE
  37. RETURN
  38. C
  39. ELSE
  40. C
  41. RAP=XPI/180.
  42. DO 110 I=1,NP
  43. DM=DMOD(I)
  44. DP=DPHA(I)*RAP
  45. DR=DM*COS(DP)
  46. DI=DM*SIN(DP)
  47. DREE(I)=DR
  48. DIMA(I)=DI
  49. 110 CONTINUE
  50. ENDIF
  51. C
  52. RETURN
  53. END
  54.  
  55.  
  56.  
  57.  

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