Télécharger fuausm.eso

Retour à la liste

Numérotation des lignes :

fuausm
  1. C FUAUSM SOURCE CHAT 05/01/13 00:11:14 5004
  2. SUBROUTINE FUAUSM(ALPHA,BETA,MG,MD,MPLUS,MMINUS,PPLUS,PMINUS)
  3. C************************************************************************
  4. C
  5. C PROJET : CASTEM 2000
  6. C
  7. C NOM : FUAUSM
  8. C
  9. C DESCRIPTION : voir FAUSMP, FAUSM2
  10. C
  11. C LANGUAGE : FORTRAN 77
  12. C
  13. C AUTEUR : A. BECCANTINI DRN/DMT/SEMT/LTMF
  14. C
  15. C************************************************************************
  16. C
  17. C APPELES
  18. C
  19. C NONE
  20. C
  21. C
  22. C************************************************************************
  23. C
  24. C**** Entrées:
  25. C
  26. C ALPHA, BETA = parametres reels
  27. C
  28. C MG, MD = nombres de MACH (gauche et droite) normales
  29. C
  30. C**** Sorties:
  31. C
  32. C MPLUS, MMINUS
  33. C PPLUS, PMINUS = parametres qui interviennent dans le calcul
  34. C de flux numerique AUSM+
  35. C
  36. C************************************************************************
  37. C
  38. C HISTORIQUE (Anomalies et modifications éventuelles)
  39. C
  40. C HISTORIQUE : Créé le 30.10.2000
  41. C
  42. C************************************************************************
  43. C
  44. C N.B.: Toutes les variables sont DECLAREES
  45. C
  46. IMPLICIT INTEGER(I-N)
  47. REAL*8 ALPHA,BETA,MG,MD,MPLUS,MMINUS,PPLUS,PMINUS
  48. C
  49. C**** Machs AUSM+
  50. C
  51. C
  52. IF(ABS(MG).GT.1.0D0)THEN
  53. MPLUS=0.5D0*(MG+ABS(MG))
  54. ELSE
  55. MPLUS=0.25D0 * ((MG+1.0D0)**2) + (BETA * ((MG**2 - 1.0D0)**2))
  56. ENDIF
  57. *
  58. IF(ABS(MD).GT.1.0D0)THEN
  59. MMINUS=0.5D0*(MD-ABS(MD))
  60. ELSE
  61. MMINUS=-0.25D0 * ((MD-1.0D0)**2) - (BETA * ((MD**2 - 1.0D0)**2))
  62. ENDIF
  63. C
  64. C N.B. MMINUS(M) = - MMPLUS(-M)
  65. C
  66. C**** PPLUS, PMINUS
  67. C
  68. *
  69. IF(ABS(MG).GT.1.0D0)THEN
  70. PPLUS=0.5D0*(1+ABS(MG)/MG)
  71. ELSE
  72. PPLUS=0.25D0 * ((MG+1.0D0)**2) * (2.0D0-MG) +
  73. * ALPHA * MG * ((MG**2 - 1.0D0)**2)
  74. ENDIF
  75. *
  76. IF(ABS(MD).GT.1.0D0)THEN
  77. PMINUS=0.5D0*(1-ABS(MD)/MD)
  78. ELSE
  79. PMINUS=0.25D0 * ((MD-1.0D0)**2) * (2.0D0+MD)
  80. * - ALPHA * MD * ((MD**2 - 1.0D0)**2)
  81. ENDIF
  82. C
  83. C N.B. PMINUS(M) = PPLUS(-M)
  84. C
  85. RETURN
  86. END
  87.  
  88.  
  89.  

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