***************************************************** * fichier : basmachQ.dgibi * ** modifie le 15/06/2014 passage EQPR -> EQEX * ***************************************************** ******************************************************************* * JEU DE DONNEES POUR TESTER LE BON FONCTIONNEMENT DES OPERATEURS * * NSKE, PRESSION, TSCAL. INJECTION D'UN MELANGE DE GAZ DANS UN * * VOLUME FERME ET PRESSURISATION. ALGORITHME 'FAIBLES MACH' POUR * * LES EQUATIONS NAVIER-STOKES FAIBLEMENT COMPRESSIBLES + MODELE * * DE TURBULENCE K-E. ON TESTE SUR LA CONSERVATION DE LA MASSE * * H. PAILLERE SEMT/TTMF AVRIL 1997 * * FORMULATION EF ELEMENTS QUA8 * ******************************************************************* ************************************************************* * PROCEDURE PROCINJ * ************************************************************* DEBPROC PROCINJ ; * recuperation des anciennes conditions aux limites : * modification des conditions aux limites : RHOJet = RV.INCO.'PM'/PSIJET ; UJet = GJet/RHOJet ; KJet = 0.05*UJet*UJet ; EJet = 0.02*(UJet**3.)/DINJ ; cl_KN = 0.D0 * cl_KN + KJet ; cl_EN = 0.D0 * cl_EN + EJet ; * reimposition des conditions aux limites : RV.'CLIM' = cl_YH2 + cl_YO2 + cl_YH2O + cl_GNX + cl_GNY + cl_KN + cl_EN + cl_PSI ; detr cl_YH2 ; detr cl_YO2 ; detr cl_YH2O ; detr cl_GNX ; detr cl_GNY ; detr cl_KN ; detr cl_EN ; detr cl_PSI ; *tc mise en commentaire du finsi ci-dessous *FINSI ; 'FINPROC' as2 ama1 ; ********************************************************************* * PROCEDURE CALCUL1 ********************************************************************* DEBPROC CALCUL1 ; RV.PASDETPS.'DELTAT' = 0.01 ; * filtres sur fractions massiques et calcul de la fraction massique d'azote YH2 = RV.INCO.'YH2' ; YO2 = RV.INCO.'YO2' ; YH2O = RV.INCO.'YH2O' ; RV.INCO.'YH2' = YH2 ; RV.INCO.'YO2' = YO2 ; RV.INCO.'YH2O' = YH2O ; * calcul de rho à partir de la loi d'état des gaz parfaits RV.INCO.'RHOM' = RHOM ; * calcul du terme (rho-rhom)*g de la QDM * calcul la vitesse à partir de la qdm GN = RV.INCO.'GN' ; RV.INCO.'UN' = un ; * calcul de nut à partir de mut et de rho 'FINPROC' as2 ama1 ; ********************************************************************* * PROCEDURE CALCUL2 ********************************************************************* DEBPROC CALCUL2 ; * on récupère le pas de temps Dt = RV.PASDETPS.'DELTAT' ; Dt = Dt * RV.'ALFA' ; * calcul l'intégrale se trouvant dans le terme Dp/Dt. * calcul de dPdt RV.INCO.'DEBIT' = q0 ; dPdt = ZZT + q0 ; dPdt = dPdt*(RV.INCO.'PM')/VOLT/RV.INCO.'RHOM' ; * terme source de l'équation d'énergie zuzu = (gamma-1.)/gamma ; * terme source équation de Poisson Z1 = dPdt/RV.INCO.'PM' ; ZZS = ZZS * (-1.0) ; * calcul de l'évolution de la pression RV.INCO.'PM' = RV.INCO.'PM' + (dPdt*dt) ; * affichage informations toutes les 5 iterations DD = RV.PASDETPS.'NUPASDT' ; NN = DD/5 ; LO = (DD-(5*NN)) EGA 0 ; SI ( LO ) ; MESSAGE '==========================================================' ; MESSAGE 'TEMPS = ' RV.PASDETPS.'TPS' ' PRESSION = ' RV.INCO.'PM' ; MESSAGE 'MASSE INI =' MASINI ' MASSE TOTALE = ' (RV.INCO.'RHOM'*VOLT) ; RV.INCO.'TEMPS' = RV.INCO.'TEMPS' ET PT ; RV.INCO.'PRESS' = RV.INCO.'PRESS' ET PP ; RV.INCO.'MTOTA' = RV.INCO.'MTOTA' ET PMTO ; MESSAGE '==========================================================' ; FINSI ; 'FINPROC' as2 ama1 ; *************************************************************** * JEU DE DONNEES NURETH-8 : CALCUL DE DISTRIBUTION/COMBUSTION * * ALGORITHME 'COMPRESSIBLE FAIBLE MACH' SEMI-IMPLICITE * * === DISTRIBUTION === * *************************************************************** DISCR = 'MACRO' ; KPRES = 'CENTRE' ; BETAP = 1. ; *========================================================* * GENERATION DU MAILLAGE * *========================================================* L_A = 4.0 ; H_A = 4.0 ; L_B = 4.0 ; HINJ = 1.0 ; DINJ = 1.0 ; HAB = 1. ; DAB = 2.0 ; LAB = 1. ; DX = 1. ; DY = 1. ; ****************** * COMPARTIMENT A * ****************** A7 = 0. 0. ; A8 = HINJ 0. ; A1 = (HINJ+DINJ) 0. ; A2 = L_A 0.0 ; A3 = L_A HAB ; A4 = L_A (HAB+DAB) ; A5 = L_A H_A ; A6 = 0. H_A ; N78 = 'ENTIER' (HINJ/DX) ; N81 = 'ENTIER' (DINJ/DX) ; N12 = 'ENTIER' ((L_A-HINJ-DINJ)/DX) ; N23 = 'ENTIER' (HAB/DY) ; N34 = 'ENTIER' (DAB/DY) ; N45 = 'ENTIER' ((H_A-HAB-DAB)/DY) ; N56 = N78 + N81 + N12 ; N67 = N23 + N34 + N45 ; BAS_A = A7A8 ET A8A1 ET A1A2 ; DRO_A = A2A3 ET A3A4 ET A4A5 ; HAU_A = A5A6 ; GAU_A = A6A7 ; COMP_A = 'DALLER' BAS_A DRO_A HAU_A GAU_A 'PLAN' ; ****************** * COMPARTIMENT B * ****************** B1 = (L_A+LAB) 0. ; B2 = (L_A+LAB+L_B) 0. ; B7 = (L_A+LAB) (HAB+DAB) ; B8 = (L_A+LAB) HAB ; N36 = 'ENTIER' (L_B/DX) ; N67 = 'ENTIER' ((H_B-HAB-DAB)/DY) ; N78 = 'ENTIER' (DAB/DY) ; N81 = N23 - N67 - N78 ; N12 = N36 ; BAS_B = B1B2 ; DRO_B = B2B3 ; HAU_B = B3B6 ; GAU_B = B6B7 ET B7B8 ET B8B1 ; COMP_B = 'DALLER' BAS_B DRO_B HAU_B GAU_B 'PLAN' ; *************** * JONCTION AB * *************** NX = 'ENTIER' (LAB/DX) ; NY = 'ENTIER' (DAB/DY) ; J_AB = 'DALLER' BAS_AB DRO_AB HAU_AB GAU_AB 'PLAN' ; ******************** * MAILLAGE COMPLET * ******************** MT = COMP_A ET COMP_B ET J_AB ; 'ORIE' MT ; ****************** * TABLES DOMAINE * ****************** 'MESSAGE' 'VOLUME TOTAL = ' VOLT ; ****************************************** * FRONTIERES POUR CONDITIONS AUX LIMITES * ****************************************** MUR_HOR = A7A8 ET A1A2 ET BAS_AB ET B1B2 ET B3B6 ET HAU_AB ET A5A6 ; MUR_VER = A2A3 ET B8B1 ET B2B3 ET B6B7 ET A4A5 ET A6A7 ; BRECHE = A8A1 ; *========================================================* * DONNEES DU CALCUL DE DISTRIBUTION * *========================================================* *-------------------------------------- * masses molaires et constantes des gaz *-------------------------------------- MH2 = 2.0E-3 ; MO2 = 32.0E-3 ; MN2 = 28.0E-3 ; MH2O = 18.0E-3 ; Rg = 8.313 ; RH2 = Rg/MH2 ; RO2 = Rg/MO2 ; RN2 = Rg/MN2 ; RH2O = Rg/MH2O ; *---------------------------------------------------------- * fractions molaires des differents constituants du melange *---------------------------------------------------------- XH2 = 0.0 ; XH2O = 0.1 ; XO2 = 0.21*(1.0 - XH2 - XH2O) ; XN2 = 1.0 - XH2 - XH2O - XO2 ; *--------------------------------------------- * masse molaire du melange et constante du gaz *--------------------------------------------- M = (XH2*MH2) + (XO2*MO2) + (XN2*MN2) + (XH2O*MH2O) ; R = Rg/M ; *------------------------------------------------------------ * pression, temperature et densite du melange (loi d'etat GP) *------------------------------------------------------------ P = 1.0E5 ; T = 400.0 ; PSI = R*T ; RHO = P/PSI ; *------------------------ * Caractéristiques du jet *------------------------ XH2Jet = 0.1 ; XH2OJet = 0.3 ; XO2Jet = 0.21*( 1.0 - XH2Jet - XH2OJet ) ; XN2Jet = 1.0 - XH2Jet - XH2OJet - XO2Jet ; MJet = (XH2Jet*MH2) + (XH2OJet*MH2O) + (XO2Jet*MO2) + (XN2Jet*MN2) ; RJet = Rg/MJet ; TJet = 650.0 ; PSIJet = Rjet*Tjet ; RhoJet = P/PSIJet ; GJet = 10.*DINJ/(DINJ+(DX*0.5)) ; UJet = GJet/RhoJet ; KJet = 0.05*UJet*UJet ; EJet = 0.02*(UJet**3.)/DINJ ; *------------------------------------------------ * fractions massiques des differents constituants *------------------------------------------------ YH2 = XH2*MH2/M ; YO2 = XO2*MO2/M ; YN2 = XN2*MN2/M ; YH2O = XH2O*MH2O/M ; YH2Jet = XH2Jet*MH2/MJet ; YH2OJet =XH2OJet*MH2O/MJet ; YO2Jet = XO2Jet*MO2/MJet ; YN2Jet =XN2Jet*MN2/MJet ; *------------------------------------------------------------------ * Cp des différents constituants et du mélange (supposés constants) *------------------------------------------------------------------ CPH2 = 13514.04 + (1.684537*T) ; CPH2O = 1715.632 + (0.552805*T) ; CPN2 = 1006.15 + (0.1387166*T) ; CPO2 = 907.580 + (0.1420522*T) ; CP = (YH2*CPH2) + (YH2O*CPH2O) + (YO2*CPO2) + (YN2*CPN2) ; gamma = CP/(CP-R) ; *---------------------------------------------------- * calcul d'une vitesse de référence (pour les tracés) *---------------------------------------------------- uref = gamma*R*T ; uref = uref**0.5 ; uref = 0.01*uref ; ampl = 1./uref ; *------------------------------------------------------------------------ * Prandtl, Schmidt, viscosité (loi de Sutherland), conductivité thermique * coefficients de diffusion moléculaire *------------------------------------------------------------------------ Pr = 0.7 ; Prt = 1.0 ; Sct = 1.0 ; Mu = 1.716E-5*((T/273.0)**1.5)*(273.0+110.5)/(T+110.5) ; Nu = Mu/RHO ; Lambda = Mu*CP/Pr ; alpha = Lambda/RHO/CP ; DH2O = 2.55E-5 ; DH2 = 7.12E-5 ; DO2 = 2.06E-5 ; *============================================================== * TABLE EQEX CONTENANT LES EQUATIONS A RESOUDRE : * 0) FILTRE K-E * 1) QUANTITE DE MOUVEMENT --- OPERATEUR NSKE * 2) EQUATION DE L'ENERGIE --- OPERATEUR TSCAL * 3) TRANSPORT DES ESPECES --- OPERATEUR TSCAL * AINSI QUE 2 PROCEDURES (CALCUL1 ET CALCUL2) POUR L'ALGORITHME * 'FAIBLE MACH' * 4) CONDITIONS AUX LIMITES *============================================================== 'ZONE' $MT 'OPER' 'PROCINJ' 'ZONE' $MT 'OPER' 'CALCUL1' 'ZONE' $MT 'OPER' 'FILTREKE' UJet DINJ 'INCO' 'KN' 'EN' 'OPTI' 'CONS' 'ZONE' $MT 'OPER' 'NSKE' 'RHOC' MU 'MUT' 'UN' 'ROG' 'INCO' 'GN' 'KN' 'EN' 'OPTI' 'NOCONS' 'ZONE' $MT 'OPER' 'TSCAL' alpha 'UN' 'S' 'NUT' Prt 'INCO' 'PSIN' ; RV = 'EQEX' RV 'ZONE' $MT 'OPER' 'TSCAL' DH2 'UN' 0.0 'NUT' SCT 'INCO' 'YH2' 'ZONE' $MT 'OPER' 'TSCAL' DO2 'UN' 0.0 'NUT' SCT 'INCO' 'YO2' 'ZONE' $MT 'OPER' 'TSCAL' DH2O 'UN' 0.0 'NUT' SCT 'INCO' 'YH2O' 'ZONE' $MT 'OPER' 'CALCUL2' ; RV = 'EQEX' RV 'CLIM' 'GN' 'UIMP' MUR_VER 0.0 'GN' 'VIMP' MUR_HOR 0.0 'GN' 'UIMP' BRECHE 0.0 'GN' 'VIMP' BRECHE GJet 'KN' 'TIMP' BRECHE KJet 'EN' 'TIMP' BRECHE EJet ; RV = 'EQEX' RV 'CLIM' 'PSIN' 'TIMP' BRECHE PSIJet 'YH2' 'TIMP' BRECHE YH2Jet 'YO2' 'TIMP' BRECHE YO2Jet 'YH2O' 'TIMP' BRECHE YH2OJet ; 'ZONE' $MT 'OPER' 'DFDT' 1. 'GN' 'DELTAT' 'INCO' 'GN' 'ZONE' $MT 'OPER' 'DFDT' 1. 'KN' 'DELTAT' 'INCO' 'KN' 'ZONE' $MT 'OPER' 'DFDT' 1. 'EN' 'DELTAT' 'INCO' 'EN' 'ZONE' $MT 'OPER' 'DFDT' 1. 'PSIN' 'DELTAT' 'INCO' 'PSIN' 'ZONE' $MT 'OPER' 'DFDT' 1. 'YH2' 'DELTAT' 'INCO' 'YH2' 'ZONE' $MT 'OPER' 'DFDT' 1. 'YO2' 'DELTAT' 'INCO' 'YO2' *=========================================================== * TABLE EQEX POUR L'EQUATION DE POISSON (SOLVEUR ELLIPTIQUE) *=========================================================== 'OPTI' 'EF' 'CENTREE' 'INCOD' KPRES 'CLIM' 'PRES' 'TIMP' MPI 0. ; rvp.'METHINV'.TYPINV=1 ; rvp.'METHINV'.IMPINV=0 ; rvp.'METHINV'.NITMAX=300; rvp.'METHINV'.PRECOND=3 ; rvp.'METHINV'.RESID =1.e-8 ; rvp.'METHINV' . 'FCPRECT'=100 ; rvp.'METHINV' . 'FCPRECI'=100 ; *========================================================== * TABLE INCO CONTENANT LES INCONNUES ET DONNEES DU PROBLEME *========================================================== RV.'NOMVI' = 'GN' ; RV.'INCO' = 'TABLE' 'INCO' ; RVP.'INCO' = RV.'INCO' ; * vitesse et quantité de mouvement * pression * température * variables modèle de turbulence * masse volumique RV.INCO.'RHOM'= RHO ; * fractions massiques * termes sources (Poisson/énergie/QDM) * pression RV.INCO.'PM' = P ; * progressions contenant certaines données * debit de masse RV.INCO.'DEBIT' = 0. ; exec rv ; MTHEO = MASINI + (RV.INCO.'DEBIT' * RV.PASDETPS.'TPS') ; MESSAGE MTHEO ; ERREUR 5 ; FINSI ; FIN ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales