fluxvl
C FLUXVL SOURCE CHAT 05/01/13 00:05:22 5004 & GAMG,ROG,PG,UNG,UTG, & GAMD,ROD,PD,UND,UTD, & YG,YD,FLU1,FLU2, & CELLT) C************************************************************************ C C PROJET : CASTEM 2000 C C NOM : FLUXVL C C DESCRIPTION : Formulation Volumes Finis pour les Equations C d'Euler Multi-Especes relatives à un melange C de gaz "calorically perfect". C C Calcul du flux aux interfaces avec la methode C "Flux Vector Splitting" de van Leer. C C (voir: C 1) BECCANTINI, PAILLERE, C "Upwind Flux Splitting Schemes..." C RAPPORT DMT 97//268 C 2) B. VAN LEER C "Flux Vector Splittings for the 1990's" C 1990. Invited Lecture, NASA Lewis Research C Center C 3) B. VAN LEER C "Flux Vector Splitting for the Euler C Equations" C Report ICASE No. 82-30, 1982 ) C C LANGAGE : FORTRAN 77 C C AUTEUR : A. BECCANTINI DRN/DMT/SEMT/TTMF C C************************************************************************ C C APPELES C C FLUXVL ------ FLUPVL C | C --------- FLUMVL C C C************************************************************************ C C**** Entrées: C C NESP = nombre d'especes considérées dans les Equations C d'Euler C C GAMG, GAMD = les "gamma" du gaz (gauche et droite) C C ROG, ROD = les densités C C PG, PD = les pressions C C UNG, UND = vitesses normales C C UTG, UTD = vitesses tangentielles C C YG, YD = tables des fractiones massiques C C**** Sorties: C C FLU1 = table du flux a l'interface dans le repaire C (n,t), i.e. C (rho*un, rho*un*un + p, rho*un*ut, rho*un*ht, C rho*un*y1, ...) C C FLU2 = table de travail, utilizé ici mais definie C avant C C CELLT = condition de stabilité, i.e. C C dT/diamax < cellt C C************************************************************************ C C HISTORIQUE (Anomalies et modifications éventuelles) C C HISTORIQUE : Créé le 6.1.98 C C************************************************************************ C C N.B.: Toutes les variables sont DECLAREES C C IMPLICIT INTEGER(I-N) INTEGER NESP, I1 REAL*8 GAMG,ROG,PG & ,GAMD,ROD,PD & ,GM1G,AG2,AG,UNG,UTG,MG,HTG & ,GM1D,AD2,AD,UND,UTD,MD,HTD & ,CELLT,CELLT0,AMG,AMD & ,YG(*),YD(*),FLU1(*),FLU2(*) C C C**** YG, YD, FLU1, FLU2 déjà definis avant C C Dans le cas Euler monoespece, on doit C avoir : C YG(1) = YD(1) = 0.0D0 C C C**** Onde de "gauche" a "droite" C C AG = vitesse du son C MG = nombre de Mach normal C HTG = enthalpie totale C GM1G = GAMG - 1.0D0 AG2 = GAMG * PG/ ROG AG = SQRT(AG2) MG = UNG / AG AMG = ABS(MG) HTG = AG2 /GM1G + 0.5D0 * (UNG*UNG + UTG*UTG) CELLT = (2.0D0*GAMG + (AMG*(3.0D0-GAMG)))/(GAMG+3.0D0) & /((AMG+1.0D0)*AG) C C C**** Onde de "droite" a "gauche". C C AD = vitesse du son C MD = nombre de Mach normal C HTD = enthalpie totale C C GM1D = GAMD - 1.0D0 AD2 = GAMD * PD/ ROD AD = SQRT(AD2) MD = UND / AD AMD = ABS(MD) HTD = AD2 / GM1D + 0.5D0 * (UND*UND + UTD*UTD) CELLT0 = (2.0D0*GAMD + (AMD*(3.0D0-GAMD)))/(GAMD+3.0D0) & /((AMD+1.0D0)*AD) CELLT = MIN(CELLT,CELLT0) C C C DO I1 = 1, NESP+4 FLU1(I1) = FLU1(I1) + FLU2(I1) ENDDO C C RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales