Download mdrecomb.procedur

Back to the list

   1 : * MDRECOMB  PROCEDUR  MAGN      13/09/11    21:15:01     7821           
   2 : 'DEBPROC' MDRECOMB RXT*'TABLE   ' ;
   3 : 'MESS' '$$$$ RECOMBINEUR $$$$' ;
   4 : ** pas de temps courant
   5 : Dt  = RXT . 'TIC' . 'DT' ;
   6 : Tps = RXT . 'TIC' . 'Tps' ;
   7 : geo = RXT . 'GEO' ;
   8 : *
   9 : * debit massique cumulé entrant/sortant des recombineurs
  10 : * (permet d'assurer le bilan 0D)
  11 : QIN_H2   = 0.D0 ;
  12 : QIN_H2O  = 0.D0 ;
  13 : QIN_O2   = 0.D0 ;
  14 : QIN_N2   = 0.D0 ;
  15 : QIN_HE   = 0.D0 ;
  16 : QIN_CO2  = 0.D0 ;
  17 : QIN_CO   = 0.D0 ;
  18 : QOUT_H2  = 0.D0 ;
  19 : QOUT_H2O = 0.D0 ;
  20 : QOUT_O2  = 0.D0 ;
  21 : QOUT_N2  = 0.D0 ;
  22 : QOUT_HE  = 0.D0 ;
  23 : QOUT_CO2 = 0.D0 ;
  24 : QOUT_CO  = 0.D0 ;
  25 : *
  26 : NBREC = 'DIME' rxt . 'RECOMB' ;
  27 : 'REPETER' BCLREC NBREC ;
  28 :    RECI = rxt . 'RECOMB' . &BCLREC ;
  29 :    RTRI  = rxt . 'TIC' . 'RECOMB' . &BCLREC ;
  30 :    TYPR     = RECI . 'TYPR' ;
  31 :    NSECTION = RECI . 'NSECTION' ;
  32 : *
  33 : ** objets modeles des recombineurs
  34 :    $NAME = 'CHAIN' '$REC' 'ent' &BCLREC ;
  35 :    $ENTREE = GEO. $NAME ;
  36 :    $NAME = 'CHAIN' '$REC' 'sor' &BCLREC ;
  37 :    $SORTIE = GEO. $NAME ;
  38 :    NAME = 'CHAIN' 'SREC' 'ent' &BCLREC ;
  39 :    SENTREE = GEO. NAME ;
  40 :    NAME = 'CHAIN' 'SREC' 'sor' &BCLREC ;
  41 :    SSORTIE = GEO. NAME ;
  42 :    FG_NAME = 'CHAIN' 'fgREC' 'ent' &BCLREC ;
  43 :    FG_ENT  = GEO. FG_NAME ;
  44 :    FG_NAME = 'CHAIN' 'fgREC' 'sor' &BCLREC ;
  45 :    FG_SOR  = GEO. FG_NAME ;
  46 : *
  47 : ** fraction massiques moyennes à l'entrée des recombineurs
  48 :    Ynul  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' 0.D0 ;
  49 :    'SI' TBT . 'TH2' ;
  50 :       YH2e  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YH2' ;
  51 :    'SINO' ;
  52 :       YH2e  = Ynul ;
  53 :    'FINSI' ;
  54 :    'SI' TBT . 'TO2' ;
  55 :       YO2e  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YO2' ;
  56 :    'SINO' ;
  57 :       YO2e  = Ynul ;
  58 :    'FINSI' ;
  59 :    'SI' TBT . 'TN2' ;
  60 :       YN2e  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YN2' ;
  61 :    'SINO' ;
  62 :       YN2e  = Ynul ;
  63 :    'FINSI' ;
  64 :    'SI' TBT . 'VAPEUR' ;
  65 :       YH2Oe = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YVAP' ;
  66 :    'SINO' ;
  67 :       YH2Oe = Ynul ;
  68 :    'FINSI' ;
  69 :    'SI' TBT . 'THE' ;
  70 :       YHEe  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YHE' ;
  71 :    'SINO' ;
  72 :       YHEe  = Ynul ;
  73 :    'FINSI' ;
  74 :    'SI' TBT . 'TCO' ;
  75 :       YCOe  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YCO' ;
  76 :    'SINO' ;
  77 :       YCOe  = Ynul ;
  78 :    'FINSI' ;
  79 :    'SI' TBT . 'TCO2' ;
  80 :       YCO2e = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'YCO2' ;
  81 :    'SINO' ;
  82 :       YCO2e = Ynul ;
  83 :    'FINSI' ;
  84 : *
  85 : ** l'air est décomposé en oxygène et azote
  86 :    Rgair = RXT . 'TBT' . 'Rgair' ;
  87 :    Rgo2  = RXT . 'TBT' . 'Rgo2' ;
  88 :    Rgn2  = RXT . 'TBT' . 'Rgn2' ;
  89 :    YO2e  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' (YO2e
  90 :          + (0.21 * Rgair / Rgo2 * RXT . 'TIC' . 'YAIR')) ;
  91 :    YN2e  = 'KCHT' $ENTREE 'SCAL' 'SOMMET' (YN2e
  92 :          + (0.79 * Rgair / Rgn2 * RXT . 'TIC' . 'YAIR')) ;
  93 : *
  94 :    YH2emoy  = ('SOMT' (YH2e  * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
  95 :    YH2Oemoy = ('SOMT' (YH2Oe * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
  96 :    YO2emoy  = ('SOMT' (YO2e  * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
  97 :    YN2emoy  = ('SOMT' (YN2e  * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
  98 :    YHEemoy  = ('SOMT' (YHEe  * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
  99 :    YCOemoy  = ('SOMT' (YCOe  * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
 100 :    YCO2emoy = ('SOMT' (YCO2e * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
 101 : *
 102 : ** Tgaz à l'entrée des recombineurs, Pmoyenne, Tplaque
 103 :    Te = 'KCHT' $ENTREE 'SCAL' 'SOMMET' RXT . 'TIC' . 'TF' ;   
 104 :    TINMOY = ('SOMT' (Te * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
 105 :    Pe = 'EXTR' RXT . 'TIC' . 'PT' ('DIME' RXT . 'TIC' . 'PT') ;
 106 :    TP = 'EXTR' rtri . 'Tpla' ('DIME' rtri . 'Tpla') ;
 107 : *
 108 : *----------------------------
 109 : * Recombineur de type SIEMENS
 110 : *----------------------------
 111 : *
 112 :    'SI' ('EGA' typr 'SIEMENS') ;
 113 :       AA1    = RECI . 'A' ;
 114 :       BB1    = RECI . 'B' ;
 115 :       XH2ONI = RECI . 'XH2ON' ;
 116 :       XH2OFI = RECI . 'XH2OFF' ;
 117 :       BETAI  = RECI . 'BETA' ;
 118 :      YH2s YO2s YN2s YH2Os YHEs YCO2s YCOs Ts TP DEB EFF XH2ONF
 119 :      = 'FLAM' 'RECOMBIN'
 120 :      YH2emoy YO2emoy YN2emoy YH2Oemoy YHEemoy YCO2emoy YCOemoy
 121 :      (TINMOY+273.15) TP Pe Dt 0 typr AA1 BB1 XH2ONI XH2OFI BETAI ;
 122 :      RECI . 'XH2ON' = XH2ONF ;
 123 : *
 124 : *---------------------------
 125 : * Recombineur de type HEATER
 126 : *---------------------------
 127 : *
 128 :    'SINO' ;
 129 :      PUI0 = 'IPOL' Tps      RECI . 'PUISSANCE' ;
 130 :      PUI1 = 'IPOL' (Tps-Dt) RECI . 'PUISSANCE' ;
 131 :      A1 = PUI0 - PUI1 / DT ;
 132 :      FUITE = RECI . 'QHOUSING' ;
 133 :      HRAPP = RECI . 'HRAPP' ;
 134 :      CRAPP = RECI . 'CRAPP' ;
 135 :      YH2s YO2s YN2s YH2Os YHEs YCO2s YCOs Ts TP DEB
 136 :      = 'FLAM' 'RECOMBIN'
 137 :      YH2emoy YO2emoy YN2emoy YH2Oemoy YHEemoy YCO2emoy YCOemoy
 138 :      (TINMOY+273.15) TP Pe Dt 0 typr A1 fuite hrapp crapp ;
 139 :       EFF = 0.D0 ;
 140 :    'FINSI' ;
 141 : *
 142 : * Sauvegarde des data
 143 :    rtri . 'Tpla'  = rtri . 'Tpla'  'ET' ('PROG' TP)       ;
 144 :    rtri . 'Tin'   = rtri . 'Tin'   'ET' ('PROG' TINMOY)   ;
 145 :    rtri . 'Tout'  = rtri . 'Tout'  'ET' ('PROG' (TS-273.15))    ;
 146 :    rtri . 'DEB'   = rtri . 'DEB'   'ET' ('PROG' (DEB*NSECTION)) ;
 147 :    rtri . 'EFF'   = rtri . 'EFF'   'ET' ('PROG' EFF)      ;
 148 :    rtri . 'YH2E'  = rtri . 'YH2E'  'ET' ('PROG' YH2emoy)  ;
 149 :    rtri . 'YH2OE' = rtri . 'YH2OE' 'ET' ('PROG' YH2Oemoy) ;
 150 :    rtri . 'YO2E'  = rtri . 'YO2E'  'ET' ('PROG' YO2emoy)  ;
 151 :    rtri . 'YN2E'  = rtri . 'YN2E'  'ET' ('PROG' YN2emoy)  ;
 152 :    rtri . 'YHEE'  = rtri . 'YHEE'  'ET' ('PROG' YHEemoy)  ;
 153 :    rtri . 'YCO2E' = rtri . 'YCO2E' 'ET' ('PROG' YCO2emoy) ;   
 154 :    rtri . 'YCOE'  = rtri . 'YCOE'  'ET' ('PROG' YCOemoy)  ;
 155 :    rtri . 'YH2S'  = rtri . 'YH2S'  'ET' ('PROG' YH2s)  ;
 156 :    rtri . 'YH2OS' = rtri . 'YH2OS' 'ET' ('PROG' YH2Os) ;
 157 :    rtri . 'YO2S'  = rtri . 'YO2S'  'ET' ('PROG' YO2s)  ;
 158 :    rtri . 'YN2S'  = rtri . 'YN2S'  'ET' ('PROG' YN2s)  ;
 159 :    rtri . 'YHES'  = rtri . 'YHES'  'ET' ('PROG' YHEs)  ;
 160 :    rtri . 'YCO2S' = rtri . 'YCO2S' 'ET' ('PROG' YCO2s) ;
 161 :    rtri . 'YCOS'  = rtri . 'YCOS'  'ET' ('PROG' YCOs)  ;
 162 : *
 163 : * Calcul des vitesses débitantes à l'entrée et la sortie des PARs
 164 :    RG_IN = (RXT . 'TBT' . 'Rgvap' * YH2Oe)
 165 :          + (RXT . 'TBT' . 'Rgh2'  * YH2e) 
 166 :          + (RXT . 'TBT' . 'Rgo2'  * YO2e) 
 167 :          + (RXT . 'TBT' . 'Rgn2'  * YN2e) 
 168 :          + (RXT . 'TBT' . 'Rghe'  * YHEe) 
 169 :          + (RXT . 'TBT' . 'Rgco'  * YCOe) 
 170 :          + (RXT . 'TBT' . 'Rgco2' * YCO2e) ;
 171 :    RG_IN = ('SOMT' (RG_IN * ('DOMA' $ENTREE 'XXDIAGSI'))) / SENTREE ;
 172 :    RG_OUT = (RXT.'TBT'.'Rgvap' * YH2Os) 
 173 :           + (RXT.'TBT'.'Rgh2'  * YH2s) 
 174 :           + (RXT.'TBT'.'Rgo2'  * YO2s) 
 175 :           + (RXT.'TBT'.'Rgn2'  * YN2s) 
 176 :           + (RXT.'TBT'.'Rghe'  * YHEs) 
 177 :           + (RXT.'TBT'.'Rgco'  * YCOs) 
 178 :           + (RXT.'TBT'.'Rgco2' * YCO2s) ; 
 179 :    RG_OUT = ('SOMT' (RG_OUT * ('DOMA' $SORTIE 'XXDIAGSI'))) / SSORTIE ;
 180 :    UN_IN  = (DEB*NSECTION) * FG_ENT * RG_IN  * (TINMOY + 273.15)
 181 :           / (SENTREE * PE) ;
 182 :    UN_OUT = (DEB*NSECTION) * FG_SOR * RG_OUT * TS
 183 :           / (SSORTIE * PE) ;
 184 :    rtri . 'Uin'  = rtri . 'Uin' 'ET' ('PROG' (UN_IN))  ;
 185 :    rtri . 'Uout' = rtri . 'Uout''ET' ('PROG' (UN_OUT)) ;
 186 : *
 187 : ** densité des constituants à l'entrée et à la sortie des PARs
 188 :    RGT  = RG_IN * (TINMOY + 273.15) ;
 189 :    rtri . 'RH2E'  = rtri . 'RH2E'  'ET' ('PROG' (Pe * YH2emoy  / rgt)) ;
 190 :    rtri . 'RH2OE' = rtri . 'RH2OE' 'ET' ('PROG' (Pe * YH2Oemoy / rgt)) ;
 191 :    rtri . 'RO2E'  = rtri . 'RO2E'  'ET' ('PROG' (Pe * YO2emoy  / rgt)) ;
 192 :    rtri . 'RN2E'  = rtri . 'RN2E'  'ET' ('PROG' (Pe * YN2emoy  / rgt)) ;
 193 :    rtri . 'RHEE'  = rtri . 'RHEE'  'ET' ('PROG' (Pe * YHEemoy  / rgt)) ;
 194 :    rtri . 'RCO2E' = rtri . 'RCO2E' 'ET' ('PROG' (Pe * YCO2emoy / rgt)) ;
 195 :    rtri . 'RCOE'  = rtri . 'RCOE'  'ET' ('PROG' (Pe * YCOemoy  / rgt)) ;
 196 :    RGT  = RG_OUT * TS ;
 197 :    rtri . 'RH2S'  = rtri . 'RH2S'  'ET' ('PROG' (Pe * YH2s  / rgt)) ;
 198 :    rtri . 'RH2OS' = rtri . 'RH2OS' 'ET' ('PROG' (Pe * YH2Os / rgt)) ;
 199 :    rtri . 'RO2S'  = rtri . 'RO2S'  'ET' ('PROG' (Pe * YO2s  / rgt)) ;
 200 :    rtri . 'RN2S'  = rtri . 'RN2S'  'ET' ('PROG' (Pe * YN2s  / rgt)) ;
 201 :    rtri . 'RHES'  = rtri . 'RHES'  'ET' ('PROG' (Pe * YHEs  / rgt)) ;
 202 :    rtri . 'RCO2S' = rtri . 'RCO2S' 'ET' ('PROG' (Pe * YCO2s / rgt)) ;
 203 :    rtri . 'RCOS'  = rtri . 'RCOS'  'ET' ('PROG' (Pe * YCOs  / rgt)) ;
 204 : *
 205 : ** enthalpie massique entrant dans le recombineur pour le bilan 0D
 206 : Cph2_e Cphe_e Cpo2_e Cpn2_e Cpco2_e Cpco_e Cpair_e = CALCP TINMOY ;
 207 : Cph2_s Cphe_s Cpo2_s Cpn2_s Cpco2_s Cpco_s Cpair_s = CALCP (TS-273.15) ;
 208 : Cpvap = RXT . 'TBT' . 'Cpvap' ;
 209 :    H_IN  = Cpvap   * YH2Oemoy ;
 210 :    H_IN  = Cph2_e  * YH2emoy  + H_IN ;
 211 :    H_IN  = Cpo2_e  * YO2emoy  + H_IN ;
 212 :    H_IN  = Cpn2_e  * YN2emoy  + H_IN ;
 213 :    H_IN  = Cphe_e  * YHEemoy  + H_IN ;
 214 :    H_IN  = Cpco2_e * YCO2emoy + H_IN ;
 215 :    H_IN  = Cpco_e  * YCOemoy  + H_IN ;
 216 :    H_IN  = TINMOY + 273.15 * H_IN ;
 217 :    H_OUT = Cpvap   * YH2Os ;
 218 :    H_OUT = Cph2_s  * YH2s  + H_OUT ;
 219 :    H_OUT = Cpo2_s  * YO2s  + H_OUT ;
 220 :    H_OUT = Cpn2_s  * YN2s  + H_OUT ;
 221 :    H_OUT = Cphe_s  * YHEs  + H_OUT ;
 222 :    H_OUT = Cpco2_s * YCO2s + H_OUT ;
 223 :    H_OUT = Cpco_s  * YCOs  + H_OUT ;
 224 :    H_OUT = H_OUT  * TS ;
 225 :    rtri . 'Hin'  = rtri . 'Hin'  'ET' ('PROG' H_IN ) ;
 226 :    rtri . 'Hout' = rtri . 'Hout' 'ET' ('PROG' H_OUT) ;
 227 : *
 228 : ** débit massique pour le bilan 0D
 229 :    NDEB = DEB * NSECTION ; 
 230 :    QIN_H2   = ndeb * YH2emoy  + QIN_H2   ;
 231 :    QIN_H2O  = ndeb * YH2Oemoy + QIN_H2O  ;
 232 :    QIN_O2   = ndeb * YO2emoy  + QIN_O2   ;
 233 :    QIN_N2   = ndeb * YN2emoy  + QIN_N2   ;
 234 :    QIN_HE   = ndeb * YHEemoy  + QIN_HE   ;
 235 :    QIN_CO2  = ndeb * YCO2emoy + QIN_CO2  ;
 236 :    QIN_CO   = ndeb * YCOemoy  + QIN_CO   ;
 237 :    QOUT_H2  = ndeb * YH2S     + QOUT_H2  ;
 238 :    QOUT_H2O = ndeb * YH2OS    + QOUT_H2O ;
 239 :    QOUT_O2  = ndeb * YO2S     + QOUT_O2  ;
 240 :    QOUT_N2  = ndeb * YN2S     + QOUT_N2  ;
 241 :    QOUT_HE  = ndeb * YHES     + QOUT_HE  ;
 242 :    QOUT_CO2 = ndeb * YCO2S    + QOUT_CO2 ;
 243 :    QOUT_CO  = ndeb * YCOS     + QOUT_CO  ;
 244 : *
 245 : 'FIN' BCLREC ;
 246 : trt = RXT . 'TIC' ;
 247 : 'MESS' 'Débit total de H2  in/out (kg/s): ' QIN_H2  QOUT_H2  ;
 248 : 'MESS' 'Débit total de H2O in/out (kg/s): ' QIN_H2O QOUT_H2O ;
 249 : 'MESS' 'Débit total de O2  in/out (kg/s): ' QIN_O2  QOUT_O2  ;
 250 : 'MESS' 'Débit total de N2  in/out (kg/s): ' QIN_N2  QOUT_N2  ;
 251 : 'MESS' 'Débit total de HE  in/out (kg/s): ' QIN_HE  QOUT_HE  ;
 252 : 'MESS' 'Débit total de CO2 in/out (kg/s): ' QIN_CO2 QOUT_CO2 ;
 253 : 'MESS' 'Débit total de CO  in/out (kg/s): ' QIN_CO  QOUT_CO  ;
 254 : trt . 'QIN_H2'   = trt . 'QIN_H2'   'ET' ('PROG' QIN_H2  ) ;
 255 : trt . 'QIN_H2O'  = trt . 'QIN_H2O'  'ET' ('PROG' QIN_H2O ) ;
 256 : trt . 'QIN_O2'   = trt . 'QIN_O2'   'ET' ('PROG' QIN_O2  ) ;
 257 : trt . 'QIN_N2'   = trt . 'QIN_N2'   'ET' ('PROG' QIN_N2  ) ;
 258 : trt . 'QIN_HE'   = trt . 'QIN_HE'   'ET' ('PROG' QIN_HE  ) ;
 259 : trt . 'QIN_CO2'  = trt . 'QIN_CO2'  'ET' ('PROG' QIN_CO2 ) ;
 260 : trt . 'QIN_CO'   = trt . 'QIN_CO'   'ET' ('PROG' QIN_CO  ) ;
 261 : trt . 'QOUT_H2'  = trt . 'QOUT_H2'  'ET' ('PROG' QOUT_H2 ) ;
 262 : trt . 'QOUT_H2O' = trt . 'QOUT_H2O' 'ET' ('PROG' QOUT_H2O) ;
 263 : trt . 'QOUT_O2'  = trt . 'QOUT_O2'  'ET' ('PROG' QOUT_O2 ) ;
 264 : trt . 'QOUT_N2'  = trt . 'QOUT_N2'  'ET' ('PROG' QOUT_N2 ) ;
 265 : trt . 'QOUT_HE'  = trt . 'QOUT_HE'  'ET' ('PROG' QOUT_HE ) ;
 266 : trt . 'QOUT_CO2' = trt . 'QOUT_CO2' 'ET' ('PROG' QOUT_CO2) ;
 267 : trt . 'QOUT_CO'  = trt . 'QOUT_CO'  'ET' ('PROG' QOUT_CO ) ;
 268 : 'FINPROC' ;
 269 :  
 270 :  
 271 :  
 272 :  
 273 :  
 274 :  

© Cast3M 2003 - All rights reserved.
Disclaimer