Télécharger fausm3.eso

Retour à la liste

Numérotation des lignes :

  1. C FAUSM3 SOURCE CHAT 05/01/12 23:56:47 5004
  2. SUBROUTINE FAUSM3(NESP,
  3. & GAMG,ROG,PG,UNG,UTG,UVG,
  4. & GAMD,ROD,PD,UND,UTD,UVD,
  5. & YG,YD,FLU1,
  6. & CELLT)
  7. C************************************************************************
  8. C
  9. C PROJET : CASTEM 2000
  10. C
  11. C NOM : FAUSM3 (3D)
  12. C
  13. C DESCRIPTION : Formulation Volumes Finis pour les Equations
  14. C d'Euler Multi-Especes relatives à un melange
  15. C de gaz ideals.
  16. C
  17. C Calcul du flux aux interfaces avec la methode
  18. C AUSM-PLUS de M.-S. Liou
  19. C
  20. C (voir:
  21. C 1) BECCANTINI, PAILLERE,
  22. C "Upwind Flux Splitting Schemes..."
  23. C RAPPORT DMT 97//268
  24. C 2) M.-S. LIOU "A sequel to AUSM: AUSM+"
  25. C JCP, 129:364:382, 1996
  26. C )
  27. C
  28. C LANGUAGE : FORTRAN 77
  29. C
  30. C AUTEUR : A. BECCANTINI DRN/DMT/SEMT/LTMF
  31. C
  32. C************************************************************************
  33. C
  34. C APPELES
  35. C
  36. C FAUSMP ------ FUAUSM
  37. C
  38. C
  39. C************************************************************************
  40. C
  41. C**** Entrées:
  42. C
  43. C NESP = nombre d'especes considérées dans les Equations
  44. C d'Euler
  45. C
  46. C GAMG, GAMD = les "gamma" du gaz (gauche et droite)
  47. C
  48. C ROG, ROD = les densités
  49. C
  50. C PG, PD = les pressions
  51. C
  52. C UNG, UND = vitesses normales
  53. C
  54. C UTG, UTD,
  55. C UVG, UVD = vitesses tangentielles
  56. C
  57. C YG, YD = tables des fractiones massiques
  58. C
  59. C**** Sorties:
  60. C
  61. C FLU1 = table du flux a l'interface dans le repaire
  62. C (n,t), i.e.
  63. C (rho*un, rho*un*un + p, rho*un*ut, rho*un*ht,
  64. C rho*un*y1, ...)
  65. C
  66. C CELLT = condition de stabilité, i.e.
  67. C
  68. C dT/diamax < cellt
  69. C
  70. C************************************************************************
  71. C
  72. C HISTORIQUE (Anomalies et modifications éventuelles)
  73. C
  74. C HISTORIQUE : Créé le 30.10.2000
  75. C
  76. C************************************************************************
  77. C
  78. C N.B.: Toutes les variables sont DECLAREES
  79. C
  80. C
  81. IMPLICIT INTEGER(I-N)
  82. INTEGER NESP, I1
  83. REAL*8 GAMG,ROG,PG
  84. & ,GAMD,ROD,PD
  85. & ,GM1G,AG2,AG,UNG,UTG,UVG,MG,HTG
  86. & ,GM1D,AD2,AD,UND,UTD,UVD,MD,HTD
  87. & ,YG(*),YD(*),FLU1(*),CELLT
  88. & ,ALPHA,BETA, MPLUS, MMINUS, PPLUS, PMINUS
  89. & ,AMED, MMED, AMMED, MMEDP, MMEDM, PMED
  90. PARAMETER(ALPHA = 0.1875D0,BETA=0.125D0)
  91. C
  92. C
  93. C**** YG, YD, FLU1, déjà definis avant
  94. C
  95. C Dans le cas Euler monoespece, on doit
  96. C avoir :
  97. C YG(1) = YD(1) = 0.0D0
  98. C
  99. C
  100. C**** Etat "gauche"
  101. C
  102. C AG = vitesse du son
  103. C MG = nombre de Mach normal
  104. C HTG = enthalpie totale
  105. C
  106. GM1G = GAMG - 1.0D0
  107. AG2 = GAMG * PG/ ROG
  108. AG = SQRT(AG2)
  109. HTG = AG2 /GM1G + 0.5D0 * (UNG*UNG + UTG*UTG + UVG*UVG)
  110. C
  111. C**** Etat "droite"
  112. C
  113. C AD = vitesse du son
  114. C MD = nombre de Mach normal
  115. C HTD = enthalpie totale
  116. C
  117. GM1D = GAMD - 1.0D0
  118. AD2 = GAMD * PD/ ROD
  119. AD = SQRT(AD2)
  120. HTD = AD2 / GM1D + 0.5D0 * (UND*UND + UTD*UTD + UVD*UVD)
  121. C
  122. AMED = 0.5D0 * (AG + AD)
  123. C AMED = SQRT(AG * AD)
  124. MG = UNG / AMED
  125. MD = UND / AMED
  126. CALL FUAUSM(ALPHA,BETA,MG,MD,MPLUS,MMINUS,PPLUS,PMINUS)
  127. MMED = MPLUS + MMINUS
  128. AMMED = ABS(MMED)
  129. MMEDP = 0.5D0 * (MMED + AMMED)
  130. MMEDM = 0.5D0 * (MMED - AMMED)
  131. PMED = PG * PPLUS + PD * PMINUS
  132. C
  133. CELLT = (AMMED + 1) * AMED
  134. C
  135. C**** Le flux
  136. C
  137. FLU1(1) = AMED * ( MMEDP * ROG + MMEDM * ROD)
  138. FLU1(2) = AMED * ( MMEDP * ROG * UNG + MMEDM * ROD * UND) + PMED
  139. FLU1(3) = AMED * ( MMEDP * ROG * UTG + MMEDM * ROD * UTD )
  140. FLU1(4) = AMED * ( MMEDP * ROG * UVG + MMEDM * ROD * UVD )
  141. FLU1(5) = AMED * ( MMEDP * ROG * HTG + MMEDM * ROD * HTD )
  142. DO I1 = 1, NESP, 1
  143. FLU1(5+I1) = AMED * ( MMEDP * ROG * YG(I1)
  144. & + MMEDM * ROD * YD(I1))
  145. ENDDO
  146. C
  147. RETURN
  148. END
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  

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