Télécharger flpvl2.eso

Retour à la liste

Numérotation des lignes :

flpvl2
  1. C FLPVL2 SOURCE CHAT 05/01/13 00:04:01 5004
  2. C FLPVLH SOURCE BECC 97/12/23 22:13:54 3017
  3. SUBROUTINE FLPVL2(NESP,GAMG,ROG,MG,AG,UTG,UVG,HTG,Y,FLUX)
  4. C************************************************************************
  5. C
  6. C PROJET : CASTEM 2000
  7. C
  8. C NOM : FLPVLH
  9. C
  10. C DESCRIPTION : Voir FLUVLH
  11. C
  12. C Onde de Gauche à Droite
  13. C
  14. C LANGUAGE : FORTRAN 77
  15. C
  16. C AUTEUR : A. BECCANTINI DRN/DMT/SEMT/TTMF
  17. C
  18. C************************************************************************
  19. C
  20. C APPELES : aucun
  21. C
  22. C************************************************************************
  23. C
  24. C**** Entrées:
  25. C
  26. C NESP = nombre d'especes in FRAMAS
  27. C
  28. C GAMG = le "gamma" (à gauche)
  29. C
  30. C ROG = la densité
  31. C
  32. C MG = nombre de Mach (normale)
  33. C
  34. C AG = vitesse du son
  35. C
  36. C UTG = vitesse tangentielle
  37. C
  38. C Y = table des fractiones massiques
  39. C
  40. C**** Sorties:
  41. C
  42. C FLUX = table du flux "gauche -> droite" a
  43. C l'interface
  44. C
  45. C************************************************************************
  46. C
  47. C HISTORIQUE (Anomalies et modifications éventuelles)
  48. C
  49. C HISTORIQUE : Créé le 6.1.98
  50. C
  51. C************************************************************************
  52. C
  53. C N.B.: Toutes les variables sont declarées explicitement
  54. C
  55. C
  56. C
  57. IMPLICIT INTEGER(I-N)
  58. INTEGER I1, NESP
  59. REAL*8 GAMG,ROG,MG,AG,UTG,UVG,HTG
  60. & ,GM1G,MPLUS, CELL, CELLM
  61. & ,Y(*),FLUX(*)
  62. C
  63.  
  64. C**** N.B. :
  65. C
  66. C FLUX(2) = MPLUS * AG * ROG * UNG + PPLUS * PG
  67. C
  68. C PG = ROG * AG * AG / GAMG
  69. C
  70. C ABS(MG) < 1 -> PPLUS = MPLUS * (2 - MG)
  71. C
  72. C ABS(MG) > 1 -> PPLUS = MPLUS / MG
  73. C
  74.  
  75. C
  76. GM1G = GAMG - 1.0D0
  77. IF(ABS(MG) .LE. 1.0D0)THEN
  78. MPLUS = 0.5D0 * (MG + 1.0D0)
  79. MPLUS = MPLUS * MPLUS
  80. CELL = (GM1G * MG+2.0D0)*AG/GAMG
  81. ELSE
  82. MPLUS = 0.5D0 * (MG + ABS(MG))
  83. CELL = (MG + 1.0D0/GAMG/MG)*AG
  84. ENDIF
  85. CELLM = MPLUS * AG * ROG
  86. C
  87. FLUX(1) = CELLM
  88. FLUX(2) = CELLM * CELL
  89. FLUX(3) = CELLM * UTG
  90. FLUX(4) = CELLM * UVG
  91. FLUX(5) = CELLM * HTG
  92. C
  93. C**** N.B. NESP = 0 -> no boucle
  94. C
  95. DO I1 = 1, NESP
  96. FLUX(5+I1) = CELLM * Y(I1)
  97. ENDDO
  98. C
  99. C
  100. RETURN
  101. END
  102.  
  103.  
  104.  
  105.  

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