Télécharger pressuhx1.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : pressuhx1.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. *---------------------------------------------------------
  5. * Pressurisation d'une enceinte
  6. *
  7. * Ce test s'appuie sur le jeu de donnée pressu.dgibi
  8. * Il vise à tester la procédure PROCHEXT qui permet
  9. * d'imposer un échange thermique entre la paroi extérieure de la coque
  10. * et le milieu extérieur (eau de mer pour la partie inférieure et air
  11. * pour la partie émergée.
  12. * Le maillage correspond à une enceinte cylindrique
  13. * d'environ 10 m3 avec un mur en contact avec la
  14. * paroi verticale (10 cm d'acier)
  15. * Tout le volume est initialement a 1bar et 40oC
  16. * et la température du mur est mise à 60oC
  17. * au début du calcul. On calcule la pressurisation
  18. * de cette enceinte sur 50 secondes en injectant un débit
  19. * de 50g/s de vapeur à 150oC. Ce test (un peu long)
  20. *--------------------------------------------------------
  21. COMPLET = FAUX ;
  22. *COMPLET = VRAI ;
  23. GRAPH = VRAI ;
  24. GRAPH = FAUX ;
  25. GRAFRXT= FAUX ;
  26. 'OPTI' 'TRAC' 'X' ;
  27. *'OPTI' 'TRAC' 'PSC' ;
  28.  
  29. 'SI' COMPLET ;
  30.  
  31. nbit=100;
  32. DT0 = 1. ;
  33. n1 = 1 ; n2 = 4 ; n3 = 4 ;
  34. n4 = 8 ; nn = 2 ;
  35.  
  36. 'SINON' ;
  37.  
  38. nbit= 100;
  39. DT0 = 10. ;
  40. n1 = 1 ; n2 = 2 ; n3 = 4 ;
  41. n4 = 4 ; nn = 1 ;
  42.  
  43. 'FINSI' ;
  44.  
  45. *--------------------------------------------------------
  46. * Definition du maillage de l'enceinte cylindrique
  47. *
  48. 'OPTI' 'DIME' 3 'ELEM' 'CU20' ;
  49.  
  50. ri = 1.052 ; sp = 0.10 ; hc = 4.163 ;
  51.  
  52.  
  53.  
  54. epsi = 1.000e-2 ; ;
  55.  
  56. p0 = 0.000 0.000 0.000 ;
  57. px = -1000.000 0.000 0.000 ;
  58. py = 0.000 -1000.000 0.000 ;
  59. pz = 0.000 0.000 1000.000 ;
  60. cd = 0.000 0.000 -20.000 ;
  61. ph0 = 0.000 0.000 hc ;
  62. phx = ri 0.000 hc ;
  63. phy = 0.000 ri hc ;
  64.  
  65. fg1 = 0.25 ;
  66. fg2 = fg1 * (2.0 ** 0.5) / 2. ;
  67.  
  68. p1 = (ri*fg1) 0.000 0.000 ;
  69. p2 = (ri*fg2) (ri*fg2) 0.000 ;
  70. p3 = 0.000 (ri*fg1) 0.000 ;
  71. p4 = ri 0.000 0.000 ;
  72. p5 = 0.000 ri 0.000 ;
  73. p6 = (ri+sp) 0.000 0.000 ;
  74. p7 = 0.000 (ri+sp) 0.000 ;
  75.  
  76. * Hauteur de l'enceinte
  77. h1 = 4.163 ;
  78. * Vecteur de translation
  79. v1 = 0. 0. h1 ;
  80.  
  81. l1 = 'DROI' p0 p1 n1 ;
  82. l2 = 'DROI' p1 p2 n1 ;
  83. l3 = 'DROI' p2 p3 n1 ;
  84. l4 = 'DROI' p3 p0 n1 ;
  85. l5 = 'CERC' p4 p0 p5 (2*n1) ;
  86. l6 = 'CERC' p6 p0 p7 (2*n1) ;
  87.  
  88. basf0= 'DALL' l1 l2 l3 l4 'PLAN' ;
  89. basf1=('REGL' (l2 'ET' l3) l5 n2) ;
  90. l44= cote 2 basf1;
  91. ax4= (inve l4) et l44 ;
  92. l11= cote 4 basf1;
  93. ax1= l11 et (inve l1) ;
  94.  
  95. basf = basf0 'ET' ('REGL' (l2 'ET' l3) l5 n2) ;
  96. 'ELIM' basf epsi ;
  97. basf = basf 'ET' ('SYME' basf 'DROI' p0 p3) ;
  98. ax11 = ('SYME' ax1 'DROI' p0 p3) 'ET' (inve ax1) ;
  99. 'ELIM' basf epsi ;
  100. basf = basf 'ET' ('SYME' basf 'DROI' p0 p1) ;
  101. ax44 = (inve ax4) 'ET' ('SYME' ax4 'DROI' p0 p4) ;
  102. 'ELIM' basf epsi ;
  103.  
  104. basm = 'REGL' l5 l6 n3 ;
  105. basm = basm 'ET' ('SYME' basm 'DROI' p0 p3) ;
  106. 'ELIM' basm epsi ;
  107. basm = basm 'ET' ('SYME' basm 'DROI' p0 p1) ;
  108. 'ELIM' basm epsi ;
  109.  
  110. * Creation du volume
  111.  
  112. dx = ri / 2. ;
  113. nz1 = ('ENTIER' ( h1 / dx ))*nn ;
  114.  
  115. bas = basf 'VOLU' nz1 'TRAN' v1 ;
  116. mbas = basm 'VOLU' nz1 'TRAN' v1 ;
  117. mbas = mbas 'COUL' 'ROUG' ;
  118. plan1 = ax11 'TRAN' nz1 v1 ;
  119. plan4 = ax44 'TRAN' nz1 v1 ;
  120. l5 = l5 'ET' ('SYME' l5 'DROI' p0 p1) ;
  121. l6 = l6 'ET' ('SYME' l6 'DROI' p0 p1) ;
  122. l5 = l5 'ET' ('SYME' l5 'DROI' p0 p3) ;
  123. l6 = l6 'ET' ('SYME' l6 'DROI' p0 p3) ;
  124. pari = L5 'TRAN' nz1 v1 ;
  125. pare = L6 'TRAN' nz1 v1 ;
  126.  
  127. pti = point 1 l5;
  128. pte = point 1 l6;
  129. lzi = pti d nz1 (pti plus v1) ;
  130. lze = pte d nz1 (pte plus v1) ;
  131.  
  132. 'ELIM' (bas et plan1 et plan4 et pari et pare et mbas
  133. et lzi et lze) epsi ;
  134.  
  135. mt = bas ;
  136. wall = mbas ;
  137. elim (mt et wall) epsi ;
  138.  
  139. * Localisation d'une brèche éventuelle au bas de l'enceinte
  140.  
  141. pjg = 'POIN' basf 'PROC' (0.000 0.000 0.000) ;
  142. jg = ('ELEM' basf 'APPUIE' 'LARGEMENT' pjg) 'COUL' 'VERT' ;
  143.  
  144. *--------------------------------------------------------------------
  145. * Fin de la définition du maillage
  146. *--------------------------------------------------------------------
  147.  
  148. *--------------------------------------------------------------------
  149. * Début de l'initialisation de la procédure ENCEINTE : table RXT
  150. *--------------------------------------------------------------------
  151.  
  152. rxt = 'TABLE' ;
  153. rxt.'VERSION'= 'V0' ;
  154.  
  155. *-- Nom du volume fluide
  156. rxt.'vtf' = mt ;
  157. rxt.'epsi' = epsi ;
  158.  
  159. *-- Definition des murs de l'enceinte : ici un seul mur
  160. *-- en ACIER dont on traitera la thermique dans l'épaisseur
  161. *-- et que l'on initialise a 40oC
  162.  
  163. *-- On definit d'abort la matériau ACIER avec sa conductivite
  164. *-- thermique LAMBDA (W/m/K) et le produit ro*Cp (J/m3/K)
  165. rxt.'THERMP' = VRAI ;
  166. rxt.'vtp' = wall ;
  167. rxt.'LAMBDA' = 15. ;
  168. rxt.'ROCP' = 3.9E6 ;
  169. rxt.'Tp0' = 60. ;
  170. rxt.'ECHAN' = 10. ;
  171.  
  172. *-- Conditions initiales dans l'enceinte de test
  173. rxt.'TF0' = 40.0 ;
  174. rxt.'PT0' = 1.00000e5 ;
  175. rxt.'Yvap0' = 0.0023 ;
  176.  
  177. *-- On positionne une brèche
  178. rxt.'breche' = jg ;
  179. rxt.'diru1' = 0 0 1 ;
  180.  
  181. *-- On definit un point interne au maillage pour imposer la valeur de
  182. *-- la pression
  183. rxt.'pi' = (0.0 0.0 0.5) ;
  184.  
  185. *-- On indique que le calcul comporte de la vapeur d'eau
  186. rxt.'VAPEUR' = VRAI ;
  187.  
  188. *-- On active le recalcul automatique du préconditionnement
  189. *-- toutes les 5 itérations
  190. rxt.'FRPREC' = 5 ;
  191. rxt.'DETMAT' = VRAI ;
  192.  
  193. *-- Definition du scenario thermohydraulique
  194. rxt.'scenario' = table ;
  195.  
  196. *-- Conditions a la breche (Obligatoire pour l'instant)
  197. rxt.'scenario'.'t' = prog 0.0 1000.0 ;
  198. rxt.'scenario'.'qeau' = prog 0.050 0.050 ;
  199. rxt.'scenario'.'qair' = prog 0.000 0.000 ;
  200. rxt.'scenario'.'tinj' = prog 150.0 150.0 ;
  201.  
  202. *-- On impose le pas de temps (s)
  203. rxt.'DT0' = DT0 ;
  204.  
  205. *-- On impose la viscosite turbulente (m2/s)
  206. rxt.'MODTURB'='NUTURB' ;
  207. rxt.'NUT' = 1.e-2 ;
  208.  
  209. *-- On lance le calcul sur 20 itérations d'une seconde
  210. rxt.'GRAPH'=GRAFRXT ;
  211.  
  212.  
  213. *===================================================================
  214. *===================================================================
  215. * Définition d'une procédure personnelle
  216.  
  217. 'DEBPROC' MAPROCX TPS*'FLOTTANT' rxt*'TABLE';
  218. *
  219. * Cette procédure personnelle vise à imposer un coefficient d'échange
  220. * variable en temps et/ou en espace en appelant la procédure PROCHEXT.
  221.  
  222. hz =evol manu (prog 0. 1.e3) (prog 2. 2.) ;
  223. hair=evol manu (prog 0. 1.e3) (prog 5. 5.) ;
  224. tair=evol manu (prog 0. 1.e3) (prog 45. 45.) ;
  225. hmer=evol manu (prog 0. 1.e3) (prog 100. 100.) ;
  226. tmer=evol manu (prog 0. 1.e3) (prog 25. 25.) ;
  227. Lair=3. ;
  228. Lmer=2. ;
  229.  
  230. PROCHEXT TPS RXT 'KAS1' HZ HAIR TAIR HMER TMER ;
  231.  
  232. 'FINPROC' ;
  233.  
  234. rxt.'ECHEXT' = VRAI ;
  235. rxt.'parext' = pare ;
  236. rxt.'HEXT' = 0. ;
  237. rxt.'TPEXT' = 0. ;
  238.  
  239. rxt.'PERSO' = Vrai ;
  240. rxt.'PRCPERSO'= 'MAPROCX' ;
  241. rxt.'TABPERSO'= TABLE ;
  242.  
  243. *===================================================================
  244. *===================================================================
  245.  
  246. EXECRXT 2 rxt ;
  247.  
  248. EXECRXT (nbit - 2) rxt ;
  249.  
  250.  
  251.  
  252. *************** Echange avec l'extérieur ***************
  253. hextc= rxt.'TIC'.'HEXTc' ;
  254. $parext=rxt.'GEO'.'$parext' ;
  255. hext = elno hextc $parext ;
  256. tpext = rxt.'TIC'.'TPEXT' ;
  257. TP=rxt.'TIC'.'TP' ;
  258.  
  259. Si GRAPH ;
  260. trace hext pare titr 'H externe (KAS1)' ;
  261. trace tpext pare titr 'Temperature externe (KAS1)' ;
  262. trace cache TP (pari et pare) TITR ' TEMPERATURE PAROI EXTERNE (KAS1)';
  263. Finsi ;
  264.  
  265. tpe= redu rxt.'TIC'.'TP' lze;
  266. tpi= redu rxt.'TIC'.'TP' lzi;
  267. tfi= redu rxt.'TIC'.'TF' lzi;
  268.  
  269. TAB1 = TABLE ;
  270. TAB1.1 = 'MARQ LOSA REGU' ;
  271. TAB1.2 = 'MARQ TRIU REGU' ;
  272. TAB1.3 = 'MARQ PLUS TIRM' ;
  273. TAB1.4 = 'MARQ CARR TIRM' ;
  274. TAB1.'TITRE' = TABLE ;
  275. TAB1.'TITRE' . 1 = 'MOT' 'T paroi int' ;
  276. TAB1.'TITRE' . 2 = 'MOT' 'T paroi ext' ;
  277. TAB1.'TITRE' . 3 = 'MOT' 'T externe' ;
  278. TAB1.'TITRE' . 4 = 'MOT' 'T fluide paroi' ;
  279.  
  280. evtpxt = (evol chpo (redu tpext pare) lze) coul bleue;
  281. evtpe= (evol chpo tpe lze) coul bleue ;
  282. evtpi= (evol chpo tpi lzi) coul rouge ;
  283. evtfi= (evol chpo tfi lzi) coul rouge ;
  284. evhxt = evol chpo (redu hext pare) lze;
  285.  
  286. Si GRAPH;
  287. dess (evtpi et evtpe et evtpxt et evtfi) lege tab1 'GRIL' titx 'm'
  288. tity '°C' titr 'Temperatures KAS1 (coef echange impose)' ;
  289.  
  290. TAB1.'TITRE' . 1 = 'MOT' 'H externe ' ;
  291. dess evhxt lege tab1 'GRIL' titx 'm' tity 'W/m^2/K'
  292. titr 'Coefficient d echange impose (KAS1)' ;
  293. Finsi;
  294. *********** Fin Echange avec l'extérieur ***************
  295.  
  296. *************** Pressions ******************************
  297. Psatip = PSATT (tpi + 273.15) ;
  298. PT = extr (dime rxt.'TIC'.'PT') (rxt.'TIC'.'PT') ;
  299. evpsatip = evol chpo Psatip lzi ;
  300. llzi = prog (mini (coor 3 lzi)) pas 1 (maxi (coor 3 lzi));
  301. evpt = evol manu llzi (prog (dime llzi)*PT);
  302. Pair= (extr rxt.'TIC'.'Rhomn' 1)*287.1*tpi;
  303. evpair = evol chpo pair lzi;
  304. pvi = PT - Pair;
  305. evpvi = evol chpo pvi lzi;
  306.  
  307. TAB1 = TABLE ;
  308. TAB1.1 = 'MARQ LOSA REGU' ;
  309. TAB1.2 = 'MARQ TRIU REGU' ;
  310. TAB1.3 = 'MARQ PLUS TIRM' ;
  311. TAB1.4 = 'MARQ CARR TIRM' ;
  312. TAB1.'TITRE' = TABLE ;
  313. TAB1.'TITRE' . 1 = 'MOT' 'PT' ;
  314. TAB1.'TITRE' . 2 = 'MOT' 'Pvsat (Tpi)' ;
  315. TAB1.'TITRE' . 3 = 'MOT' 'Pair paroi int' ;
  316. TAB1.'TITRE' . 4 = 'MOT' 'Pv paroi int' ;
  317. Si GRAPH;
  318. dess (evPT et evpsatip et evpair et evpvi) TITR 'Pressions'
  319. lege tab1 'GRIL' titx 'm' tity 'Pa';
  320. Finsi;
  321. *********** Fin Pressions ******************************
  322.  
  323. *************** Densités *******************************
  324. Rho = rxt.'TIC'.'RHO';
  325. Rvp = rxt.'TIC'.'RVP';
  326. rhpi = redu Rho lzi ;
  327. rvpi = redu Rvp lzi ;
  328. rinci = rhpi - rvpi ;
  329. Rvsati = Psatip/461.73/(tpi + 273.15) ;
  330. evrhpi = evol chpo rhpi lzi;
  331. evrvpi = evol chpo rvpi lzi;
  332. evrinci = evol chpo rinci lzi;
  333. evrvsati = evol chpo Rvsati lzi ;
  334.  
  335. TAB1 = TABLE ;
  336. TAB1.1 = 'MARQ LOSA REGU' ;
  337. TAB1.2 = 'MARQ TRIU REGU' ;
  338. TAB1.3 = 'MARQ PLUS TIRM' ;
  339. TAB1.4 = 'MARQ CARR TIRM' ;
  340. TAB1.'TITRE' = TABLE ;
  341. TAB1.'TITRE' . 1 = 'MOT' 'Rho paroi int' ;
  342. TAB1.'TITRE' . 2 = 'MOT' 'Rvp paroi int' ;
  343. TAB1.'TITRE' . 3 = 'MOT' 'Rinc paroi int' ;
  344. TAB1.'TITRE' . 4 = 'MOT' 'Rvsat paroi int' ;
  345.  
  346. Si GRAPH;
  347. dess (evrhpi et evrvpi et evrinci et evrvsati) titx 'm' tity 'kg/m^3'
  348. TITR ' Densites en paroi' 'GRIL' LEGE tab1;
  349. Finsi;
  350. *********** Fin Densités *******************************
  351.  
  352. *************** Fractions massiques ********************
  353. yvi=rvpi / rhpi;
  354. evyvi = evol chpo yvi lzi;
  355. yvsati= rvsati / rhpi ;
  356. evyvsati= evol chpo yvsati lzi;
  357. evdyv=evyvi - evyvsati;
  358.  
  359. TAB1.'TITRE' . 1 = 'MOT' 'Yv paroi int' ;
  360. TAB1.'TITRE' . 2 = 'MOT' 'Yvsat paroi int' ;
  361. TAB1.'TITRE' . 3 = 'MOT' 'Yv - Yvsat' ;
  362. Si GRAPH;
  363. dess (evyvi et evyvsati et evdyv) 'GRIL' lege TAB1 titx 'm'
  364. tity 'kg/m^3' titr ' Fractions massiques vapeur en paroi'
  365. ybor 0. 0.4;
  366. Finsi;
  367. *********** Fin Fractions massiques ********************
  368.  
  369. list rxt.TIC.'Qc' ;
  370.  
  371. lqc1 = 'PROG'
  372. 0.0000 0.0000 0.0000 3.81482E-04 2.57967E-03
  373. 4.79011E-03 9.19308E-03 1.20267E-02 1.61149E-02 1.81950E-02
  374. 2.14021E-02 2.28727E-02 2.47412E-02 2.69200E-02 2.86402E-02
  375. 3.09326E-02 3.23415E-02 3.39940E-02 3.52985E-02 3.63725E-02
  376. 3.73291E-02 3.81705E-02 3.89193E-02 3.95936E-02 4.02072E-02
  377. 4.07688E-02 4.12846E-02 4.17598E-02 4.21992E-02 4.26061E-02
  378. 4.29836E-02 4.33341E-02 4.36601E-02 4.39635E-02 4.42461E-02 ;
  379. lqc2 = 'PROG'
  380. 4.45096E-02 4.47554E-02 4.49848E-02 4.51992E-02 4.53997E-02
  381. 4.55872E-02 4.57628E-02 4.59273E-02 4.60816E-02 4.62263E-02
  382. 4.63621E-02 4.64897E-02 4.66096E-02 4.67224E-02 4.68285E-02
  383. 4.69285E-02 4.70227E-02 4.71115E-02 4.71952E-02 4.72742E-02
  384. 4.73489E-02 4.74194E-02 4.74860E-02 4.75490E-02 4.76086E-02
  385. 4.76651E-02 4.77185E-02 4.77691E-02 4.78171E-02 4.78625E-02
  386. 4.79057E-02 4.79466E-02 4.79854E-02 4.80223E-02 4.80573E-02 ;
  387. lqc3 = 'PROG'
  388. 4.80906E-02 4.81222E-02 4.81523E-02 4.81809E-02 4.82081E-02
  389. 4.82340E-02 4.82586E-02 4.82820E-02 4.83043E-02 4.83255E-02
  390. 4.83458E-02 4.83650E-02 4.83834E-02 4.84009E-02 4.84175E-02
  391. 4.84334E-02 4.84485E-02 4.84630E-02 4.84767E-02 4.84898E-02
  392. 4.85023E-02 4.85142E-02 4.85255E-02 4.85363E-02 4.85466E-02
  393. 4.85564E-02 4.85657E-02 4.85746E-02 4.85831E-02 4.85912E-02
  394. 4.85989E-02 ;
  395. lqc = lqc1 'ET' lqc2 'ET' lqc3 ;
  396.  
  397. tic=rxt.'TIC' ;
  398. ERQc=SOMM( abs (lqc - tic.'Qc' ) ) ;
  399.  
  400. Mess 'ERQc=' ERQc ;
  401.  
  402. Si (ERQc '>' 1.e-4) ; erreur 5 ; Finsi ;
  403.  
  404. Si GRAPH ;
  405.  
  406. $vtf=rxt.'GEO'.'$vtf' ;
  407. mt =doma $vtf maillage ;
  408. Mpl1=chan 'QUAF' plan1 ;
  409. Mpl4=chan 'QUAF' plan4 ;
  410. ELIM (mt et Mpl1 et Mpl4) epsi ;
  411. $mpl1= mode Mpl1 'NAVIER_STOKES' MACRO ;
  412. $mpl4= mode Mpl4 'NAVIER_STOKES' MACRO ;
  413. plan1= doma $mpl1 maillage ;
  414. plan4= doma $mpl4 maillage ;
  415. plan=plan1 et plan4 ;
  416.  
  417. paroif = rxt.'GEO'.'paroif';
  418. rho=rxt.'TIC'.'RHO';
  419. rvp=rxt.'TIC'.'RVP';
  420. tf=rxt.'TIC'.'TF';
  421. un=rxt.'TIC'.'UN' ;
  422. un1=redu un plan ;
  423. ung= vect un1 1. ux uy uz jaune ;
  424. trace ung plan ;
  425. opti isov suli ;
  426. trace rho plan 'TITRE'' Rho' ;
  427. trace rvp plan 'TITRE'' Rvp' ;
  428. trace tf plan 'TITRE'' Tf ' ;
  429.  
  430. trace rho paroif 'TITRE'' Rho' ;
  431. trace rvp paroif 'TITRE'' Rvp' ;
  432. trace Tf paroif 'TITRE'' Tf ' ;
  433. Fcond = tic.'Fcondw';
  434. trace Fcond paroif 'TITRE' ' Flux de condensation Kg / m**2 ' ;
  435.  
  436. axe = p0 d nz1 (p0 plus v1) ;
  437. axe = chan axe 'QUAF' ;
  438. elim (axe et mt) epsi ;
  439.  
  440. evr= evol 'CHPO' rho axe ;
  441. dess evr 'TITRE' ' Rho axe ';
  442.  
  443. evt = evol 'CHPO' Tf axe ;
  444. dess evt 'TITRE' ' Temperature axe ';
  445.  
  446. evvp= evol 'CHPO' rvp axe ;
  447. dess evvp 'TITRE' ' rvp axe ';
  448.  
  449.  
  450.  
  451. 'FINSI' ;
  452.  
  453. FIN ;
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  

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