$$$$ MDRECOMB * MDRECOMB PROCEDUR MAGN 13/09/11 21:15:01 7821 'DEBPROC' MDRECOMB RXT*'TABLE ' ; 'MESS' '$$$$ RECOMBINEUR $$$$' ; ** pas de temps courant Dt = RXT . 'TIC' . 'DT' ; Tps = RXT . 'TIC' . 'Tps' ; geo = RXT . 'GEO' ; * * debit massique cumulé entrant/sortant des recombineurs * (permet d'assurer le bilan 0D) QIN_H2 = 0.D0 ; QIN_H2O = 0.D0 ; QIN_O2 = 0.D0 ; QIN_N2 = 0.D0 ; QIN_HE = 0.D0 ; QIN_CO2 = 0.D0 ; QIN_CO = 0.D0 ; QOUT_H2 = 0.D0 ; QOUT_H2O = 0.D0 ; QOUT_O2 = 0.D0 ; QOUT_N2 = 0.D0 ; QOUT_HE = 0.D0 ; QOUT_CO2 = 0.D0 ; QOUT_CO = 0.D0 ; * NBREC = 'DIME' rxt . 'RECOMB' ; 'REPETER' BCLREC NBREC ; RECI = rxt . 'RECOMB' . &BCLREC ; RTRI = rxt . 'TIC' . 'RECOMB' . &BCLREC ; TYPR = RECI . 'TYPR' ; NSECTION = RECI . 'NSECTION' ; * ** objets modeles des recombineurs $NAME = 'CHAIN' '$REC' 'ent' &BCLREC ; $ENTREE = GEO. $NAME ; $NAME = 'CHAIN' '$REC' 'sor' &BCLREC ; $SORTIE = GEO. $NAME ; NAME = 'CHAIN' 'SREC' 'ent' &BCLREC ; SENTREE = GEO. NAME ; NAME = 'CHAIN' 'SREC' 'sor' &BCLREC ; SSORTIE = GEO. NAME ; FG_NAME = 'CHAIN' 'fgREC' 'ent' &BCLREC ; FG_ENT = GEO. FG_NAME ; FG_NAME = 'CHAIN' 'fgREC' 'sor' &BCLREC ; FG_SOR = GEO. FG_NAME ; * ** fraction massiques moyennes à l'entrée des recombineurs Ynul = 'KCHT' $ENTREE 'SCAL' 'SOMMET' 0.D0 ; 'SI' TBT . 'TH2' ; YH2e = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YH2' ; 'SINO' ; YH2e = Ynul ; 'FINSI' ; 'SI' TBT . 'TO2' ; YO2e = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YO2' ; 'SINO' ; YO2e = Ynul ; 'FINSI' ; 'SI' TBT . 'TN2' ; YN2e = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YN2' ; 'SINO' ; YN2e = Ynul ; 'FINSI' ; 'SI' TBT . 'VAPEUR' ; YH2Oe = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YVAP' ; 'SINO' ; YH2Oe = Ynul ; 'FINSI' ; 'SI' TBT . 'THE' ; YHEe = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YHE' ; 'SINO' ; YHEe = Ynul ; 'FINSI' ; 'SI' TBT . 'TCO' ; YCOe = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YCO' ; 'SINO' ; YCOe = Ynul ; 'FINSI' ; 'SI' TBT . 'TCO2' ; YCO2e = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YCO2' ; 'SINO' ; YCO2e = Ynul ; 'FINSI' ; * ** l'air est décomposé en oxygène et azote Rgair = RXT . 'TBT' . 'Rgair' ; Rgo2 = RXT . 'TBT' . 'Rgo2' ; Rgn2 = RXT . 'TBT' . 'Rgn2' ; YO2e = 'KCHT' $ENTREE 'SCAL' 'SOMMET' (YO2e + (0.21 * Rgair / Rgo2 * RXT . 'TIC' . 'YAIR')) ; YN2e = 'KCHT' $ENTREE 'SCAL' 'SOMMET' (YN2e + (0.79 * Rgair / Rgn2 * RXT . 'TIC' . 'YAIR')) ; * YH2emoy = ('SOMT' (YH2e * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; YH2Oemoy = ('SOMT' (YH2Oe * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; YO2emoy = ('SOMT' (YO2e * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; YN2emoy = ('SOMT' (YN2e * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; YHEemoy = ('SOMT' (YHEe * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; YCOemoy = ('SOMT' (YCOe * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; YCO2emoy = ('SOMT' (YCO2e * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; * ** Tgaz à l'entrée des recombineurs, Pmoyenne, Tplaque Te = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'TF' ; TINMOY = ('SOMT' (Te * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; Pe = 'EXTR' RXT . 'TIC' . 'PT' ('DIME' RXT . 'TIC' . 'PT') ; TP = 'EXTR' rtri . 'Tpla' ('DIME' rtri . 'Tpla') ; * *---------------------------- * Recombineur de type SIEMENS *---------------------------- * 'SI' ('EGA' typr 'SIEMENS') ; AA1 = RECI . 'A' ; BB1 = RECI . 'B' ; XH2ONI = RECI . 'XH2ON' ; XH2OFI = RECI . 'XH2OFF' ; BETAI = RECI . 'BETA' ; YH2s YO2s YN2s YH2Os YHEs YCO2s YCOs Ts TP DEB EFF XH2ONF = 'FLAM' 'RECOMBIN' YH2emoy YO2emoy YN2emoy YH2Oemoy YHEemoy YCO2emoy YCOemoy (TINMOY+273.15) TP Pe Dt 0 typr AA1 BB1 XH2ONI XH2OFI BETAI ; RECI . 'XH2ON' = XH2ONF ; * *--------------------------- * Recombineur de type HEATER *--------------------------- * 'SINO' ; PUI0 = 'IPOL' Tps RECI . 'PUISSANCE' ; PUI1 = 'IPOL' (Tps-Dt) RECI . 'PUISSANCE' ; A1 = PUI0 - PUI1 / DT ; FUITE = RECI . 'QHOUSING' ; HRAPP = RECI . 'HRAPP' ; CRAPP = RECI . 'CRAPP' ; YH2s YO2s YN2s YH2Os YHEs YCO2s YCOs Ts TP DEB = 'FLAM' 'RECOMBIN' YH2emoy YO2emoy YN2emoy YH2Oemoy YHEemoy YCO2emoy YCOemoy (TINMOY+273.15) TP Pe Dt 0 typr A1 fuite hrapp crapp ; EFF = 0.D0 ; 'FINSI' ; * * Sauvegarde des data rtri . 'Tpla' = rtri . 'Tpla' 'ET' ('PROG' TP) ; rtri . 'Tin' = rtri . 'Tin' 'ET' ('PROG' TINMOY) ; rtri . 'Tout' = rtri . 'Tout' 'ET' ('PROG' (TS-273.15)) ; rtri . 'DEB' = rtri . 'DEB' 'ET' ('PROG' (DEB*NSECTION)) ; rtri . 'EFF' = rtri . 'EFF' 'ET' ('PROG' EFF) ; rtri . 'YH2E' = rtri . 'YH2E' 'ET' ('PROG' YH2emoy) ; rtri . 'YH2OE' = rtri . 'YH2OE' 'ET' ('PROG' YH2Oemoy) ; rtri . 'YO2E' = rtri . 'YO2E' 'ET' ('PROG' YO2emoy) ; rtri . 'YN2E' = rtri . 'YN2E' 'ET' ('PROG' YN2emoy) ; rtri . 'YHEE' = rtri . 'YHEE' 'ET' ('PROG' YHEemoy) ; rtri . 'YCO2E' = rtri . 'YCO2E' 'ET' ('PROG' YCO2emoy) ; rtri . 'YCOE' = rtri . 'YCOE' 'ET' ('PROG' YCOemoy) ; rtri . 'YH2S' = rtri . 'YH2S' 'ET' ('PROG' YH2s) ; rtri . 'YH2OS' = rtri . 'YH2OS' 'ET' ('PROG' YH2Os) ; rtri . 'YO2S' = rtri . 'YO2S' 'ET' ('PROG' YO2s) ; rtri . 'YN2S' = rtri . 'YN2S' 'ET' ('PROG' YN2s) ; rtri . 'YHES' = rtri . 'YHES' 'ET' ('PROG' YHEs) ; rtri . 'YCO2S' = rtri . 'YCO2S' 'ET' ('PROG' YCO2s) ; rtri . 'YCOS' = rtri . 'YCOS' 'ET' ('PROG' YCOs) ; * * Calcul des vitesses débitantes à l'entrée et la sortie des PARs RG_IN = (RXT . 'TBT' . 'Rgvap' * YH2Oe) + (RXT . 'TBT' . 'Rgh2' * YH2e) + (RXT . 'TBT' . 'Rgo2' * YO2e) + (RXT . 'TBT' . 'Rgn2' * YN2e) + (RXT . 'TBT' . 'Rghe' * YHEe) + (RXT . 'TBT' . 'Rgco' * YCOe) + (RXT . 'TBT' . 'Rgco2' * YCO2e) ; RG_IN = ('SOMT' (RG_IN * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ; RG_OUT = (RXT.'TBT'.'Rgvap' * YH2Os) + (RXT.'TBT'.'Rgh2' * YH2s) + (RXT.'TBT'.'Rgo2' * YO2s) + (RXT.'TBT'.'Rgn2' * YN2s) + (RXT.'TBT'.'Rghe' * YHEs) + (RXT.'TBT'.'Rgco' * YCOs) + (RXT.'TBT'.'Rgco2' * YCO2s) ; RG_OUT = ('SOMT' (RG_OUT * ('DOMA' $SORTIE 'XXDIAGSI'))) / SSORTIE ; UN_IN = (DEB*NSECTION) * FG_ENT * RG_IN * (TINMOY + 273.15) / (SENTREE * PE) ; UN_OUT = (DEB*NSECTION) * FG_SOR * RG_OUT * TS / (SSORTIE * PE) ; rtri . 'Uin' = rtri . 'Uin' 'ET' ('PROG' (UN_IN)) ; rtri . 'Uout' = rtri . 'Uout''ET' ('PROG' (UN_OUT)) ; * ** densité des constituants à l'entrée et à la sortie des PARs RGT = RG_IN * (TINMOY + 273.15) ; rtri . 'RH2E' = rtri . 'RH2E' 'ET' ('PROG' (Pe * YH2emoy / rgt)) ; rtri . 'RH2OE' = rtri . 'RH2OE' 'ET' ('PROG' (Pe * YH2Oemoy / rgt)) ; rtri . 'RO2E' = rtri . 'RO2E' 'ET' ('PROG' (Pe * YO2emoy / rgt)) ; rtri . 'RN2E' = rtri . 'RN2E' 'ET' ('PROG' (Pe * YN2emoy / rgt)) ; rtri . 'RHEE' = rtri . 'RHEE' 'ET' ('PROG' (Pe * YHEemoy / rgt)) ; rtri . 'RCO2E' = rtri . 'RCO2E' 'ET' ('PROG' (Pe * YCO2emoy / rgt)) ; rtri . 'RCOE' = rtri . 'RCOE' 'ET' ('PROG' (Pe * YCOemoy / rgt)) ; RGT = RG_OUT * TS ; rtri . 'RH2S' = rtri . 'RH2S' 'ET' ('PROG' (Pe * YH2s / rgt)) ; rtri . 'RH2OS' = rtri . 'RH2OS' 'ET' ('PROG' (Pe * YH2Os / rgt)) ; rtri . 'RO2S' = rtri . 'RO2S' 'ET' ('PROG' (Pe * YO2s / rgt)) ; rtri . 'RN2S' = rtri . 'RN2S' 'ET' ('PROG' (Pe * YN2s / rgt)) ; rtri . 'RHES' = rtri . 'RHES' 'ET' ('PROG' (Pe * YHEs / rgt)) ; rtri . 'RCO2S' = rtri . 'RCO2S' 'ET' ('PROG' (Pe * YCO2s / rgt)) ; rtri . 'RCOS' = rtri . 'RCOS' 'ET' ('PROG' (Pe * YCOs / rgt)) ; * ** enthalpie massique entrant dans le recombineur pour le bilan 0D Cph2_e Cphe_e Cpo2_e Cpn2_e Cpco2_e Cpco_e Cpair_e = CALCP TINMOY ; Cph2_s Cphe_s Cpo2_s Cpn2_s Cpco2_s Cpco_s Cpair_s = CALCP (TS-273.15) ; Cpvap = RXT . 'TBT' . 'Cpvap' ; H_IN = Cpvap * YH2Oemoy ; H_IN = Cph2_e * YH2emoy + H_IN ; H_IN = Cpo2_e * YO2emoy + H_IN ; H_IN = Cpn2_e * YN2emoy + H_IN ; H_IN = Cphe_e * YHEemoy + H_IN ; H_IN = Cpco2_e * YCO2emoy + H_IN ; H_IN = Cpco_e * YCOemoy + H_IN ; H_IN = TINMOY + 273.15 * H_IN ; H_OUT = Cpvap * YH2Os ; H_OUT = Cph2_s * YH2s + H_OUT ; H_OUT = Cpo2_s * YO2s + H_OUT ; H_OUT = Cpn2_s * YN2s + H_OUT ; H_OUT = Cphe_s * YHEs + H_OUT ; H_OUT = Cpco2_s * YCO2s + H_OUT ; H_OUT = Cpco_s * YCOs + H_OUT ; H_OUT = H_OUT * TS ; rtri . 'Hin' = rtri . 'Hin' 'ET' ('PROG' H_IN ) ; rtri . 'Hout' = rtri . 'Hout' 'ET' ('PROG' H_OUT) ; * ** débit massique pour le bilan 0D NDEB = DEB * NSECTION ; QIN_H2 = ndeb * YH2emoy + QIN_H2 ; QIN_H2O = ndeb * YH2Oemoy + QIN_H2O ; QIN_O2 = ndeb * YO2emoy + QIN_O2 ; QIN_N2 = ndeb * YN2emoy + QIN_N2 ; QIN_HE = ndeb * YHEemoy + QIN_HE ; QIN_CO2 = ndeb * YCO2emoy + QIN_CO2 ; QIN_CO = ndeb * YCOemoy + QIN_CO ; QOUT_H2 = ndeb * YH2S + QOUT_H2 ; QOUT_H2O = ndeb * YH2OS + QOUT_H2O ; QOUT_O2 = ndeb * YO2S + QOUT_O2 ; QOUT_N2 = ndeb * YN2S + QOUT_N2 ; QOUT_HE = ndeb * YHES + QOUT_HE ; QOUT_CO2 = ndeb * YCO2S + QOUT_CO2 ; QOUT_CO = ndeb * YCOS + QOUT_CO ; * 'FIN' BCLREC ; trt = RXT . 'TIC' ; 'MESS' 'Débit total de H2 in/out (kg/s): ' QIN_H2 QOUT_H2 ; 'MESS' 'Débit total de H2O in/out (kg/s): ' QIN_H2O QOUT_H2O ; 'MESS' 'Débit total de O2 in/out (kg/s): ' QIN_O2 QOUT_O2 ; 'MESS' 'Débit total de N2 in/out (kg/s): ' QIN_N2 QOUT_N2 ; 'MESS' 'Débit total de HE in/out (kg/s): ' QIN_HE QOUT_HE ; 'MESS' 'Débit total de CO2 in/out (kg/s): ' QIN_CO2 QOUT_CO2 ; 'MESS' 'Débit total de CO in/out (kg/s): ' QIN_CO QOUT_CO ; trt . 'QIN_H2' = trt . 'QIN_H2' 'ET' ('PROG' QIN_H2 ) ; trt . 'QIN_H2O' = trt . 'QIN_H2O' 'ET' ('PROG' QIN_H2O ) ; trt . 'QIN_O2' = trt . 'QIN_O2' 'ET' ('PROG' QIN_O2 ) ; trt . 'QIN_N2' = trt . 'QIN_N2' 'ET' ('PROG' QIN_N2 ) ; trt . 'QIN_HE' = trt . 'QIN_HE' 'ET' ('PROG' QIN_HE ) ; trt . 'QIN_CO2' = trt . 'QIN_CO2' 'ET' ('PROG' QIN_CO2 ) ; trt . 'QIN_CO' = trt . 'QIN_CO' 'ET' ('PROG' QIN_CO ) ; trt . 'QOUT_H2' = trt . 'QOUT_H2' 'ET' ('PROG' QOUT_H2 ) ; trt . 'QOUT_H2O' = trt . 'QOUT_H2O' 'ET' ('PROG' QOUT_H2O) ; trt . 'QOUT_O2' = trt . 'QOUT_O2' 'ET' ('PROG' QOUT_O2 ) ; trt . 'QOUT_N2' = trt . 'QOUT_N2' 'ET' ('PROG' QOUT_N2 ) ; trt . 'QOUT_HE' = trt . 'QOUT_HE' 'ET' ('PROG' QOUT_HE ) ; trt . 'QOUT_CO2' = trt . 'QOUT_CO2' 'ET' ('PROG' QOUT_CO2) ; trt . 'QOUT_CO' = trt . 'QOUT_CO' 'ET' ('PROG' QOUT_CO ) ; 'FINPROC' ;