Télécharger fluvl2.eso

Retour à la liste

Numérotation des lignes :

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

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