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