Télécharger fvcen3.eso

Retour à la liste

Numérotation des lignes :

fvcen3
  1. C FVCEN3 SOURCE KLOCZKO 05/06/14 21:15:17 5111
  2. C FVCEN3 SOURCE CHAT 05/01/13 00:13:50 5004
  3. SUBROUTINE FVCEN3(NESP,
  4. & GAMG,ROG,PG,UNG,UTG,UVG,
  5. & GAMD,ROD,PD,UND,UTD,UVD,
  6. & YG,YD,FLUX,
  7. & CELLT)
  8. C
  9. C************************************************************************
  10. C
  11. C PROJET : CASTEM 2000
  12. C
  13. C NOM : FVCEN3
  14. C
  15. C DESCRIPTION : Formulation Volumes Finis pour les Equations
  16. C d'Euler Multi-Especes relatives à un melange
  17. C de gaz ideals.
  18. C
  19. C Calcul du flux aux interfaces avec la méthode
  20. C centrée
  21. C
  22. C LANGAGE : FORTRAN 77
  23. C
  24. C AUTEUR : T. KLOCZKO DEN/DM2S/SFME/LTMF
  25. C
  26. C************************************************************************
  27. C
  28. C APPELES
  29. C
  30. C************************************************************************
  31. C
  32. C**** Entrées:
  33. C
  34. C NESP = nombre d'especes considérées dans les Equations
  35. C d'Euler
  36. C
  37. C GAMG, GAMD = les "gamma" du gaz (gauche et droite)
  38. C
  39. C ROG, ROD = les densités
  40. C
  41. C PG, PD = les pressions
  42. C
  43. C UNG, UND = vitesses normales
  44. C
  45. C UTG, UTD = vitesses tangentielles
  46.  
  47. C UVG, UVD = vitesses tangentielles
  48. C
  49. C YG, YD = tables des fractiones massiques
  50. C
  51. C**** Sorties:
  52. C
  53. C FLUX = table du flux a l'interface, i.e.
  54. C (rho*un, rho*un*un + p, rho*un*ut, rho*un*ht,
  55. C rho*un*y1, ...)
  56. C
  57. C CELLT = condition de stabilité, i.e.
  58. C
  59. C dT/diamax < cellt
  60. C
  61. C************************************************************************
  62. C
  63. C HISTORIQUE (Anomalies et modifications éventuelles)
  64. C
  65. C HISTORIQUE :
  66. C
  67. C************************************************************************
  68. C
  69. C N.B.: Toutes les variables sont DECLAREES
  70. C
  71. IMPLICIT INTEGER(I-N)
  72. INTEGER NESP,IESP
  73. REAL*8 ROG,ROD,PG,PD,UNG,UND,UTG,UTD,UVD,UVG
  74. & ,GAMG,GAMD
  75. & ,YG(*),YD(*),FLUX(*),CELLT,ROUN,ECIN
  76. C
  77. C**** A gauche
  78. C
  79. ROUN=ROG*UNG
  80. FLUX(1)=ROUN
  81. FLUX(2)=(ROUN*UNG)+PG
  82. FLUX(3)=ROUN*UTG
  83. FLUX(4)=ROUN*UVG
  84. ECIN=0.5D0*((UNG*UNG)+(UTG*UTG)+(UVG*UVG))
  85. FLUX(5)=(UNG*((GAMG/(GAMG-1.0D0))*PG))+(ROUN*ECIN)
  86. DO IESP=1,NESP,1
  87. FLUX(5+IESP)=ROUN*YG(IESP)
  88. ENDDO
  89. CELLT=(((GAMG*PG/ROG)**0.5D0)+ABS(UNG))
  90. C
  91. C**** A droite
  92. C
  93. ROUN=ROD*UND
  94. FLUX(1)=0.5D0*(FLUX(1)+ROUN)
  95. FLUX(2)=0.5D0*(FLUX(2)+((ROUN*UND)+PD))
  96. FLUX(3)=0.5D0*((FLUX(3)+(ROUN*UTD)))
  97. FLUX(4)=0.5D0*((FLUX(4)+(ROUN*UVD)))
  98. ECIN=0.5D0*((UND*UND)+(UTD*UTD)+(UVD*UVD))
  99. FLUX(5)=0.5D0*(FLUX(4)+((UND*((GAMD/(GAMD-1.0D0))*PD))+(ROUN*ECIN)
  100. $ ))
  101. DO IESP=1,NESP,1
  102. FLUX(5+IESP)=0.5D0*(FLUX(5+IESP)+(ROUN*YD(IESP)))
  103. ENDDO
  104. CELLT=MAX(CELLT,(((GAMD*PD/ROD)**0.5D0)+ABS(UND)))
  105. CELLT=1.0D0/CELLT
  106. C
  107. RETURN
  108. END
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  

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