Télécharger broche.procedur

Retour à la liste

Numérotation des lignes :

  1. * BROCHE PROCEDUR SERRE 21/06/28 21:15:01 11045
  2. 'DEBPROC' broche KAS*'MOT' nab*'ENTIER' rxt*'TABLE';
  3. *mess '=================== DEBUT BROCHE ===================';
  4.  
  5. GEO = rxt.'GEO' ;
  6. nub = nab ;
  7. ibr=index (rxt.'Sorties') ;
  8. Briches =rxt.'Sorties'.(ibr.nub) ;
  9. rxtsce =Briches.'scenario' ;
  10. GEO =Briches ;
  11. CTinj =chai 'Tinj' ;
  12. CKsi =chai 'Ksi' ;
  13. CQlj =chai 'Qlj' ;
  14. CHlj =chai 'Hlj' ;
  15.  
  16. TTOUT=FAUX ;
  17. TTINJ=FAUX ;
  18. THINJ=FAUX ;
  19. TTINJ=exist (rxtsce ) 'tinj' ;
  20. TTPEX=exist (rxtsce ) 'Pext' ;
  21. TTQEX=exist (rxtsce ) 'Qext' ;
  22. TTOUT=TTPEX ou TTQEX ;
  23.  
  24. Briches.'TTOUT'=TTOUT ;
  25.  
  26. *mess ' TTOUT TTPEX TTQEX ******************************';
  27. *list ttout; list ttpex ; list ttqex;
  28. *mess ' KAS=================' KAS;
  29. *mess ' TTOUT TTPEX TTQEX ******************************';
  30.  
  31. Si ((NON TTOUT) et (NON TTINJ)) ;
  32. Mess '*********************************************************' ;
  33. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  34. Mess ' ' ;
  35. Mess 'il faut imposer au moins tinj ou pression ! ' ;
  36. Mess '*********************************************************' ;
  37. ERREUR 21 ;
  38. Finsi ;
  39.  
  40. Si (TTPEX et TTQEX) ;
  41. Mess '*********************************************************' ;
  42. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  43. Mess ' ' ;
  44. Mess 'il faut choisir entre Clapet de décharge et extraction ' ;
  45. Mess '*********************************************************' ;
  46. ERREUR 21 ;
  47. Finsi ;
  48.  
  49. * Modifications ANTS du 06/01/2009
  50. * Evite d'avoir un debit d'injection nul
  51.  
  52. 'SI' (('NON' ('EXIS' rxtsce Qmodif)) et (TTINJ ou THINJ));
  53. 'MESS' '=============================================================' ;
  54. 'MESS' '= WARNING !! =' ;
  55. 'MESS' '= LES DEBITS D INJECTION NULS ONT ETE IMPOSES A 1E-10 =' ;
  56. 'MESS' '=============================================================' ;
  57. lstqxxx = 'MOTS' 'qeau' 'qliq' 'qair' 'qhe'
  58. 'qh2' 'qo2' 'qn2' 'qco' 'qco2' ;
  59. lmots1 = 'MOTS' ;
  60. 'REPE' bqxxx ('DIME' lstqxxx) ;
  61. lmots = 'EXTR' lstqxxx &bqxxx ;
  62. 'SI' ('EXIS' rxtsce lmots) ;
  63. lmots1 = lmots1 'ET' ('MOTS' lmots) ;
  64. 'FINSI' ;
  65. 'FIN' bqxxx ;
  66. mots1 = 'EXTR' lmots1 1 ;
  67. 'REPE' bvxxx ('DIME' rxtsce.mots1) ;
  68. indic = FAUX ;
  69. 'REPETER' bq1xxx ('DIME' lmots1) ;
  70. motsxx = 'EXTR' lmots1 &bq1xxx ;
  71. valxxx = 'EXTR' rxtsce.motsxx &bvxxx ;
  72. 'SI' ('>' valxxx 1.E-10) ;
  73. indic = VRAI ;
  74. 'QUIT' bq1xxx ;
  75. 'FINSI' ;
  76. 'FIN' bq1xxx ;
  77. 'SI' ('NON' indic) ;
  78. 'REMP' rxtsce.mots1 &bvxxx 1E-10 ;
  79. 'FINSI' ;
  80. 'FIN' bvxxx ;
  81. rxtsce.Qmodif = VRAI ;
  82. 'FINSI' ;
  83. * Fin modifications ANTS du 06/01/2009
  84.  
  85. ************************************************************************
  86. ********* DEBUT KAS1 ***************************************************
  87. ************************************************************************
  88.  
  89. 'SI KAS1' (EGA KAS 'KAS1');
  90.  
  91. * Initialisation des debits
  92. aex =1. ;
  93. Ksi =1. ;
  94. qliq =0. ; hliq =0. ; Mliqj = 0.0 ;
  95. qeau =0. ; hvap =0. ; Yvapj = 0.0 ;
  96. qair =0. ; hair =0. ; Yairj = 0.0 ;
  97. qhe =0. ; hhe =0. ; Yhej = 0.0 ;
  98. qh2 =0. ; hh2 =0. ; Yh2j = 0.0 ;
  99. qo2 =0. ; ho2 =0. ; Yo2j = 0.0 ;
  100. qn2 =0. ; hn2 =0. ; Yn2j = 0.0 ;
  101. qco =0. ; hco =0. ; Ycoj = 0.0 ;
  102. qco2 =0. ; hco2 =0. ; Yco2j = 0.0 ;
  103.  
  104. * Les donnees physiques
  105. Cpvap = TBT.'Cpvap' ;
  106. Lv = TBT.'Lv' ;
  107. Rabs = TBT.'Rabs' ;
  108. Rgh2 = TBT.'Rgh2' ; Mkh2 = TBT.'Mkh2' ;
  109. Rghe = TBT.'Rghe' ; Mkhe = TBT.'Mkhe' ;
  110. Rgo2 = TBT.'Rgo2' ; Mko2 = TBT.'Mko2' ;
  111. Rgn2 = TBT.'Rgn2' ; Mkn2 = TBT.'Mkn2' ;
  112. Rgco2 = TBT.'Rgco2' ; Mkco2 = TBT.'Mkco2' ;
  113. Rgco = TBT.'Rgco' ; Mkco = TBT.'Mkco' ;
  114. Rgvap = TBT.'Rgvap' ; Mkvap = TBT.'Mkvap' ;
  115. Rgair = TBT.'Rgair' ; Mkair = TBT.'Mkair' ;
  116.  
  117.  
  118. t = rxtsce .'t' ;
  119.  
  120. *------------------ TTOUT ----------------------------------------------
  121. *-- Formulation en Extraction ou clapet de décharge --------------------
  122. *------------------ TTOUT ----------------------------------------------
  123. 'SI TTOUT KAS1' TTOUT ;
  124.  
  125. $breche = Briches.'$sreche';
  126. brechei = Briches.'srechei';
  127. brechec = Briches.'srechec';
  128. breche = Briches.'sreche' ;
  129.  
  130. Rout=redu Breche tic.'RHO';
  131. diru = Briches.'diru' ;
  132.  
  133. Si(EGA (VALE DIME) 2);
  134. gjc = 'MANU' 'CHPO' brechec 2 'UX' 0.0 'UY' 0.0
  135. 'NATURE' 'DISCRET' ;
  136. Sinon ;
  137. gjc = 'MANU' 'CHPO' brechec 3 'UX' 0.0 'UY' 0.0 'UZ' 0.
  138. 'NATURE' 'DISCRET' ;
  139. Finsi;
  140.  
  141. *==============================================================
  142. * C'est la qu'on definit l'extraction
  143. *
  144. ******* OUT INI deb ******************************************
  145. Si (NON (exist rxt.'TIC' 'OUT'));
  146. mess ' on definit l extraction OUT ';
  147. rxt.'TIC'.'OUT'=table;
  148. rxt.'TIC'.'OUT'.'Tps' =prog;
  149. rxt.'TIC'.'OUT'.'Tfm' =prog;
  150. rxt.'TIC'.'OUT'.'PT' =prog;
  151. rxt.'TIC'.'OUT'.'Rhomn'=prog;
  152. rxt.'TIC'.'OUT'.'Uout' =prog;
  153. rxt.'TIC'.'OUT'.'Uoutn'=prog;
  154. rxt.'TIC'.'OUT'.'Qout'=prog;
  155. rxt.'TIC'.'OUT'.'Rdp' =prog;
  156. rxt.'TIC'.'OUT'.'Rsbr'=prog;
  157. Finsi;
  158. ******* OUT INI fin ******************************************
  159.  
  160. Pt =extr tic.'PT' ndl ;
  161. Tfm =extr tic.'Tfm' ndl ;
  162. Rhomn=extr tic.'Rhomn' ndl ;
  163.  
  164. Sout = rxtsce.'Section' ;
  165. Sbreche = mesu breche ;
  166. Rsbr = Sout/Sbreche ;
  167.  
  168. Si TTQEX ;
  169. mess ' +++++++++++++++++++++++++++++++++++++++++++++++++++++'
  170. '+++++++++++++++++++++++++++++++' ;
  171. mess ' + Extraction d un débit imposé ++++++++++++++++++++++'
  172. '+++++++++++++++++++++++++++++++' ;
  173. Rdp = 1. ;
  174. Pext = 0. ;
  175. Kext = 0. ;
  176. Bext = 0. ;
  177.  
  178. Si (Sout < 1.e-10) ;
  179. Qout = 0. ;
  180. Qvrai = 0. ;
  181. Qout = 0. ;
  182. Uout = 0. ;
  183. uus = 'KCHT' $breche 'VECT' 'SOMMET' (0.*diru) gjc ;
  184. mess 'ATTENTION: la section est < 1.e-10, on n extrait rien';
  185. mess ' +++++++++++++++++++++++++++++++++++++++++++++++++++++'
  186. '+++++++++++++++++++++++++++++++' ;
  187. Sinon ;
  188. Qout = 'IPOL' tps t (rxtsce .'Qext') ;
  189. Uout = Qout/Rhomn/Sout*Rsbr ;
  190.  
  191. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uout*diru) gjc;
  192. Qvrai = DBIT $breche uus ;
  193. alfa=qvrai/qout ;
  194. uoutn=uout/alfa ;
  195. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uoutn*diru) gjc;
  196. Briches.'gj' = uus ;
  197. Qvrai = DBIT $breche uus ;
  198. mess ' VERIFICATION (Qimpo) Qvrai=' Qvrai ' Qout=' Qout;
  199.  
  200. * Tinj = Tout ;
  201. * rxtsce .'Tj' = tinj ;
  202. mess ' Penceinte =' Pt ' Qout imposé=' Qout ' Uout=' Uoutn ;
  203. mess ' Rhomn=' Rhomn ' Tfm=' Tfm ' Sout=' Sout ;
  204.  
  205. mess ' +++++++++++++++++++++++++++++++++++++++++++++++++++++'
  206. '+++++++++++++++++++++++++++++++' ;
  207. Finsi ;
  208. Finsi ;
  209.  
  210. mess 'µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ' ;
  211. mess 'µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ' ;
  212.  
  213.  
  214. *µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ
  215. *µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ
  216.  
  217.  
  218. Si TTPEX ;
  219. mess ' +++++++++++++++++++++++++++++++++++++++++++++++++++++'
  220. '+++++++++++++++++++++++++++++++' ;
  221. mess ' + Modèle de clapet de décharge ++++++++++++++++++++++'
  222. '+++++++++++++++++++++++++++++++' ;
  223.  
  224. Pext = 'IPOL' tps t (rxtsce .'Pext') ;
  225. Kext = 'IPOL' tps t (rxtsce .'Kext') ;
  226. Bext = 'IPOL' tps t (rxtsce .'Bext') ;
  227. Uout = ((Pt - Pext)/Kext)**(1./Bext) ;
  228. Qout = Rhomn * Uout * Sout ;
  229. Rdp = Pt/Pext ;
  230.  
  231. ******* OUT **************************************************
  232. rxt.'TIC'.'OUT'.'Tps' =rxt.'TIC'.'OUT'.'Tps' et (prog tps) ;
  233. rxt.'TIC'.'OUT'.'Tfm' =rxt.'TIC'.'OUT'.'Tfm' et (prog Tfm) ;
  234. rxt.'TIC'.'OUT'.'PT' =rxt.'TIC'.'OUT'.'PT' et (prog PT) ;
  235. rxt.'TIC'.'OUT'.'Rhomn'=rxt.'TIC'.'OUT'.'Rhomn'et(prog Rhomn);
  236. rxt.'TIC'.'OUT'.'Rdp' =rxt.'TIC'.'OUT'.'Rdp' et (prog Rdp ) ;
  237. rxt.'TIC'.'OUT'.'Rsbr'=rxt.'TIC'.'OUT'.'Rsbr' et (prog Rsbr) ;
  238.  
  239. ******* OUT **************************************************
  240.  
  241. Si (Sout < 1.e-10) ;
  242. Qout = 0. ;
  243. Qvrai = 0. ;
  244. Uout = 0. ;
  245. Uoutn = 0. ;
  246. uus = 'KCHT' $breche 'VECT' 'SOMMET' (0.*diru) gjc ;
  247. mess ;
  248. mess 'ATTENTION: la section est < 1.e-10, on n extrait rien';
  249. mess ;
  250. Sinon ;
  251.  
  252. gamma=1.29;
  253. Pcr = Pt * ( ( (2./(gamma + 1.) )**(gamma/(gamma - 1.))));
  254. Co = (gamma * Pcr / rhom)**0.5 ;
  255. Qcr = Rhomn * Sout * Co ;
  256.  
  257. Si ((Pext < Pcr) et (Sout > 1.e-10)) ;
  258. Uout = Co * Rsbr ;
  259. Qout = Qcr ;
  260.  
  261. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uout*diru) gjc ;
  262. Qvrai = DBIT $breche uus ;
  263. alfa=qvrai/qout ;
  264. uoutn=uout/alfa ;
  265. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uoutn*diru) gjc;
  266. Briches.'gj' = uus ;
  267. Qvrai = DBIT $breche uus ;
  268. mess ' VERIFICATION (Clapet) Qvrai=' Qvrai ' Qout=' Qout;
  269.  
  270. mess ' Il y a un col sonique : Débit critique = ' Qcr ' Uout=' Uout ;
  271. Sinon ;
  272. Si (Uout > Co) ;
  273. Uout = Co * Rsbr ;
  274. Qout = Qcr ;
  275.  
  276. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uout*diru) gjc ;
  277. Qvrai = DBIT $breche uus ;
  278. alfa=qvrai/qout ;
  279. uoutn=uout/alfa ;
  280. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uoutn*diru) gjc;
  281. Briches.'gj' = uus ;
  282. Qvrai = DBIT $breche uus ;
  283. mess ' VERIFICATION (Clapet) Qvrai=' Qvrai ' Qout=' Qout;
  284.  
  285. mess ' Il y a qd même un col sonique : Débit critique = '
  286. Qcr ' Uout=' Uout ;
  287. Sinon ;
  288. Qout = Uout * Rsbr ;
  289. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uout*diru) gjc ;
  290. Qvrai = DBIT $breche uus ;
  291. alfa=qvrai/qout ;
  292. uoutn=uout/alfa ;
  293. uus = 'KCHT' $breche 'VECT' 'SOMMET' (Rhomn*uoutn*diru) gjc;
  294. Briches.'gj' = uus ;
  295. Qvrai = DBIT $breche uus ;
  296. mess ' VERIFICATION (Clapet) Qvrai=' Qvrai ' Qout=' Qout;
  297.  
  298. mess ' Il n y a pas de col sonique : Débit de sortie ' Qout
  299. ' Uout=' Uout ;
  300. Finsi ;
  301. Finsi ;
  302.  
  303. rxt.'TIC'.'OUT'.'Uout' =rxt.'TIC'.'OUT'.'Uout' et (prog Uout) ;
  304. ********rxt.'TIC'.'OUT'.'Uoutn'=rxt.'TIC'.'OUT'.'Uoutn' et (prog Uoutn) ;
  305. rxt.'TIC'.'OUT'.'Qout' =rxt.'TIC'.'OUT'.'Qout' et (prog Qout) ;
  306. mess ' Pext Penceinte Rapport de pression '
  307. 'Pression critique ';
  308. mess Pext Pt ' ' Rdp ' ' Pcr;
  309.  
  310. mess ' +++++++++++++++++++++++++++++++++++++++++++++++++++++'
  311. '+++++++++++++++++++++++++++++++' ;
  312. *
  313. *==============================================================
  314. Finsi ;
  315. FINSI ;
  316.  
  317.  
  318. mess ' VERIFICATION Qvrai=' Qvrai ' Qout=' Qout;
  319. Tout = redu tic.'TF' breche ;
  320.  
  321. Si(Qout > 0.) ;
  322. Tout = ('DBIT' $breche (Tout*uus)) / Qout ;
  323. Rout = ('DBIT' $breche (Rout*uus)) / Qout ;
  324. Roj = Rout ;
  325. Tinj= Tout ;
  326. Qj = Qout ;
  327. mess ' Tout=' Tout ' Rout=' Rout ' Qj=' Qj ;
  328. Sinon ;
  329. Rout=1.;
  330. Tout=0.;
  331. Roj = 1. ;
  332. Tinj= 0. ;
  333. Qj = 0. ;
  334. Finsi ;
  335.  
  336. src = 'DBIT' $breche uus 'IMPR' ;
  337.  
  338. Si (src < 0.);
  339. mess 'L Extraction est dans le mauvais sens ! ';
  340. erre 2;
  341. quitter broche;
  342. Finsi;
  343.  
  344. * $menvf = rxt.'GEO'.'$menvf' ;
  345. * ung=vect uus 0.5 ux uy uz jaune;
  346. * trace ung (doma $menvf maillage);
  347.  
  348. RHO =tic.'RHO' redu Breche ;
  349. YAIR=tic.'YAIR' redu Breche ;
  350. Y = YAIR ;
  351. qair = 'DBIT' $breche (uus*RHO*YAIR) ;
  352. nqj=1 ;
  353.  
  354. 'SI' TBT.'THE' ;
  355. nqj=nqj + 1 ;
  356. YHE =tic.'YHE' redu Breche ;
  357. qhe = 'DBIT' $breche (uus*YHE*RHO) ; Y=Y+YHE ; Finsi ;
  358.  
  359. 'SI' TBT.'TH2' ;
  360. nqj=nqj + 1 ;
  361. YH2 =tic.'YH2' redu Breche ;
  362. qh2 = 'DBIT' $breche (uus*YH2*RHO) ; Y=Y+YH2 ; Finsi ;
  363.  
  364. 'SI' TBT.'TO2' ;
  365. nqj=nqj + 1 ;
  366. YO2 =tic.'YO2' redu Breche ;
  367. qo2 = 'DBIT' $breche (uus*YO2*RHO) ; Y=Y+YO2 ; Finsi ;
  368.  
  369. 'SI' TBT.'TN2' ;
  370. nqj=nqj + 1 ;
  371. YN2 =tic.'YN2' redu Breche ;
  372. qn2 = 'DBIT' $breche (uus*YN2*RHO) ; Y=Y+YN2 ; Finsi ;
  373.  
  374. 'SI' TBT.'TCO';
  375. nqj=nqj + 1 ;
  376. YCO =tic.'YCO' redu Breche ;
  377. qco = 'DBIT' $breche (uus*YCO*RHO) ; Y=Y+YCO ; Finsi ;
  378.  
  379. 'SI' TBT.'TCO2' ;
  380. nqj=nqj + 1 ;
  381. YCO2 =tic.'YCO2' redu Breche ;
  382. qco2 = 'DBIT' $breche (uus*YCO2*RHO) ; Y=Y+YCO2;Finsi;
  383.  
  384. 'SI' TBT.'VAPEUR' ;
  385. nqj=nqj + 1 ;
  386. RVP =tic.'RVP' redu Breche ;
  387. qeau = 'DBIT' $breche (uus*RVP) ;
  388. YVP= RVP * (inve RHO) ;
  389. Y = Y + YVP ;
  390. 'FINSI' ;
  391.  
  392. Qj= qair + qhe + qh2 + qo2 + qn2 + qco + qco2 + qeau ;
  393.  
  394. Si (Sout < 1.e-10) ;
  395. deltaq = 0. ;
  396. Sinon ;
  397. W1=0. ;
  398. * deltaq=(w1*(Qj-Qout)/nqj) + ((1.-w1)*((Qout/Qj) - 1.) );
  399. deltaq=Qout/Qj ;
  400. Finsi ;
  401.  
  402. qair = qair*deltaq ;
  403. 'SI' TBT.'THE' ; qhe = qhe*deltaq ;Finsi ;
  404. 'SI' TBT.'TH2' ; qh2 = qh2*deltaq ;Finsi ;
  405. 'SI' TBT.'TO2' ; qo2 = qo2*deltaq ;Finsi ;
  406. 'SI' TBT.'TN2' ; qn2 = qn2*deltaq ;Finsi ;
  407. 'SI' TBT.'TCO' ; qco = qco*deltaq ;Finsi ;
  408. 'SI' TBT.'TCO2'; qco2= qco2*deltaq ;Finsi ;
  409. 'SI' TBT.'VAPEUR'; qeau = qeau*deltaq ;Finsi ;
  410.  
  411. Qj= qair + qhe + qh2 + qo2 + qn2 + qco + qco2 + qeau ;
  412.  
  413. mess '========> Qj=' Qj '=======> Qout=' Qout ' Deltaq=' deltaq ;
  414.  
  415. 'SI'('NON'('EGA' Qj 0.)) ; iQj=1./Qj ; 'SINON' ; iQj=0. ; 'FINSI' ;
  416. Yvapj = qeau '*' iQj ; Yairj = qair '*' iQj ; Yhej = qhe '*' iQj ;
  417. Yh2j = qh2 '*' iQj ; Yo2j = qo2 '*' iQj ; Yn2j = qn2 '*' iQj ;
  418. Yco2j = qco2 '*' iQj ; Ycoj = qco '*' iQj ;
  419.  
  420. * On ne change pas le signe de Qj mais celui de qeau et autres
  421. aex=-1.;
  422. qeau = aex * qeau ;
  423. qliq = aex * qliq ;
  424. qair = aex * qair ;
  425. qhe = aex * qhe ;
  426. qh2 = aex * qh2 ;
  427. qo2 = aex * qo2 ;
  428. qn2 = aex * qn2 ;
  429. qco = aex * qco ;
  430. qco2 = aex * qco2 ;
  431. mess 'qeau=' qeau ' qair=' qair ' qo2=' qo2 ' qn2=' qn2;
  432. * mess ' MINI MAXI YSortie=' (mini Y) (maxi Y);
  433.  
  434. TTINJ=FAUX;
  435. Tinj=Tout;
  436. 'FINSI TTOUT KAS1' ;
  437. *-------------- FIN TTOUT ----------------------------------------------
  438. *-- Formulation en Extraction ou Clapet de décharge --------------------
  439.  
  440.  
  441.  
  442. *------------------ TTINJ ----------------------------------------------
  443. 'SI TTINJ KAS1' TTINJ ;
  444.  
  445. $breche = Briches.'$sreche';
  446. brechei = Briches.'srechei';
  447. brechec = Briches.'srechec';
  448. breche = Briches.'sreche' ;
  449.  
  450. Roj=redu Breche tic.'RHO';
  451. diru =Briches.'diru' ;
  452.  
  453. Si(EGA (VALE DIME) 2);
  454. gjc = 'MANU' 'CHPO' brechec 2 'UX' 0.0 'UY' 0.0
  455. 'NATURE' 'DISCRET' ;
  456. Sinon ;
  457. gjc = 'MANU' 'CHPO' brechec 3 'UX' 0.0 'UY' 0.0 'UZ' 0.
  458. 'NATURE' 'DISCRET' ;
  459. Finsi;
  460.  
  461. $menvf = rxt.'GEO'.'$menvf' ;
  462.  
  463. tinj = 'IPOL' tps t (rxtsce .'tinj') ;
  464. qair = 'IPOL' tps t (rxtsce .'qair') ;
  465. 'SI' TBT.'THE' ;
  466. qhe= 'IPOL' tps t (rxtsce .'qhe') ; Finsi ;
  467. 'SI' TBT.'TH2' ;
  468. qh2= 'IPOL' tps t (rxtsce .'qh2') ; Finsi ;
  469. 'SI' TBT.'TO2' ;
  470. qo2= 'IPOL' tps t (rxtsce .'qo2') ; Finsi ;
  471. 'SI' TBT.'TN2' ;
  472. qn2= 'IPOL' tps t (rxtsce .'qn2') ; Finsi ;
  473. 'SI' TBT.'TCO';
  474. qco= 'IPOL' tps t (rxtsce .'qco') ; Finsi ;
  475. 'SI' TBT.'TCO2' ;
  476. qco2='IPOL' tps t (rxtsce .'qco2') ; Finsi ;
  477.  
  478. Qj= qair + qhe + qh2 + qo2 + qn2 + qco + qco2 ;
  479.  
  480. 'SI' TBT.'VAPEUR' ;
  481. qeau = 'IPOL' tps t (rxtsce .'qeau') ;
  482. Qj = Qj + qeau ;
  483. Pt =extr tic.'PT' ndl ;
  484. Tfm=extr tic.'Tfm' ndl ;
  485.  
  486. 'SI'('NON'('EGA' Qj 0.)) ; iQj=1./Qj ; 'SINON' ; iQj=0. ; 'FINSI' ;
  487. Yvapj = qeau '*' iQj ; Yairj = qair '*' iQj ; Yhej = qhe '*' iQj ;
  488. Yh2j = qh2 '*' iQj ; Yo2j = qo2 '*' iQj ; Yn2j = qn2 '*' iQj ;
  489. Yco2j = qco2 '*' iQj ; Ycoj = qco '*' iQj ;
  490.  
  491.  
  492. Mj=((Yvapj/Mkvap)+(Yairj/Mkair)+(Yhej/Mkhe)+(Yh2j/Mkh2)+(Yo2j/Mko2)+
  493. (Yn2j*Mkn2)+(Yco2j/Mkco2)+(Ycoj/Mkco))**(-1.) ;
  494. Xvj=Yvapj*Mj/Mkvap ;
  495. Pvj = Pt * Xvj ;
  496.  
  497. * 'SI' (TBT.'CONDMAS') ;
  498. * Pt =extr tic.'PT' ndl ;
  499. * Tfm=extr tic.'Tfm' ndl ;
  500. * Qj=qeau + qair + qhe + qh2 + qo2 + qn2 + qco + qco2;
  501. *a peu près Xvj = Yvj on fera mieux après
  502. * Xvj = qeau/Qt ;
  503. * Pvj = Pt * Xvj ;
  504. * Hinj = VARI HVS Pvj (Tinj + 273.15) ;
  505. * Tsat = VARI TSATP Pt ;
  506. * Hliq = VARI HLS Pvj Tsat ;
  507. * Hvap = VARI HVS Pvj Tsat ;
  508. * mess ' Hinj=' Hinj ' Hliq=' Hliq ' Hvap=' Hvap ;
  509. * mess 'Pvj=' pvj ' Tsat = ' Tsat ' Tinj=' (Tinj + 273.15);
  510. * Ksi=(Hinj - Hliq)/(Hvap - Hliq) ;
  511. * Ksi=MINI (PROG 1. Ksi) ;
  512. * mess ' Ksi ' Ksi ' qeau= ' qeau ' qvap=' (qeau*Ksi);
  513. **? Mliqbr= Mliqbr + (qeau*(1. - Ksi)) ;
  514. * qeau = qeau * Ksi ;
  515. * 'FINSI' ;
  516.  
  517. 'SINON' ;
  518.  
  519. 'SI'('NON'('EGA' Qj 0.)) ; iQj=1./Qj ; 'SINON' ; iQj=0. ; 'FINSI' ;
  520. Yvapj = qeau '*' iQj ; Yairj = qair '*' iQj ; Yhej = qhe '*' iQj ;
  521. Yh2j = qh2 '*' iQj ; Yo2j = qo2 '*' iQj ; Yn2j = qn2 '*' iQj ;
  522. Yco2j = qco2 '*' iQj ; Ycoj = qco '*' iQj ;
  523.  
  524.  
  525. 'FINSI' ;
  526.  
  527. Si(EGA Qj 0.) ;
  528. Roj = 0. ;
  529. Sinon ;
  530. Pt = 'EXTR' (tic.'PT') ndl ;
  531. Rgj = (TBT.'Rgvap' * Yvapj) + (TBT.'Rgair' * Yairj) +
  532. (TBT.'Rghe' * Yhej) + (TBT.'Rgh2' * Yh2j) +
  533. (TBT.'Rgo2' * Yo2j) + (TBT.'Rgn2' * Yn2j) +
  534. (TBT.'Rgco' * Ycoj) + (TBT.'Rgco2' * Yco2j) ;
  535.  
  536. Roj = Pt '/' (Tinj '+' 273.15) '/' Rgj ;
  537. Finsi ;
  538.  
  539. 'FINSI TTINJ KAS1' ;
  540. *-------------- FIN TTINJ ----------------------------------------------
  541.  
  542. rxtsce .'Yvapj'= Yvapj ;
  543. rxtsce .'Yairj'= Yairj ;
  544. rxtsce .'Yhej' = Yhej ;
  545. rxtsce .'Yh2j' = Yh2j ;
  546. rxtsce .'Yo2j' = Yo2j ;
  547. rxtsce .'Yn2j' = Yn2j ;
  548. rxtsce .'Yco2j'= Yco2j ;
  549. rxtsce .'Ycoj' = Ycoj ;
  550.  
  551. rxtsce .'aex' = aex ;
  552. rxtsce .'Qj' = Qj ;
  553. rxtsce .'Qlj' = Qlj ;
  554. rxtsce .'Tj' = tinj ;
  555. rxtsce .'Roj' = Roj ;
  556.  
  557. Briches.CTinj= Briches.CTinj 'ET' ('PROG' Tinj) ;
  558. Briches.CKsi = Briches.CKsi 'ET' ('PROG' Ksi) ;
  559. Briches.CQlj = Briches.CQlj 'ET' ('PROG' qliq) ;
  560. Briches.CHlj = Briches.CHlj 'ET' ('PROG' hliq) ;
  561. *-------------------------------------------------------------
  562. *Caractéristiques de l'injection au pas de temps N
  563. * c'est a dire Dtn = tn - t(n-1) a l'instant n-1
  564.  
  565. 'SI' ( TBT.'IMPR' >EG 2) ;
  566. 'MESS' '==>tail des débits extraits (kg/s) Sortie ' nub ;
  567. 'MESS' 'Qeau=' qeau 'Qliq=' qliq 'Qair=' qair 'Qhe =' qhe 'Qh2 =' qh2 ;
  568. 'MESS' 'Qo2 =' qo2 'Qn2 =' qn2 'Qco =' qco 'Qco2=' qco2 ;
  569. 'FINSI' ;
  570.  
  571. *mess '=================== FIN KAS1 =======================';
  572. resproc qeau qliq qair qhe qh2 qo2 qn2 qco qco2 ;
  573.  
  574. QUITTER BROCHE ;
  575. 'FINSI KAS1' ;
  576. ************************************************************************
  577. ********* FIN KAS1 *****************************************************
  578. ************************************************************************
  579.  
  580. ************************************************************************
  581. ********* DEBUT KAS2 ***************************************************
  582. ************************************************************************
  583.  
  584. 'SI KAS2' (EGA KAS 'KAS2') ;
  585.  
  586. CSbreche =chai 'Ssreche' ;
  587. C$breche =chai '$sreche' ;
  588. C$brechc =chai '$srechec' ;
  589. Cfacgeo =chai 'facgeo' ;
  590. Cbrechei =chai 'srechei' ;
  591. Cbrechec =chai 'srechec' ;
  592. Cbreche =chai 'sreche' ;
  593.  
  594.  
  595. diru =Briches.'diru' ;
  596.  
  597. diru = diru/(norm diru) ;
  598. Sbreche = GEO.CSbreche ;
  599. $breche = GEO.C$breche ;
  600. facgeo = GEO.Cfacgeo ;
  601. brechei = GEO.Cbrechei ;
  602. brechec = GEO.Cbrechec ;
  603. breche = GEO.Cbreche ;
  604.  
  605. $menvf = rxt.'GEO'.'$menvf' ;
  606. $vtf = rxt.'GEO'.'$vtf' ;
  607.  
  608. Roj = rxtsce .'Roj' ;
  609. Qj = rxtsce .'Qj' ;
  610. Qlj = rxtsce .'Qlj' ;
  611. tinj= rxtsce .'Tj' ;
  612.  
  613. **************************************************************
  614. **** Evolution de la source en fct du temps ******************
  615.  
  616. t = rxtsce .'t' ;
  617.  
  618. * Récupération des fractions massiques
  619. Yvapj= rxtsce .'Yvapj' ;
  620. Yairj= rxtsce .'Yairj' ;
  621. Yhej = rxtsce .'Yhej' ;
  622. Yh2j = rxtsce .'Yh2j' ;
  623. Yo2j = rxtsce .'Yo2j' ;
  624. Yn2j = rxtsce .'Yn2j' ;
  625. Yco2j= rxtsce .'Yco2j' ;
  626. Ycoj = rxtsce .'Ycoj' ;
  627.  
  628. Qjf = Qj '*' facgeo ;
  629.  
  630. 'SI' ('EGA' Qj 0.0) ;
  631. Roj = 0.0 ;
  632. guj = 0.0 ;
  633. 'SINON' ;
  634. Roj = rxtsce .'Roj' ;
  635. guj = (Qjf '/' Sbreche '/' Roj ) ;
  636. 'FINSI' ;
  637.  
  638. Rvapj = Roj '*' Yvapj ;
  639. Rairj = Roj '*' Yairj ;
  640. Rhej = Roj '*' Yhej ;
  641. Rh2j = Roj '*' Yh2j ;
  642. Ro2j = Roj '*' Yo2j ;
  643. Rn2j = Roj '*' Yn2j ;
  644. Rco2j = Roj '*' Yco2j ;
  645. Rcoj = Roj '*' Ycoj ;
  646.  
  647. * Les donnees physiques
  648. Cpvap = TBT.'Cpvap' ;
  649. Lv = TBT.'Lv' ;
  650. Rabs = TBT.'Rabs' ;
  651. Rgh2 = TBT.'Rgh2' ; Mkh2 = TBT.'Mkh2' ;
  652. Rghe = TBT.'Rghe' ; Mkhe = TBT.'Mkhe' ;
  653. Rgo2 = TBT.'Rgo2' ; Mko2 = TBT.'Mko2' ;
  654. Rgn2 = TBT.'Rgn2' ; Mkn2 = TBT.'Mkn2' ;
  655. Rgco2 = TBT.'Rgco2' ; Mkco2 = TBT.'Mkco2' ;
  656. Rgco = TBT.'Rgco' ; Mkco = TBT.'Mkco' ;
  657. Rgvap = TBT.'Rgvap' ; Mkvap = TBT.'Mkvap' ;
  658. Rgair = TBT.'Rgair' ; Mkair = TBT.'Mkair' ;
  659.  
  660. * Calcul Cp (Tj) CALCP
  661. Tj = tinj ;
  662.  
  663. Cph2j Cphej Cpo2j Cpn2j Cpco2j Cpcoj Cpairj = CALCP Tj ;
  664.  
  665. * Calcul des Cvs pour l'injection
  666. Cpvapj = TBT.'Cpvap' ;
  667. Cvvapj = Cpvapj '-' Rgvap ;
  668. Cvhej = Cphej '-' Rghe ;
  669. Cvh2j = Cph2j '-' Rgh2 ;
  670. Cvo2j = Cpo2j '-' Rgo2 ;
  671. Cvn2j = Cpn2j '-' Rgn2 ;
  672. Cvco2j = Cpco2j '-' Rgco2 ;
  673. Cvcoj = Cpcoj '-' Rgco ;
  674. Cvairj = Cpairj '-' Rgair ;
  675.  
  676. Cvj = (Cvvapj * Yvapj)+(Cvairj * Yairj)+(Cvhej * Yhej)+
  677. (Cvh2j * Yh2j)+(Cvo2j * Yo2j)+(Cvn2j * Yn2j)+
  678. (Cvcoj * Ycoj)+(Cvco2j * Yco2j) ;
  679. Cpj = (Cpvapj * Yvapj)+(Cpairj * Yairj)+(Cphej * Yhej)+
  680. (Cph2j * Yh2j)+(Cpo2j * Yo2j)+(Cpn2j * Yn2j)+
  681. (Cpcoj * Ycoj)+(Cpco2j * Yco2j) ;
  682. Rgj = (Rgvap * Yvapj)+(Rgair * Yairj)+(Rghe * Yhej)+
  683. (Rgh2 * Yh2j)+(Rgo2 * Yo2j)+(Rgn2 * Yn2j)+
  684. (Rgco * Ycoj)+(Rgco2 * Yco2j) ;
  685.  
  686. Hj = Cpj '*' (Tj '+' 273.15) ;
  687. Ej = Cvj '*' (Tj '+' 273.15) ;
  688.  
  689. Lbreche=Sbreche**(1./IDIM) ;
  690. Knj=0.05 * guj ;
  691. Enj=(Knj**1.5)/Lbreche ;
  692.  
  693. 'SI' ( TBT.'IMPR' >EG 2) ;
  694. 'MESS' '==> Caracteristiques de l extraction ' nub ;
  695. 'MESS' ' Débit total extrait Qj=' Qj 'kg/s' ;
  696. 'MESS' ' Vitesse extraction guj=' guj 'm/s' ;
  697. 'MESS' ' Densité extraction Roj=' Roj 'kg/m3' ;
  698. 'MESS' ' R/M extraction Rgj=' Rgj 'J/kg/K' ;
  699. 'FINSI' ;
  700.  
  701. src=0.;
  702.  
  703. 'SI' TBT.'FPAROI' ;
  704. brchp=breche ;
  705. 'SINON' ;
  706. brchp=brechei ;
  707. 'FINSI' ;
  708.  
  709. 'SI' DIM3D ;
  710. $brechec= GEO.C$brechc ;
  711. gj = 'KCHT' $breche 'VECT' 'SOMMET' 'COMP'
  712. ('MOTS' 1UN 2UN 3UN) (diru * guj) ;
  713. gj = 'REDU' gj brchp ;
  714. gjc = 'KCHT' $brechec 'VECT' 'SOMMET' (0.0 0.0 0.0) ;
  715. gjx = 'KCHT' $breche 'VECT' 'SOMMET' (diru * guj) gjc ;
  716. 'SINON' ;
  717. gj = 'KCHT' $breche 'VECT' 'SOMMET' 'COMP'
  718. ('MOTS' 1UN 2UN) (diru * guj) ;
  719. gj = 'REDU' gj brchp ;
  720. gjc = 'MANU' 'CHPO' brechec 2 'UX' 0.0 'UY' 0.0
  721. 'NATURE' 'DISCRET' ;
  722. gjx = 'KCHT' $breche 'VECT' 'SOMMET' (diru * guj) gjc ;
  723. 'FINSI' ;
  724.  
  725. unvf0 = 'KCHT' $menvf 'VECT' 'SOMMET' gjx ;
  726. src = 'DBIT' unvf0 $menvf ;
  727.  
  728. *=============================================================
  729.  
  730. Briches.'Rvapj'=Rvapj ;
  731. Briches.'Rairj'=Rairj ;
  732. Briches.'Rhej' =Rhej ;
  733. Briches.'Rh2j' =Rh2j ;
  734. Briches.'Ro2j' =Ro2j ;
  735. Briches.'Rn2j' =Rn2j ;
  736. Briches.'Rco2j'=Rco2j ;
  737. Briches.'Rcoj' =Rcoj ;
  738. Briches.'Rgj' =Rgj ;
  739. * Briches.'Hj' =Hj ;
  740. * Briches.'Ej' =Ej ;
  741. Briches.'Tj' =Tj ;
  742. * Briches.'Qj' =Qj ;
  743. Briches.'Roj' =Roj ;
  744. Briches.'gj' =gj ;
  745. * Briches.'guj' =guj ;
  746. Briches.'unvf0'=unvf0 ;
  747. Briches.'src' =src ;
  748. aex = rxtsce .'aex' ;
  749. *mess '=================== FIN KAS2 =======================';
  750. resproc
  751. Rvapj Rairj Rhej Rh2j Ro2j Rn2j Rco2j Rcoj Rgj Hj Ej
  752. Tj aex Qj Roj gj guj unvf0 src ;
  753.  
  754. QUITTER BROCHE ;
  755.  
  756. 'FINSI KAS2' ;
  757. ************************************************************************
  758. ********* FIN KAS2 *****************************************************
  759. ************************************************************************
  760.  
  761.  
  762. FINPROC ;
  763.  
  764.  
  765.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales