Télécharger Th1D-T3D-mono.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : Th1D-T3D-mono.dgibi
  2. *
  3. 'OPTI' 'ECHO' 1 ;
  4. **********************************************************************************************
  5. *
  6. * NOM DE FICHIER : Th1D-T3D-mono.dgibi
  7. *
  8. * DESCRIPTION : Modelisation thermique 3D - thermohydraulique 1D monophasique
  9. *
  10. **********************************************************************************************
  11. * CAS TEST CORRESPONDANT AU RAPPORT DM2S/STMF/LMES/RT/12-013/A :
  12. * Calculs thermohydrauliques HCLL/TBM realises avec le code CAST3M "fluide"
  13. * Etude du refroidissement de la couverture tritigene du reacteur a fusion
  14. * par un ecoulement d'helium
  15. *
  16. **********************************************************************************************
  17. * A U T E U R S
  18. **********************************************************************************************
  19. *
  20. * Giacomo AIELLO - CEA/DEN/DANS/DM2S/SEMT/BCCR - mel : giacomo.aiello@cea.fr
  21. * Jean-Louis LASZLO - CEA/DEN/DANS/DM2S/STMF/LMES - mel : jean-louis.laszlo@cea.fr
  22. * Stephane GOUNAND - CEA/DEN/DANS/DM2S/SFMF/LMSF - mel : gounand@semt2.smts.cea.fr
  23. *
  24. **********************************************************************************************
  25. **********************************************************************************************
  26. *
  27. *
  28. * TEST RAPIDE : la variable logique complet = FAUX;
  29. * TEST NOMINAL : la variable logique complet = VRAI;
  30. *
  31. *
  32. **********************************************************************************************
  33. * Exemple de resultats *
  34. **********************************************************************************************
  35. * Variable logique COMPLET FAUX VRAI
  36. * ******* **** ****
  37. * Nombre iterations 1 seule test
  38. * convergence
  39. * Maillage grossier nominal
  40. *
  41. * Debit massique commun fluide 1 et 2 0.11 kg/s 0.11 kg/s
  42. * Flux impose 92.4 kW 92.4 kW
  43. *
  44. * Temperature minimale solide 298.8 degres C 303.5 degres C
  45. * Temperature maximale solide 449.0 degres C 517.3 degres C
  46. *
  47. * Temperature minimale fluide 1 300.0 degres C 300.0 degres C
  48. * Temperature maximale fluide 1 380.5 degres C 383.7 degres C
  49. **********************************************************************************************
  50. *
  51. *
  52. * VARIABLES LOGIQUES
  53. *
  54. **********************************************************************************************
  55.  
  56. complet = FAUX ; comm TEST RAPIDE ;
  57. *complet = VRAI ; comm TEST NOMINAL ;
  58.  
  59. * EchColb = VRAI ; comm loi echange thermique COLBURN ;
  60. EchColb = FAUX ; comm loi echange thermique GNIELINSKI ;
  61.  
  62.  
  63. **********************************************************************************************
  64. **********************************************************************************************
  65. *** PROCEDURES
  66. **********************************************************************************************
  67. **********************************************************************************************
  68.  
  69. debproc spabas spass*flottant ori*point ;
  70. v9 = spass ** 0.5 ;
  71. P2 = ori PLUS ( v9 0. 0. ) ;
  72. Lig9 = DROI 1 ori P2 ;
  73. sp9 = Lig9 TRAN 1 ( 0. v9 0. ) ;
  74. elim sp9 1.E-6 ;
  75. finpro sp9 ;
  76.  
  77. debproc loupe eye c0*chpoint m0*maillage tjt0*mot gross0*flottant
  78. c/flottant ;
  79. * 1 pour UX - 2 pour UY - 3 pour UZ
  80. xmt = 'COORDONNEE' 1 m0 ;
  81. ymt = 'COORDONNEE' 2 m0 ;
  82. dxmt = 'NOMC' 'UX' ('*' xmt gross0) 'NATURE' 'DISCRET' ;
  83. dymt = 'NOMC' 'UY' ('*' ymt gross0) 'NATURE' 'DISCRET' ;
  84. orig0 = 'FORME' ;
  85. 'FORME' dxmt ;
  86. 'FORME' dymt ;
  87. SI ( EXIS c ) ;
  88. trac cach eye c0 m0 titr tjt0 ;
  89. SINON ;
  90. trac cach eye c0 m0 (cont m0 ) titr tjt0 ;
  91. FINSI ;
  92. 'FORME' orig0 ;
  93. finproc ;
  94.  
  95. DEBP PARTSURF TABCONV*TABLE;
  96. TABCONV . PART = TABLE;
  97.  
  98. NBOUCT = NBNO TABCONV.SURFCONV ;
  99. REPE BOUC NBOUCT ;
  100. SI (&bouc EGA 1 );
  101. NEWPART = ELEM TABCONV . SURFCONV APPUYE
  102. LARGEMENT TABCONV . SIN;
  103. TOTPART = NEWPART;
  104. PINI = BARY NEWPART;
  105. SINON ;
  106. NEWPART = ELEM TABCONV . SURFCONV APPUYE LARGEMENT TOTPART;
  107. SI ((NBNO NEWPART) EGA (NBNO TOTPART));
  108. QUITTER BOUC;
  109. SINON ;
  110. NEWPART = DIFF NEWPART TOTPART;
  111. TOTPART = TOTPART et NEWPART;
  112. FINSI;
  113. PFIN = BARY NEWPART;
  114. FINSI;
  115. TABCONV . PART . &bouc = NEWPART;
  116. FIN bouc;
  117. FINP;
  118.  
  119. DEBPROC FLUI1D_2 TABCONV*TABLE
  120. DECAX*FLOTTANT DECAY*FLOTTANT kdec*FLOTTANT spa9*FLOTTANT ;
  121. TABCONV . FAC0 = TABLE ;
  122. TABCONV . ELE0 = TABLE ;
  123.  
  124. DECAX = kdec * DECAX ;
  125. DECAY = kdec * DECAY ;
  126.  
  127. Npart = DIME TABCONV .'PART' ;
  128. PINI = BARY TABCONV .'PART'. 1 ;
  129. PINI = PINI PLUS ( DECAX DECAY 0. ) ;
  130. SurBas = spabas spa9 PINI ;
  131. TABCONV .'BAFLU' = SurBas ;
  132.  
  133. *mess Npart ;
  134.  
  135. kfac = 0 ; comm initialisation compteur ;
  136. REPE BOUC Npart ;
  137. NS = NBEL TABCONV .'PART'.&bouc ;
  138. *mess NS ;
  139. Slat = ( mesu ( TABCONV .'PART'.&bouc ));
  140. HautF = Slat / ( 4. * ( spa9 ** 0.5 )) ;
  141. * mess &bouc spa9 hautf slat ;
  142. opti elem cub8 ;
  143. si ( ega &bouc 1 ) ;
  144. NEWFLU = SurBas VOLU 1 'TRAN' ( 0. 0. HautF ) ;
  145. TOTFLU = NEWFLU ;
  146. NEWSOL = TABCONV .'PART'.&bouc ;
  147. TOTSOL = NEWSOL ;
  148. SINON ;
  149. NEWFLU = ( FACE 2 NEWFLU ) volu 1 'TRAN' ( 0. 0. HautF ) ;
  150. TOTFLU = TOTFLU ET NEWFLU ;
  151. NEWSOL = TABCONV .'PART'.&bouc ;
  152. TOTSOL = TOTSOL et NEWSOL ;
  153. FINSI ;
  154.  
  155. repe w ( NBEL TABCONV .'PART'.&bouc ) ;
  156. kfac = kfac + 1 ;
  157. * mess &bouc &w kfac ;
  158. TABCONV . FAC0 . kfac = TABCONV .'PART'.&bouc ELEM &w ;
  159. TABCONV . ELE0 . kfac = NEWFLU ;
  160. fin w ;
  161.  
  162. FIN bouc;
  163.  
  164. TABCONV .'MTFLU' = totflu ;
  165. TABCONV .'OUFLU' = FACE 2 NEWFLU ;
  166.  
  167. FINP ;
  168.  
  169.  
  170. debproc matcon0 tfa00*TABLE tel00*TABLE ;
  171. *** CREATION DE LA MATRICE DE COUPLAGE *
  172. *** ---------------------------------- *
  173. nitab = 'DIME' tfa00 ;
  174. 'REPETER' iitab nitab ;
  175. ifac = tfa00 . &iitab ;
  176. iqfac = 'CHANGER' ifac 'QUAF' ;
  177. miqfac = 'MODELISER' iqfac 'NAVIER_STOKES' discr ;
  178. ciqfac = ('DOMA' miqfac 'CENTRE') 'POIN' 1 ;
  179. iele = tel00 . &iitab ;
  180. iqele = 'CHANGER' iele 'QUAF' ;
  181. miqele = 'MODELISER' iqele 'NAVIER_STOKES' discr ;
  182. ciqele = ('DOMA' miqele 'CENTRE') 'POIN' 1 ;
  183. * Attention ('MESU' iele) ne fonctionne pas en axisymetrique
  184. volele = 'MAXIMUM' ('DOMA' miqele 'VOLUME') ;
  185. clfc = 'MANUEL' 'SEG2' ciqfac ciqele ;
  186. mlcf = 'MANUEL' 'RIGIDITE' clfc ('MOTS' 'T') 'QUEL'
  187. ('PROG' 0.D0 1.D0) ('PROG' 0.D0 0.D0) ;
  188. mlfc = 'MANUEL' 'RIGIDITE' clfc ('MOTS' 'T') 'QUEL'
  189. ('PROG' 0.D0 0.D0)
  190. ('PROG' ('/' 1.D0 volele) 0.D0) ;
  191. 'SI' ('EGA' &iitab 1) ;
  192. cfc00 = clfc ;
  193. mcf00 = mlcf ;
  194. mfc00 = mlfc ;
  195. 'SINON' ;
  196. cfc00 = 'ET' cfc00 clfc ;
  197. mcf00 = 'ET' mcf00 mlcf ;
  198. mfc00 = 'ET' mfc00 mlfc ;
  199. 'FINSI' ;
  200. 'FIN' iitab ;
  201. finpro cfc00 mcf00 mfc00 ;
  202.  
  203. DEBPROC tcpu9 a/flottant ;
  204. TABTPS = TEMP 'NOEC';
  205. tcpu = TABTPS.'TEMPS_CPU'.'INITIAL';
  206. tcpus = '/' ('FLOTTANT' tcpu) 100.D0 ;
  207. SI ( exis a ) ;
  208. RESPRO tcpus ;
  209. SINON ;
  210. 'MESSAGE' ( et ('CHAINE' 'tcpus = ' tcpus) ' secondes') ;
  211. FINSI ;
  212. FINPROC ;
  213. DEBPROC PRPHE8 prt7C*'LISTREEL' roo*'LISTREEL' muo*'LISTREEL'
  214. cpo*'LISTREEL' lambo*'LISTREEL' T/'CHPOINT'
  215. TL/'LISTREEL' TS/'FLOTTANT' ;
  216. prt7 = prt7C + ( prog ( dime prt7C ) * 273.15 ) ; comm en Kelvin ;
  217.  
  218. 'SI' ('EXISTE' T) ;
  219. rhohe8 = 'IPOL' T prt7 roo ;
  220. muhe8 = 'IPOL' T prt7 muo ;
  221. lhe8 = 'IPOL' T prt7 lambo ;
  222. cphe8 = 'IPOL' T prt7 cpo ;
  223. 'RESPRO' rhohe8 muhe8 lhe8 cphe8 ;
  224. 'FINSI' ;
  225.  
  226. 'SI' ('EXISTE' TL) ;
  227. rhohe8 = 'IPOL' TL prt7 roo ;
  228. muhe8 = 'IPOL' TL prt7 muo ;
  229. lhe8 = 'IPOL' TL prt7 lambo ;
  230. cphe8 = 'IPOL' TL prt7 cpo ;
  231. 'RESPRO' rhohe8 muhe8 lhe8 cphe8 ;
  232. 'FINSI' ;
  233.  
  234. 'SI' ('EXISTE' TS) ;
  235. rhohe8 = 'IPOL' TS prt7 roo ;
  236. muhe8 = 'IPOL' TS prt7 muo ;
  237. lhe8 = 'IPOL' TS prt7 lambo ;
  238. cphe8 = 'IPOL' TS prt7 cpo ;
  239. 'RESPRO' rhohe8 muhe8 lhe8 cphe8 ;
  240. 'FINSI' ;
  241. 'FINPROC' ;
  242.  
  243. DEBPROC PTH_HE8 X/'CHPOINT' XL/'LISTREEL' XS/'FLOTTANT' ;
  244. TABHE8 = TABLE ;
  245. 'SI' ('EXISTE' X) ;
  246. rhohe8 muhe8 lhe8 cphe8 =
  247. PRPHE8 PROGTHe PROGRHO PROGMU PROGCP PROGLAM X ;
  248. 'FINSI' ;
  249.  
  250. 'SI' ('EXISTE' XL) ;
  251. rhohe8 muhe8 lhe8 cphe8 =
  252. PRPHE8 PROGTHe PROGRHO PROGMU PROGCP PROGLAM XL ;
  253. 'FINSI' ;
  254.  
  255. 'SI' ('EXISTE' XS) ;
  256. rhohe8 muhe8 lhe8 cphe8 =
  257. PRPHE8 PROGTHe PROGRHO PROGMU PROGCP PROGLAM XS ;
  258. 'FINSI' ;
  259. TABHE8 . 'ROG' = rhohe8 ;
  260. TABHE8 . 'MUG' = muhe8 ;
  261. TABHE8 . 'LAMG' = lhe8 ;
  262. TABHE8 . 'CPG' = cphe8 ;
  263. FINPRO TABHE8 ;
  264.  
  265. DEBPROC PRACIER prt7C*'LISTREEL' roo*'LISTREEL'
  266. cpo*'LISTREEL' lambo*'LISTREEL' T/'CHPOINT'
  267. TL/'LISTREEL' TS/'FLOTTANT' ;
  268. prt7 = prt7C + ( prog ( dime prt7C ) * 273.15 ) ; comm en Kelvin ;
  269. 'SI' ('EXISTE' T) ;
  270. rhoaci = 'IPOL' T prt7 roo ;
  271. laci = 'IPOL' T prt7 lambo ;
  272. cpaci = 'IPOL' T prt7 cpo ;
  273. 'RESPRO' rhoaci laci cpaci ;
  274. 'FINSI' ;
  275.  
  276. 'SI' ('EXISTE' TL) ;
  277. rhoaci = 'IPOL' TL prt7 roo ;
  278. laci = 'IPOL' TL prt7 lambo ;
  279. cpaci = 'IPOL' TL prt7 cpo ;
  280. 'RESPRO' rhoaci laci cpaci ;
  281. 'FINSI' ;
  282.  
  283. 'SI' ('EXISTE' TS) ;
  284. rhoaci = 'IPOL' TS prt7 roo ;
  285. laci = 'IPOL' TS prt7 lambo ;
  286. cpaci = 'IPOL' TS prt7 cpo ;
  287. 'RESPRO' rhoaci laci cpaci ;
  288. 'FINSI' ;
  289. 'FINPROC' ;
  290.  
  291. DEBPROC PTH_ACI X/'CHPOINT' XL/'LISTREEL' XS/'FLOTTANT' ;
  292. TABACI = TABLE ;
  293. 'SI' ('EXISTE' X) ;
  294. rhohe8 lhe8 cphe8 =
  295. PRACIER PROGTAc ROACIER CPACIER LAMACIER X ;
  296. 'FINSI' ;
  297.  
  298. 'SI' ('EXISTE' XL) ;
  299. rhohe8 lhe8 cphe8 =
  300. PRACIER PROGTAc ROACIER CPACIER LAMACIER XL ;
  301. 'FINSI' ;
  302.  
  303. 'SI' ('EXISTE' XS) ;
  304. rhohe8 lhe8 cphe8 =
  305. PRACIER PROGTAc ROACIER CPACIER LAMACIER XS ;
  306. 'FINSI' ;
  307. TABACI . 'ROS' = rhohe8 ;
  308. TABACI . 'LAMS' = lhe8 ;
  309. TABACI . 'CPS' = cphe8 ;
  310. FINPRO TABACI ;
  311.  
  312. 'DEBPROC' chpobor mess1/'MOT' T/'FLOTTANT' TC/'CHPOINT' ;
  313. *Elle permet d'afficher les valeurs minimales et maximales d'un
  314. *champoint avec message optionnel
  315. MesEx0 = EXISTE mess1 ;
  316. 'SI' ('EXISTE' TC) ;
  317. SI MesEx0 ;
  318. mess mess1 ' : ' ( MINI TC ) ( MAXI TC) ;
  319. SINON ;
  320. mess ( MINI TC ) ( MAXI TC) ;
  321. FINSI ;
  322. FINSi ;
  323. 'SI' ('EXISTE' T) ;
  324. SI MesEx0 ;
  325. mess mess1 ' : ' T ;
  326. SINON ;
  327. mess T ;
  328. FINSI ;
  329. FINSi ;
  330. FINPROC ;
  331.  
  332. debproc ecform c1*MOT c2*MOT c3*MOT v0*FLOTTANT ;
  333. c1 = et c1 ' = ' ;
  334. c3 = et ' ' c3 ;
  335. c20 = ( chaine 'FORMAT' c2 v0) ;
  336. mess (et (et c1 c20 ) c3) ;
  337. finproc ;
  338.  
  339. **********************************************************************************************
  340. **********************************************************************************************
  341. *** FIN PROCEDURES
  342. **********************************************************************************************
  343. **********************************************************************************************
  344.  
  345.  
  346. **********************************************************************************************
  347. *
  348. * DONNEES GEOMETRIE
  349. *
  350. **********************************************************************************************
  351.  
  352. OPTION TRAC PSC ;
  353.  
  354. OPTI ELEM TET4;
  355.  
  356. DENS 0.003;
  357.  
  358. R = 0.575; comm profondeur radiale ;
  359. H = 1.660; comm hauteur totale ;
  360.  
  361. RFW = 0.100; comm rayon de courbure de la FW ;
  362. PITCHFW = 0.0219; comm pitch entre canaux ;
  363. EPFW = 0.030; comm epaisseur totale FW ;
  364.  
  365. DCT = 0.015; comm dimensions des canaux de refroidissement ;
  366. DCP = 0.015;
  367.  
  368. DPL = 0.0035; comm distance des canaux de la surface exposee au plasma ;
  369.  
  370. DCH = (PITCHFW - DCT) / 2.;
  371.  
  372.  
  373. EPS0 = 1.E-6 ;
  374.  
  375. ***********************************************************************
  376. *
  377. * MAILLAGE
  378. *
  379. ***********************************************************************
  380.  
  381. si complet ;
  382. N1V1 = 3 ;
  383. N2V1 = 20 ;
  384. NV2 = 8 ;
  385. NV3 = 40 ;
  386. NV7 = 6 ;
  387. sinon ;
  388. * N1V1 = 3 ;
  389. * N2V1 = 3 ;
  390. * NV2 = 4 ;
  391. * NV3 = 4 ;
  392. * NV7 = 6 ;
  393. * modif gounand
  394. N1V1 = 2 ;
  395. N2V1 = 2 ;
  396. NV2 = 2 ;
  397. NV3 = 2 ;
  398. NV7 = 2 ;
  399. FINSI ;
  400.  
  401. NV4 = NV2 ;
  402. NV5 = N2V1 ;
  403. NV6 = N1V1 ;
  404. NV8 = N1V1 ;
  405. NV9 = N2V1 ;
  406. NV10 = NV2 ;
  407. NV11 = NV3 ;
  408. NV12 = NV2 ;
  409. N1V13 = N2V1 ;
  410. N2V13 = N1V1 ;
  411.  
  412.  
  413. P1 = 0. 0. 0. ;
  414. P2 = 0. PITCHFW 0.;
  415. P3 = 0. PITCHFW ( -1. * EPFW );
  416. P4 = 0. 0. (-1. * EPFW);
  417.  
  418.  
  419. PC1 = 0. DCH ( -1. * DPL);
  420. PC2 = 0. (DCH + DCT) ( -1. * DPL);
  421. PC3 = 0. (DCH + DCT) ( -1. * (DPL + DCP) );
  422. PC4 = 0. DCH ( -1. * (DPL + DCP) );
  423.  
  424.  
  425.  
  426.  
  427. L1 = D P1 P2;
  428. L2 = D P2 P3;
  429. L3 = D P3 P4;
  430. L4 = D P4 P1;
  431.  
  432. LC1 = D PC1 PC2;
  433. LC2 = D PC2 PC3;
  434. LC3 = D PC3 PC4;
  435. LC4 = D PC4 PC1;
  436.  
  437. C1 = L1 et L2 et L3 et L4;
  438. C2 = LC1 et LC2 et LC3 et LC4;
  439.  
  440. S1 = SURF ( C1 et (INVE C2) ) PLAN;
  441. V1 = VOLU TRAN N1V1 (PITCHFW 0. 0.) S1;
  442. V1 = VOLU TRAN N2V1 ( (R - RFW - PITCHFW) 0. 0.) V1;
  443.  
  444.  
  445. S2 = FACE 2 V1;
  446. V2 = VOLU ROTA NV2 90. S2
  447. ( (R - RFW) 0. (-1 * RFW))
  448. ( (R - RFW) PITCHFW (-1 * RFW));
  449.  
  450.  
  451.  
  452. S3 = FACE 2 V2;
  453. V3 = VOLU TRAN NV3 ( 0. 0. (-1 * (H - (2. * RFW)))) S3;
  454.  
  455. S4 = FACE 2 V3;
  456. V4 = VOLU ROTA NV4 90. S4
  457. ( (R - RFW) 0. (-1 * (H - RFW)))
  458. ( (R - RFW) PITCHFW (-1 * (H - RFW)));
  459.  
  460. S5 = FACE 2 V4;
  461. V5 = VOLU TRAN NV5 ( (-1. * (R - RFW - PITCHFW) ) 0. 0.) S5;
  462.  
  463.  
  464. S6 = FACE 2 V5;
  465. S7 = PROJ (1. 0. 0.) S6 PLAN
  466. ( (0. 0. (-1. * H) ))
  467. ( (PITCHFW) (PITCHFW) (-1. * H) )
  468. ( 0. 0. 0.);
  469. V6 = VOLU NV6 S6 S7;
  470.  
  471.  
  472. S8 = PROJ S7 (0. 1. 0.) PLAN
  473. ( 0. (2*PITCHFW) H )
  474. ( PITCHFW (PITCHFW) H )
  475. ( 0. (2*PITCHFW) 0.);
  476. V7 = VOLU NV7 S7 S8;
  477.  
  478.  
  479.  
  480. S9 = PROJ S8 (-1. 0. 0.) PLAN
  481. (PITCHFW. 0. 0.)
  482. (PITCHFW 1. 0.)
  483. (PITCHFW 0. 1.);
  484. V8 = VOLU NV8 S8 S9;
  485.  
  486. V9 = VOLU TRAN NV9 ( (R - RFW - PITCHFW) 0. 0.) S9;
  487.  
  488. S10 = FACE 2 V9;
  489. V10 = VOLU ROTA NV10 -90. S10
  490. ( (R - RFW) 0. (-1 * (H - RFW)))
  491. ( (R - RFW) PITCHFW (-1 * (H - RFW)));
  492.  
  493. S11 = FACE 2 V10;
  494. V11 = VOLU TRAN NV11 ( 0. 0. (H - (2. * RFW))) S11;
  495.  
  496.  
  497. S12 = FACE 2 V11;
  498. V12 = VOLU ROTA NV12 -90. S12
  499. ( (R - RFW) 0. (-1 * RFW))
  500. ( (R - RFW) PITCHFW (-1 * RFW));
  501.  
  502. S13 = FACE 2 V12;
  503. V13 = VOLU TRAN N1V13 ( (-1. * (R - RFW - PITCHFW)) 0. 0.) S13;
  504. V13 = VOLU TRAN N2V13 ( (-1.*PITCHFW) 0. 0.) V13;
  505.  
  506.  
  507. VTUBE = V1 ET V2 ET V3 ET V4 ET V5 ET V6 ET V7 ET V8
  508. ET V9 ET V10 ET V11 ET V12 ET V13;
  509.  
  510. ELIM EPS0 VTUBE;
  511.  
  512. mess ( nbel vtube ) ( nbno vtube );
  513.  
  514.  
  515. VTUBE = REGE VTUBE;
  516.  
  517. VTUBE2 = VTUBE SYME PLAN
  518. (0. 0. (H / -2.))
  519. (0. 1. (H / -2.))
  520. (1. 0. (H / -2.));
  521.  
  522. VTUBE2 = DEPL PLUS VTUBE2 (0. (2*PITCHFW) 0.);
  523.  
  524. VFW = VTUBE et VTUBE2;
  525. ELIM EPS0 VFW;
  526. VFW = REGE VFW;
  527.  
  528. TRAC CACH VFW;
  529.  
  530.  
  531. OPTI SAUV 'MAILLAGE.SAUV';
  532. SAUV VFW;
  533.  
  534. *******************************************************************
  535. *******************************************************************
  536. *** **
  537. *** COUPLAGE THERMIQUE 3D - THERMOHYDRAULIQUE 1D **
  538. *** **
  539. *******************************************************************
  540. *******************************************************************
  541.  
  542. OPTI DIME 3 ELEM CUB8 ;
  543.  
  544.  
  545. OPTI REST 'MAILLAGE.SAUV'; comm Restitution du maillage ;
  546.  
  547.  
  548. *** #################################################################*
  549. *** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*
  550. *** DECLARATIONS
  551. *** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*
  552. *** #################################################################*
  553.  
  554.  
  555. oeilx = 1.e30 0. 0. ;
  556. oeily = 0. 1.e30 0. ;
  557. oeilz = 0. 0. 1.e30 ;
  558. oeil = 1.e30 1.e30 1.e30 ;
  559. epselim = 1.e-7 ;
  560.  
  561. discr = 'LINE' ; comm elements lineaires ;
  562. * discr = 'QUAF' ; comm elements quadratiques ;
  563.  
  564. nomsov='Th1D-T3D-mono.sauv' ;
  565.  
  566. TFLUec = 300. ;
  567. PsatB = 1.75 ; comm pression absolue en bars ;
  568. ppa = PsatB * 1.e5 ; comm pression absolue en Pa ;
  569. CK = 273.15 ; comm Celsius en Kelvin ;
  570. TFLUek = TFLUec + CK ;
  571. F_SPLSM = 0.5E6 ; comm flux surface plasma ;
  572. F_SBZ = 0.1E6 ; comm flux surface interne ;
  573.  
  574. nitr1 = 1 ;
  575. omgr1 = 1. ;
  576. SI (non complet) ;
  577. nb_bouc = 1 ;
  578. SINON ;
  579. nb_bouc = 40 ; comm boucle de calcul ;
  580. FINSI ;
  581.  
  582. Nusslam = 4.364 ; comm Nusselt en laminaire tube circulaire ;
  583. seuilam = 2300. ; comm transition laminaire turbulent ;
  584.  
  585. *** Loi de convection forcee en regime turbulent (COLBURN)
  586. A_colb = 0.023 ;
  587. B_colb = 0.8D0 ;
  588. C_colb = ('/' 1.D0 3.D0) ;
  589.  
  590. *** Loi de convection forcee en regime turbulent (Gnielinski)
  591. A_gnie = 1.7372 ;
  592. B_gnie = 1.964 ;
  593. C_gnie = -3.8215 ;
  594. s_23 = 2. / 3. ;
  595.  
  596.  
  597. *** Methode d'inversion
  598. MetInv = 'DIRECT' ; comm robuste mais lent ;
  599. *** MetInv = 'ITERAT' ; comm moins robuste mais plus rapide ;
  600. SI ( EGA MetInv 'DIRECT' ) ;
  601. IndInv = 1 ;
  602. SINON ;
  603. IndInv = 3 ;
  604. FINSI ;
  605.  
  606. RegEcoM = TABLE ;
  607. RegEcoD = TABLE ;
  608. RTUR = 'TURB' ;
  609. RLAM = 'LAMI' ;
  610.  
  611.  
  612. *** DONNEES RELATIVES A L ECOULEMENT:
  613. GTUBE = 1.3 / 12. ; comm debit massique kg par seconde ;
  614. SEC = 0.015 * 0.015 ; comm section de passage ;
  615. PMOUL = 0.015 * 4. ; comm perimetre mouille ;
  616. DIAM = 4 * SEC / PMOUL ; comm diametre hydraulique ;
  617.  
  618. *****************************************************************
  619. *** PROPRIETES MATERIAUX
  620. *****************************************************************
  621. *** ici les temperatures PROGTAc sont en degres CELSIUS
  622. PROGTAc = PROG 20. 100. 200. 300. 400. 500. 600. ;
  623. LAMACIER = PROG 25.9 27.0 28.1 28.8 29.2 29.0 28.5 ;
  624. CPACIER = PROG 446. 486. 524. 564. 621. 701. 805. ;
  625. ROACIER = PROG 7758. 7756. 7752. 7750. 7746.7 7743. 7740. ;
  626.  
  627.  
  628. *** Conducibilite Thermique ACIER
  629. EVOCDST = EVOL MANU
  630. 'T' PROGTAc
  631. 'K' LAMACIER ;
  632.  
  633. *** On n'utilise pas ces valeurs
  634. *** Chaleur specifique ACIER
  635. EVOCPST = EVOL MANU
  636. 'T' PROGTAc
  637. 'C' CPACIER ;
  638. *** DENSITE ACIER
  639. EVOROST = EVOL MANU
  640. 'T' PROGTAc
  641. 'RHO' ROACIER ;
  642.  
  643.  
  644. *
  645. *** HELIUM 8 MPA
  646. *
  647. *** ATTENTION: LES PROGRESSIONS DOIVENT AVOIR LA MEME LONGEUR
  648. *** ici les temperatures PROGTHe sont en degres CELSIUS
  649. PROGTHe = PROG 250. 260. 270. 280. 290. 300. 310. 320. 330. 340.
  650. 350. 360. 370. 380. 390. 400. 410. 420. 430. 440. 450.
  651. 460. 470. 480. 490. 500. 510. 520. 530. 540. 550. ;
  652. PROGRHO = PROG
  653. 7.2195 7.0872 6.9596 6.8365 6.7176 6.6029 6.4919 6.3847 6.2809 6.1804
  654. 6.0831 5.9888 5.8974 5.8087 5.7227 5.6391 5.5580 5.4791 5.4025 5.3280
  655. 5.2554 5.1849 5.1162 5.0493 4.9841 4.9206 4.8587 4.7983 4.7394 4.6819
  656. 4.6258 ;
  657.  
  658. PROGCP = PROG
  659. 5183.9 5184.2 5184.5 5184.8 5185.1 5185.4 5185.6 5185.9 5186.1 5186.3
  660. 5186.5 5186.7 5186.9 5187.1 5187.3 5187.4 5187.6 5187.7 5187.9 5188.0
  661. 5188.1 5188.3 5188.4 5188.5 5188.6 5188.7 5188.8 5188.9 5188.9 5189.0
  662. 5189.1 ;
  663.  
  664. PROGLAM = PROG
  665. 0.23121 0.23432 0.23741 0.24049 0.24354
  666. 0.24658 0.24960 0.25261 0.25560 0.25857
  667. 0.26152 0.26446 0.26738 0.27029 0.27318
  668. 0.27606 0.27892 0.28176 0.28460 0.28741
  669. 0.29022 0.29300 0.29578 0.29854 0.30129
  670. 0.30402 0.30675 0.30946 0.31215 0.31484 0.31751;
  671.  
  672. PROGMU = PROG
  673. 2.86840E-05 2.90485E-05 2.94108E-05 2.97711E-05 3.01293E-05
  674. 3.04856E-05 3.08401E-05 3.11927E-05 3.15435E-05 3.18927E-05
  675. 3.22402E-05 3.25862E-05 3.29307E-05 3.32737E-05 3.36154E-05
  676. 3.39557E-05 3.42947E-05 3.46325E-05 3.49691E-05 3.53045E-05
  677. 3.56389E-05 3.59722E-05 3.63046E-05 3.66360E-05 3.69664E-05
  678. 3.72960E-05 3.76248E-05 3.79527E-05 3.82799E-05 3.86064E-05
  679. 3.89322E-05;
  680.  
  681. EVOROHE = EVOL MANU 'T' PROGTHe 'RHO' PROGRHO;
  682. EVOCPHE = EVOL MANU 'T' PROGTHe 'CP' PROGCP;
  683. EVOMUHE = EVOL MANU 'T' PROGTHe 'MU' PROGMU;
  684. EVOLAMHE = EVOL MANU 'T' PROGTHe 'LAM' PROGLAM;
  685.  
  686.  
  687. *** helium : la procedure PTH_HE8 sort ro mu lambda cp
  688. *** acier : la procedure PTH_ACI sort ro lambda cp
  689.  
  690.  
  691. ****************************************************************
  692. *** IDENTIFICATION DES SURFACES D ECHANGE
  693. ****************************************************************
  694.  
  695.  
  696. XMIN = MINI (COOR 1 VFW);
  697. ELXMIN = ELEM (ENVE VFW) APPUYE
  698. (POINT VFW PLAN
  699. (XMIN 0. 0.)
  700. (XMIN 1. 0.)
  701. (XMIN 0. 1.));
  702.  
  703. CTUBES = CCON (CONT ELXMIN);
  704.  
  705. * SIN1 = CTUBES . 2;
  706. * SIN2 = CTUBES . 6;
  707. *bp2016 : on ne sait pas a priori comment range CCON
  708. pSIN1 = 0.0000 7.66500E-02 -1.6490 ;
  709. pSIN2 = 0.0000 1.09500E-02 -1.10000E-02;
  710. repe bccon (DIME CTUBES);
  711. SIN1t = CTUBES . &bccon;
  712. n1t = NBEL SIN1t;
  713. si (n1t ega 20);
  714. p1t = BARY SIN1t;
  715. x1 = norm (p1t moin pSIN1);
  716. x2 = norm (p1t moin pSIN2);
  717. mess &bccon ': ' x1 x2;
  718. si (x1 < 1.E-4); isin1 = &bccon; finsi;
  719. si (x2 < 1.E-4); isin2 = &bccon; finsi;
  720. finsi;
  721. fin bccon;
  722. SIN1 = CTUBES . isin1;
  723. SIN2 = CTUBES . isin2;
  724.  
  725. EXPTUBES = CCON (DIFF (ENVE VFW) ELXMIN);
  726.  
  727. list EXPTUBES ;
  728.  
  729.  
  730. * SCONV1 = EXPTUBES . 2;
  731. * SCONV2 = EXPTUBES . 3;
  732. pconv1 = 0.28682 6.57000E-02 -0.77540;
  733. pconv2 = 0.28682 2.19000E-02 -0.88460;
  734. repe bccon (DIME EXPTUBES);
  735. SCONV1t = EXPTUBES . &bccon;
  736. n1t = NBEL SCONV1t;
  737. * p1t = BARY SCONV1t;
  738. * MESS &bccon ' : ' n1t (coor p1t 1) (coor p1t 2) (coor p1t 3);
  739. * 2 : 600 0.28682 6.57000E-02 -0.77540
  740. * 3 : 600 0.28682 2.19000E-02 -0.88460
  741. si (n1t ega 600);
  742. p1t = BARY SCONV1t;
  743. x1 = norm (p1t moin pconv1);
  744. x2 = norm (p1t moin pconv2);
  745. mess &bccon ': ' x1 x2;
  746. si (x1 < 1.E-4); iconv1 = &bccon; finsi;
  747. si (x2 < 1.E-4); iconv2 = &bccon; finsi;
  748. finsi;
  749. fin bccon;
  750. SCONV1 = EXPTUBES . iconv1;
  751. SCONV2 = EXPTUBES . iconv2;
  752.  
  753.  
  754. ****************************************************************
  755. *** PARTITIONNEMENT DES SURFACES D ECHANGE
  756. ****************************************************************
  757.  
  758.  
  759. TUBE1 = TABLE;
  760. TUBE2 = TABLE;
  761.  
  762. TUBE1 . 'G' = GTUBE;
  763. TUBE1 . 'PM' = PMOUL;
  764. TUBE1 . 'DH' = DIAM;
  765. TUBE1 . 'RHO' = EVOROHE;
  766. TUBE1 . 'LAM' = EVOLAMHE;
  767. TUBE1 . 'CP' = EVOCPHE;
  768. TUBE1 . 'MU' = EVOMUHE;
  769.  
  770. TUBE2 . 'G' = GTUBE;
  771. TUBE2 . 'PM' = PMOUL;
  772. TUBE2 . 'DH' = DIAM;
  773. TUBE2 . 'RHO' = EVOROHE;
  774. TUBE2 . 'LAM' = EVOLAMHE;
  775. TUBE2 . 'CP' = EVOCPHE;
  776. TUBE2 . 'MU' = EVOMUHE;
  777.  
  778. Spass1 = TUBE1 . 'PM' * TUBE1 . 'DH' / 4. ;
  779. Spass2 = TUBE2 . 'PM' * TUBE2 . 'DH' / 4. ;
  780.  
  781.  
  782. TUBE1 . SIN = SIN1;
  783. TUBE2 . SIN = SIN2;
  784. TUBE1 . SURFCONV = SCONV1;
  785. TUBE2 . SURFCONV = SCONV2;
  786.  
  787. *** Flux de chaleur sur la FW
  788. YMAX = MAXI (COOR 2 VFW);
  789. YMIN = MINI (COOR 2 VFW);
  790.  
  791. ELYMIN = ELEM (ENVE VFW) APPUYE
  792. (POINT VFW PLAN
  793. (0. YMIN 0.)
  794. (1. YMIN 0.)
  795. (0. YMIN 1.) );
  796.  
  797. ELYMAX = ELEM (ENVE VFW) APPUYE
  798. (POINT VFW PLAN
  799. (0. YMAX 0.)
  800. (1. YMAX 0.)
  801. (0. YMAX 1.) );
  802.  
  803. ENVEXT = DIFF (ENVE VFW)
  804. (ELYMAX et ELYMIN et ELXMIN et
  805. TUBE1 . SURFCONV et TUBE2 . SURFCONV);
  806.  
  807. * SFW2 = (CCON ENVEXT) . 2;
  808. * SFW1 = (CCON ENVEXT) . 1;
  809. psfw1 = 0.28310 4.38000E-02 -0.83000;
  810. psfw2 = 0.29199 4.38000E-02 -0.83000;
  811. ENVCCON = CCON ENVEXT;
  812. repe bccon (DIME ENVCCON);
  813. sfw1t = ENVCCON . &bccon;
  814. n1t = NBEL sfw1t;
  815. p1t = BARY sfw1t;
  816. * MESS &bccon ' : ' n1t (coor p1t 1) (coor p1t 2) (coor p1t 3);
  817. x1 = norm (p1t moin psfw1);
  818. x2 = norm (p1t moin psfw2);
  819. mess &bccon ': ' x1 x2;
  820. si (x1 < 1.E-4); isfw1 = &bccon; finsi;
  821. si (x2 < 1.E-4); isfw2 = &bccon; finsi;
  822. fin bccon;
  823. SFW2 = ENVCCON . isfw2;
  824. SFW1 = ENVCCON . isfw1;
  825.  
  826. ZMAX = MAXI (COOR 3 SFW2);
  827. ELSIDE = ELEM SFW2 APPUYE
  828. (POINT SFW2 PLAN
  829. (0. 0. ZMAX)
  830. (1. 0. ZMAX)
  831. (0. 1. ZMAX) 0.0001);
  832.  
  833. XMAX = MAXI (COOR 1 ELSIDE);
  834. SPLSM = ELEM SFW2 APPUYE
  835. (POINT (COOR 1 SFW2) EGSUPE (XMAX - 0.0001));
  836.  
  837. xmil ymil zmil = coor splsm ;
  838. pmil = ( maxi xmil ) (0.5 * ((mini ymil) + ( maxi ymil)))
  839. (0.5 * ((mini zmil ) + ( maxi zmil))) ;
  840.  
  841. ZMAX = MAXI (COOR 3 SFW1);
  842. ELSIDE = ELEM SFW1 APPUYE
  843. (POINT SFW1 PLAN
  844. (0. 0. ZMAX)
  845. (1. 0. ZMAX)
  846. (0. 1. ZMAX) 0.0001);
  847.  
  848. XMAX = MAXI (COOR 1 ELSIDE);
  849. SBZ = ELEM SFW1 APPUYE
  850. (POINT (COOR 1 SFW1) EGSUPE (XMAX - 0.0001));
  851.  
  852. W_SPLSM = F_SPLSM * ( mesu SPLSM ) ;
  853. W_SBZ = F_SBZ * ( mesu SBZ ) ;
  854.  
  855. XTT YTT ZTT = COOR VFW ;
  856. decx = 2. * (( MAXI XTT ) - ( MINI XTT )) ;
  857. decy = 2. * (( MAXI YTT ) - ( MINI YTT )) ;
  858.  
  859. PARTSURF TUBE1 ;
  860. FLUI1D_2 TUBE1 decx decy 1.0 Spass1 ;
  861.  
  862. PARTSURF TUBE2;
  863. FLUI1D_2 TUBE2 decx decy 1.1 Spass2 ;
  864.  
  865.  
  866.  
  867. sc1 = tube1.surfconv ;
  868. sc2 = tube2.surfconv ;
  869.  
  870. *trac cach ( vfw et tube1.mtflu et tube2.mtflu ) ;
  871.  
  872.  
  873. elim epselim ( tube1.baflu et tube1.mtflu et sc1 ) ;
  874. pelim1 = '*' ('**' ('/' ('MESURE' tube1.mtflu) ('NBEL' tube1.mtflu))
  875. ('/' 1.D0 ('VALEUR' 'DIME'))) 1.D-3 ;
  876.  
  877. 'ELIMINATION' (sc1 et VFW ) pelim1 ;
  878. 'ELIMINATION' (tube1.baflu et tube1.mtflu ) pelim1 ;
  879.  
  880. elim epselim ( tube2.baflu et tube2.mtflu et sc2 ) ;
  881. pelim2 = '*' ('**' ('/' ('MESURE' tube2.mtflu) ('NBEL' tube2.mtflu))
  882. ('/' 1.D0 ('VALEUR' 'DIME'))) 1.D-3 ;
  883.  
  884. 'ELIMINATION' (sc2 et VFW ) pelim2 ;
  885. 'ELIMINATION' (tube2.baflu et tube2.mtflu ) pelim2 ;
  886.  
  887. *** On va construire le chpoint des produits scalaires de la normale
  888. *** a la face SPLSM et le vecteur unitaire i (1. 0. 0. ), egal au cosinus
  889. *** de la normale et du vecteur i, pour ponderer le flux impose et
  890. *** faire en sorte que sa direction soit donc constante. On cree un
  891. *** nouveau maillage SPLSM2 oriente vers l'exterieur. _SPLSM2 et $SPLSM2
  892. *** sont respectivement les elements QUAF et le modele Navier-Stokes
  893. *** correspondant.
  894. *** Idem avec la face SBZ
  895.  
  896. *** On va multiplier ce produit scalaire par le flux impose.
  897.  
  898. ListXm = prog ;
  899. repe x ( nbno splsm ) ;
  900. ListXm = ListXm et ( prog 1. 0. 0. ) ;
  901. fin x ;
  902. splsm = inve ( orie SPLSM 'POINT' ( 0. 0. 0. )) ;
  903. SBZ = inve ( orie SBZ 'POINT' ( 0. 0. 0. )) ;
  904. CHPx1 = MANU 'CHPO' splsm
  905. ('MOTS' 'UX' 'UY' 'UZ') ListXm ;
  906. CHPx2 = MANU 'CHPO' sbz
  907. ('MOTS' 'UX' 'UY' 'UZ') ListXm ;
  908.  
  909. *** Generation des QUAFs
  910. *** --------------------
  911. _baflu1 = 'CHANGER' tube1.baflu 'QUAF' ;
  912. _mtflu1 = 'CHANGER' tube1.mtflu 'QUAF' ;
  913. _Clim1 = 'CHANGER' sc1 'QUAF' ;
  914. _VFW = 'CHANGER' VFW 'QUAF' ;
  915.  
  916. _baflu2 = 'CHANGER' tube2.baflu 'QUAF' ;
  917. _mtflu2 = 'CHANGER' tube2.mtflu 'QUAF' ;
  918. _Clim2 = 'CHANGER' sc2 'QUAF' ;
  919. _SPLSM = 'CHANGER' SPLSM 'QUAF' ;
  920. _SBZ = 'CHANGER' SBZ 'QUAF' ;
  921.  
  922.  
  923. 'TEMPS' 'ZERO' ;
  924. cfc1 mcf1 mfc1 = matcon0 ( tube1 . fac0 ) ( tube1 . ele0 ) ;
  925.  
  926. *** Elimination des points doubles
  927. *** ------------------------------
  928. 'ELIMINATION' ( _baflu1 'ET' _mtflu1 'ET' cfc1 ) pelim1 ;
  929. 'ELIMINATION' ( _Clim1 'ET' _VFW 'ET' cfc1 ) pelim1 ;
  930.  
  931. mcf1 = 'CHANGER' mcf1 'INCO' ('MOTS' 'T') ('MOTS' 'SCAL')
  932. ('MOTS' 'Q') ('MOTS' 'SCAL') ;
  933. mfc1 = 'CHANGER' mfc1 'INCO' ('MOTS' 'T') ('MOTS' 'SCAL')
  934. ('MOTS' 'Q') ('MOTS' 'SCAL') ;
  935.  
  936. cfc2 mcf2 mfc2 = matcon0 ( tube2 . fac0 ) ( tube2 . ele0 ) ;
  937.  
  938.  
  939.  
  940.  
  941. *** Elimination des points doubles
  942. *** ------------------------------
  943. 'ELIMINATION' ( _baflu2 'ET' _mtflu2 'ET' cfc2 ) pelim2 ;
  944. 'ELIMINATION' ( _Clim2 'ET' _VFW 'ET' cfc2 ) pelim2 ;
  945.  
  946. mcf2 = 'CHANGER' mcf2 'INCO' ('MOTS' 'T') ('MOTS' 'SCAL')
  947. ('MOTS' 'Q') ('MOTS' 'SCAL') ;
  948. mfc2 = 'CHANGER' mfc2 'INCO' ('MOTS' 'T') ('MOTS' 'SCAL')
  949. ('MOTS' 'Q') ('MOTS' 'SCAL') ;
  950. TCpu1 = tcpu9 0. ; comm temps ecoule ;
  951.  
  952.  
  953.  
  954. *** ***** Densite de puissance neutronique
  955. afw = 2.7116 ;
  956. bfw = 13.673 ;
  957. cfw = 3.3047 ;
  958. dfw = 5.425 ;
  959. FACTF = 0.78/0.75;
  960.  
  961.  
  962. Pr_Xfw = PROG 0. PAS 0.001 1 ;
  963. Pr_NWLfw = FACTF * ( (afw * (EXP ( -1. * bfw * Pr_Xfw))) +
  964. (cfw * (EXP ( -1. * dfw * Pr_Xfw)))
  965. );
  966. EVQfw = EVOL MANU 'XRAD' Pr_Xfw 'FW' Pr_NWLfw ;
  967. X_TOT = (COOR 1 VFW);
  968. NWP_fw = IPOL X_TOT Pr_Xfw Pr_NWLfw;
  969. NWP_fw = NWP_fw * 1.E6;
  970.  
  971.  
  972.  
  973. *** Recapitulatif
  974. *** -------------
  975. opti echo 0 ;
  976. Mess 'Recapitulatif : ' ;
  977. Mess '-------------' ;
  978.  
  979. SI ( EGA MetInv 'DIRECT' ) ;
  980. Mess 'Methode d inversion directe, robuste mais lente' ;
  981. SINON ;
  982. 'Methode d inversion iterative, moins robuste mais plus rapide';
  983. FINSI ;
  984.  
  985. SI EchColb ;
  986. MESS 'Loi echange turbulent COLBURN' ;
  987. SINON ;
  988. MESS 'Loi echange turbulent Gnielinski' ;
  989. FINSI ;
  990.  
  991. SI (non complet) ;
  992. MESS 'Calcul test avec ' nb_bouc ' iterations' ;
  993. SINON ;
  994. MESS 'Calcul nominal avec ' nb_bouc ' iterations' ;
  995. FINSI ;
  996.  
  997. *gounand opti echo 1 ;
  998.  
  999. ***********************************************************
  1000. * *
  1001. *** PREPARATION DU CALCUL *
  1002. * *
  1003. ***********************************************************
  1004. *
  1005. *** Modeles Navier-Stokes
  1006. *** ---------------------
  1007.  
  1008. $baflu1 = 'MODELISER' _baflu1 'NAVIER_STOKES' discr ;
  1009. $mtflu1 = 'MODELISER' _mtflu1 'NAVIER_STOKES' discr ;
  1010. $Clim1 = 'MODELISER' _Clim1 'NAVIER_STOKES' discr ;
  1011. $baflu2 = 'MODELISER' _baflu2 'NAVIER_STOKES' discr ;
  1012. $mtflu2 = 'MODELISER' _mtflu2 'NAVIER_STOKES' discr ;
  1013. $Clim2 = 'MODELISER' _Clim2 'NAVIER_STOKES' discr ;
  1014. $VFW = 'MODELISER' _VFW 'NAVIER_STOKES' discr ;
  1015. $SPLSM = 'MODELISER' _SPLSM 'NAVIER_STOKES' discr ;
  1016. $SBZ = 'MODELISER' _SBZ 'NAVIER_STOKES' discr ;
  1017.  
  1018.  
  1019. FSPLSM9 = F_SPLSM * ( PSCA ( doma $SPLSM NORMALEV )
  1020. CHPx1 ('MOTS' 'UX' 'UY' 'UZ') ('MOTS' 'UX' 'UY' 'UZ')) ;
  1021. FSBZ9 = F_SBZ * ( PSCA ( doma $SBZ NORMALEV )
  1022. CHPx2 ('MOTS' 'UX' 'UY' 'UZ') ('MOTS' 'UX' 'UY' 'UZ')) ;
  1023.  
  1024. trac cach FSPLSM9 splsm titr 'flux impose sur face SPLSM - W/m2' ;
  1025. trac cach FSBZ9 sbz titr 'flux impose sur face SBZ - W/m2' ;
  1026.  
  1027.  
  1028. NWP_fwe = NOEL $VFW NWP_fw ; comm sources ;
  1029. VoSol = ( maxi ( resu ( DOMA $VFW 'VOLUME' ))) ;
  1030. SouSol = ( maxi ( resu NWP_fw )) ;
  1031.  
  1032.  
  1033.  
  1034. *** Initialisation des tables pour les calculs Thermiques structures et fluides
  1035.  
  1036. rvsol = 'EQEX' 'ITMA' 1 'NITER' nitr1 'FIDT' 1000 'OMEGA' omgr1 ;
  1037.  
  1038. rvsol = 'EQEX' rvsol
  1039. 'OPTI' 'EF' 'IMPL'
  1040. 'ZONE' $VFW 'OPER' 'LAPN' 'Lacier' 'INCO' 'TSOL'
  1041. 'ZONE' $Clim1 'OPER' 'ECHI' 'H1' 'T1' 'INCO' 'TSOL' 'TSOL'
  1042. 'ZONE' $Clim2 'OPER' 'ECHI' 'H2' 'T2' 'INCO' 'TSOL' 'TSOL'
  1043. ;
  1044.  
  1045.  
  1046. rvsol = 'EQEX' rvsol
  1047. 'OPTI' 'EF' 'IMPL'
  1048. 'ZONE' $VFW 'OPER' 'FIMP' 'Soursol' 'INCO' 'TSOL'
  1049. 'ZONE' $SPLSM 'OPER' 'FIMP' FSPLSM9 'INCO' 'TSOL'
  1050. 'ZONE' $SBZ 'OPER' 'FIMP' FSBZ9 'INCO' 'TSOL'
  1051. ;
  1052.  
  1053. rvsol . 'METHINV' . 'TYPINV' = IndInv ;
  1054.  
  1055. *** Dans l'eau
  1056.  
  1057. rvflu = 'EQEX' 'ITMA' 1 'NITER' 1 'FIDT' 1000 ;
  1058. rvflu = 'EQEX' rvflu
  1059. 'OPTI' 'EF' 'IMPL' 'CENTREE' 'NOCONS'
  1060. 'ZONE' $mtflu1 'OPER' 'KONV' 'RCPFLU1' 'UFLU1' 'LFLU1' 'INCO' 'TFLU'
  1061. 'ZONE' $mtflu2 'OPER' 'KONV' 'RCPFLU2' 'UFLU2' 'LFLU2' 'INCO' 'TFLU'
  1062. ;
  1063.  
  1064. rvflu = 'EQEX' rvflu
  1065. 'OPTI' 'EF' 'IMPL'
  1066. 'ZONE' $mtflu1 'OPER' 'LAPN' 'LFLU1' 'INCO' 'TFLU'
  1067. 'ZONE' $mtflu1 'OPER' 'FIMP' 'PFLU1' 'INCO' 'TFLU'
  1068. 'ZONE' $mtflu2 'OPER' 'LAPN' 'LFLU2' 'INCO' 'TFLU'
  1069. 'ZONE' $mtflu2 'OPER' 'FIMP' 'PFLU2' 'INCO' 'TFLU'
  1070. ;
  1071.  
  1072.  
  1073. *** Conditions aux limites en temperature lames d'eau
  1074.  
  1075. rvflu = 'EQEX' rvflu
  1076. 'CLIM' 'TFLU' 'TIMP' ('DOMA' $baflu1 'MAILLAGE') TFLUek
  1077. 'CLIM' 'TFLU' 'TIMP' ('DOMA' $baflu2 'MAILLAGE') TFLUek
  1078. ;
  1079.  
  1080. *** Initialisation de toutes les variables avant le calcul
  1081.  
  1082. rvi = 'TABLE' 'INCO' ;
  1083. rvsol . 'INCO' = rvi ;
  1084. rvflu . 'INCO' = rvi ;
  1085. rvi . 'TSOL' = 'KCHT' $VFW 'SCAL' 'SOMMET' TFLUek ;
  1086.  
  1087. LamAci = ( pth_aci TFLUek ) . 'LAMS' ;
  1088.  
  1089. rvi . 'Lacier' = 'KCHT' $VFW 'SCAL' 'CENTRE' LamAci ;
  1090. rvi . 'Soursol' = 'KCHT' $VFW 'SCAL' 'CENTRE' NWP_fwe ;
  1091.  
  1092.  
  1093. rvi . 'T1' = 'KCHT' $Clim1 'SCAL' 'CENTRE' 0.D0 ;
  1094. rvi . 'F1' = 'KCHT' $Clim1 'SCAL' 'CENTRE' 0.D0 ;
  1095. rvi . 'H1' = 'KCHT' $Clim1 'SCAL' 'CENTRE' 0.D0 ;
  1096. rvi . 'T2' = 'KCHT' $Clim2 'SCAL' 'CENTRE' 0.D0 ;
  1097. rvi . 'F2' = 'KCHT' $Clim2 'SCAL' 'CENTRE' 0.D0 ;
  1098. rvi . 'H2' = 'KCHT' $Clim2 'SCAL' 'CENTRE' 0.D0 ;
  1099.  
  1100. rvi . 'TFLU' = 'KCHT' ( $mtflu1 et $mtflu2 ) 'SCAL' 'SOMMET' TFLUek ;
  1101. rvi . 'PFLU1'= 'KCHT' $mtflu1 'SCAL' 'CENTRE' 0.D0 ;
  1102. rvi . 'PFLU2'= 'KCHT' $mtflu2 'SCAL' 'CENTRE' 0.D0 ;
  1103.  
  1104. *** Copy of the fields to do the convergence check :
  1105. thep = 'COPIER' (rvi . 'TFLU') ;
  1106. tcbp = 'COPIER' (rvi . 'TSOL') ;
  1107.  
  1108. *** Initialisation des proprietes physiques de l'helium :
  1109. Rt_He8 = PTH_HE8 TFLUek ;
  1110. rflu = Rt_He8 . 'ROG' ;
  1111. muflu = Rt_He8 . 'MUG' ;
  1112. lflu = Rt_He8 . 'LAMG' ;
  1113. cpflu = Rt_He8 . 'CPG' ;
  1114.  
  1115. rvi . 'LFLU1' = 'KCHT' $mtflu1 'SCAL' 'CENTRE' lflu ;
  1116. rvi . 'RCPFLU1' = 'KCHT' $mtflu1 'SCAL' 'CENTRE' ('*' rflu cpflu) ;
  1117. rvi . 'LFLU2' = 'KCHT' $mtflu2 'SCAL' 'CENTRE' lflu ;
  1118. rvi . 'RCPFLU2' = 'KCHT' $mtflu2 'SCAL' 'CENTRE' ('*' rflu cpflu) ;
  1119.  
  1120.  
  1121. *** TUBEx . 'G' est un debit massique en kg/s
  1122. uflu1 = (( TUBE1 . 'G' / Spass1 ) / rflu) ;
  1123. uflu2 = (( TUBE2 . 'G' / Spass2 ) / rflu) ;
  1124. rvi . 'UFLU1' = 'KCHT' $mtflu1 'VECT' 'SOMMET' ( 0.D0 0.D0 uflu1 ) ;
  1125. rvi . 'UFLU2' = 'KCHT' $mtflu2 'VECT' 'SOMMET' ( 0.D0 0.D0 uflu2 ) ;
  1126.  
  1127. reyn6 = rflu * uflu1 * diam / muflu ;
  1128. mess diam reyn6 uflu1 ;
  1129.  
  1130.  
  1131.  
  1132.  
  1133. ****************************************************************************
  1134. *** BOUCLE DE CALCUL *
  1135. *** *
  1136. ****************************************************************************
  1137.  
  1138. 'TEMPS' 'ZERO' ;
  1139.  
  1140. 'REPETER' bouc nb_bouc ;
  1141.  
  1142. MESS' 1) Calcul de la Tre moy dans les fluides' ;
  1143. tmyflu1 = 'NOEL' $mtflu1 (rvi . 'TFLU') ;
  1144. t_flu1 = ( REDU (rvi . 'TFLU') tube1.mtflu ) ;
  1145. tmyflu2 = 'NOEL' $mtflu2 (rvi . 'TFLU') ;
  1146. t_flu2 = ( REDU (rvi . 'TFLU') tube2.mtflu ) ;
  1147.  
  1148. 'MESSAGE' 'Maxi Tre moy fluide 1 (degres C) : '
  1149. ('-' ('MAXIMUM' tmyflu1) CK) ;
  1150. 'MESSAGE' 'Maxi Tre moy fluide 2 (degres C) : '
  1151. ('-' ('MAXIMUM' tmyflu2) CK) ;
  1152. chpobor 'Tre fluide 1 mini & maxi en C ' ( t_flu1 - CK );
  1153. chpobor 'Tre fluide 2 mini & maxi en C ' ( t_flu2 - CK );
  1154.  
  1155.  
  1156. MESS '* 2) Transfert sur l interface';
  1157. tmtif1 = '*' mcf1 tmyflu1 ;
  1158. tmtif2 = '*' mcf2 tmyflu2 ;
  1159. rvi . 'T1' = 'KCHT' $clim1 'SCAL' 'CENTRE' tmtif1 ;
  1160. rvi . 'T2' = 'KCHT' $clim2 'SCAL' 'CENTRE' tmtif2 ;
  1161. chpobor 'Tre interface 1 (Celsius )' (( rvi . 'T1' ) - CK ) ;
  1162. chpobor 'Tre interface 2 (Celsius )' (( rvi . 'T2' ) - CK ) ;
  1163.  
  1164. MESS ' 3) Calcul du coefficient d echange a l interface ' ;
  1165. *** 3) Calcul du coefficient d'echange a l'interface
  1166. *** et des proprietes physiques du solide
  1167. *** a partir des temperatures a l'instant precedent.
  1168. *** Temperature de melange
  1169. tm1 = rvi . 'T1' ;
  1170. tm2 = rvi . 'T2' ;
  1171. *** Temperature a la paroi
  1172. tp1 = 'NOEL' $clim1 (rvi . 'TSOL') ;
  1173. tp2 = 'NOEL' $clim2 (rvi . 'TSOL') ;
  1174. *** Temperature de film
  1175. tfi1 = '*' ('+' tm1 tp1) 0.5D0 ;
  1176. tfi2 = '*' ('+' tm2 tp2) 0.5D0 ;
  1177. pptfil1 = PTH_HE8 tfi1 ;
  1178. mufil1 = pptfil1 . 'MUG' ;
  1179. lfil1 = pptfil1 . 'LAMG';
  1180. cpfil1 = pptfil1 . 'CPG' ;
  1181. pptfil2 = PTH_HE8 tfi2 ;
  1182. mufil2 = pptfil2 . 'MUG' ;
  1183. lfil2 = pptfil2 . 'LAMG';
  1184. cpfil2 = pptfil2 . 'CPG' ;
  1185. pranfil1 = '*' ('*' mufil1 cpfil1) ('INVERSE' lfil1) ;
  1186. pranfil2 = '*' ('*' mufil2 cpfil2) ('INVERSE' lfil2) ;
  1187.  
  1188.  
  1189. SI ( EGA &bouc 1 ) ;
  1190. *** Calcul des nombres de Reynolds a partir de la temperature fluide (une fois)
  1191. opti echo 0 ;
  1192.  
  1193. pptfil9 = PTH_HE8 ( mini t_flu1 ) ;
  1194. rofil9 = pptfil9 . 'ROG' ;
  1195. mufil9 = pptfil9 . 'MUG' ;
  1196. lfil9 = pptfil9 . 'LAMG';
  1197. cpfil9 = pptfil9 . 'CPG' ;
  1198. Reflu1 = ( ( TUBE1 . 'G' ) * ( TUBE1 . 'DH' ) / Spass1 ) / mufil9 ;
  1199.  
  1200. pptfil9 = PTH_HE8 ( mini t_flu2 ) ;
  1201. rofil9 = pptfil9 . 'ROG' ;
  1202. mufil9 = pptfil9 . 'MUG' ;
  1203. lfil9 = pptfil9 . 'LAMG';
  1204. cpfil9 = pptfil9 . 'CPG' ;
  1205. Reflu2 = ( ( TUBE2 . 'G' ) * ( TUBE2 . 'DH' ) / Spass2 ) / mufil9 ;
  1206. Mess 'Nb de Reynolds ' ;
  1207. chpobor 'interne fluide 1 ' Reflu1 ;
  1208. chpobor 'interne fluide 2 ' Reflu2 ;
  1209.  
  1210. SI ( Reflu1 > seuilam ) ;
  1211. RegEcoM.1 = RTUR ;
  1212. SINON ;
  1213. RegEcoM.1 = RLAM ;
  1214. FINSI ;
  1215.  
  1216. SI ( Reflu2 > seuilam ) ;
  1217. RegEcoM.2 = RTUR ;
  1218. SINON ;
  1219. RegEcoM.2 = RLAM ;
  1220. FINSI ;
  1221.  
  1222. *gounand opti echo 1 ;
  1223. FINSI ; comm Calcul des nombres de Reynolds ;
  1224.  
  1225. SI ( EGA RegEcoM.1 RTUR ) ; comm fluide UN ;
  1226.  
  1227. SI EchColb ;
  1228. *** Colburn
  1229. nuss1 = A_colb '*' ('**' Reflu1 B_colb)
  1230. '*' ('**' pranfil1 C_colb) ;
  1231. SINON ;
  1232.  
  1233. *** Gnielinski
  1234. ReyGnie = Reflu1 - 1000. ;
  1235. ReyLogG = LOG Reflu1 ;
  1236.  
  1237. K_gnie = A_gnie * (LOG (Reflu1 /
  1238. (( B_gnie * ReyLogG ) + C_gnie ))) ;
  1239. F_frot = 0.5 / ( K_gnie ** 2. ) ;
  1240. F_frot2 = F_frot ** 0.5 ;
  1241.  
  1242. chpobor 'Reyn - 1000. ' ReyGnie ;
  1243. chpobor 'coeff frott ' ( 2. * F_frot );
  1244.  
  1245. PrGnie = ((pranfil1 ** s_23 ) - 1. ) ;
  1246. chpobor 'Pr**2/3 - 1 ' PrGnie ;
  1247. nuss1 = F_frot * pranfil1 * ReyGnie /
  1248. ( 1. + (12.7 * F_frot2 * PrGnie )) ;
  1249. FINSI ;
  1250.  
  1251. SINON ;
  1252. nuss1 = Nusslam ;
  1253. nuss2 = Nusslam ;
  1254. FINSI ;
  1255.  
  1256. SI ( EGA RegEcoM.1 RTUR ) ; comm fluide DEUX ;
  1257.  
  1258. SI EchColb ;
  1259. *** Colburn
  1260. nuss2 = A_colb '*' ('**' Reflu2 B_colb)
  1261. '*' ('**' pranfil2 C_colb) ;
  1262. SINON ;
  1263.  
  1264. *** Gnielinski
  1265. ReyGnie = Reflu2 - 1000. ;
  1266. ReyLogG = LOG Reflu2 ;
  1267.  
  1268. K_gnie = A_gnie * (LOG (Reflu2 /
  1269. (( B_gnie * ReyLogG ) + C_gnie ))) ;
  1270. F_frot = 0.5 / ( K_gnie ** 2. ) ;
  1271. F_frot2 = F_frot ** 0.5 ;
  1272.  
  1273. chpobor 'Reyn - 1000. ' ReyGnie ;
  1274. chpobor 'coeff frott ' ( 2. * F_frot );
  1275.  
  1276. PrGnie = ((pranfil2 ** s_23 ) - 1. ) ;
  1277. chpobor 'Pr**2/3 - 1 ' PrGnie ;
  1278. nuss2 = F_frot * pranfil2 * ReyGnie /
  1279. ( 1. + (12.7 * F_frot2 * PrGnie )) ;
  1280. FINSI ;
  1281.  
  1282. SINON ;
  1283. nuss1 = Nusslam ;
  1284. nuss2 = Nusslam ;
  1285. FINSI ;
  1286.  
  1287. mess 'regime fluide 1 : ' RegEcoM.1 ;
  1288. mess 'regime fluide 2 : ' RegEcoM.2 ;
  1289.  
  1290. *** Coefficients d'echange
  1291. cech1 = nuss1 * lfil1 / ( TUBE1 . 'DH' ) ;
  1292. cech2 = nuss2 * lfil2 / ( TUBE2 . 'DH' ) ;
  1293.  
  1294.  
  1295. mess 'Diametres hydrauliques' ;
  1296. chpobor 'fluide 1 ' ( TUBE1 . 'DH' ) ;
  1297. chpobor 'fluide 2 ' ( TUBE2 . 'DH' ) ;
  1298.  
  1299. mess 'Conductivites ' ;
  1300. chpobor 'fluide 1 ' lfil1 ;
  1301. chpobor 'fluide 2 ' lfil2 ;
  1302.  
  1303. mess 'Nb de Prandtl ' ;
  1304. chpobor 'fluide 1 ' pranfil1;
  1305. chpobor 'fluide 2 ' pranfil2;
  1306.  
  1307. mess 'Nb de Nusselt ' ;
  1308. chpobor 'fluide 1 ' nuss1;
  1309. chpobor 'fluide 2 ' nuss2;
  1310.  
  1311. rvi . 'H1' = 'KCHT' $clim1 'SCAL' 'CENTRE' cech1 ;
  1312. rvi . 'H2' = 'KCHT' $clim2 'SCAL' 'CENTRE' cech2 ;
  1313. chpobor 'champ rvi echange 1 ' ( rvi . 'H1' ) ;
  1314. chpobor 'champ rvi echange 2 ' ( rvi . 'H2' ) ;
  1315.  
  1316. *** Proprietes physiques du solide
  1317. tinter9 = 'NOEL' $VFW (rvi . 'TSOL') ;
  1318. lcb = ( pth_aci tinter9 ) . 'LAMS' ;
  1319. rvi . 'Lacier' = 'KCHT' $VFW 'SCAL' 'CENTRE' lcb ;
  1320.  
  1321.  
  1322. '3bis) Activation des sources internes dans structures (en W/m3)' ;
  1323. *** 3bis) Activation des sources internes dans les des structures (en W/m3)
  1324. *** Commentaires :
  1325. *** Comme lors de l'initialisation : on calcule la masse volumique de
  1326. *** chaque corps a partir de la temperature. Puis on en deduit les
  1327. *** puissances des sources internes.
  1328.  
  1329.  
  1330.  
  1331. MESS ' 4) Resolution de la thermique dans les structures ' ;
  1332. *** 4) Resolution de la thermique dans les structures
  1333. EXEC rvsol ;
  1334. opti echo 0 ;
  1335. chpobor 'temperatures solides mini & maxi en Celsius (apres rvsol)'
  1336. (( rvi.tsol ) - CK ) ;
  1337. *gounand opti echo 1 ;
  1338.  
  1339.  
  1340. MESS ' 5) Calcul du flux de chaleur aux interfaces Solides/Fluides' ;
  1341. *** 5) Calcul du flux de chaleur aux interfaces Solides/Fluides
  1342.  
  1343. *** solide/Fluide 1
  1344. rvmdia1 = 'EQEX' 'OPTI' 'VF' 'IMPL'
  1345. 'ZONE' $clim1 'OPER' 'MDIA' 'H1' 'INCO' 'TSOL' 'F1' ;
  1346. rvmdia1 . 'INCO' = rvi ;
  1347. smdia1 mmdia1 = 'MDIA' (rvmdia1 . '1MDIA') ;
  1348. rvmdia2 = 'EQEX' 'OPTI' 'VF' 'IMPL'
  1349. 'ZONE' $clim1 'OPER' 'MDIA' 'H1' 'INCO' 'T1' 'F1' ;
  1350. rvmdia2 . 'INCO' = rvi ;
  1351. smdia2 mmdia2 = 'MDIA' (rvmdia2 . '1MDIA') ;
  1352. flx1 = 'NOMC' 'SCAL' ('-' ('KOPS' mmdia1 '*'
  1353. ('NOMC' 'TSOL' (rvi . 'TSOL')))
  1354. ('KOPS' mmdia2 '*'
  1355. ('NOMC' 'T1' (rvi . 'T1')))) ;
  1356. 'MESSAGE'
  1357. 'Flux integre sur interface solide/Fluide 1 (W) :'
  1358. ('MAXIMUM' ('RESULT' flx1)) ;
  1359.  
  1360. *** solide/Fluide 2
  1361. rvmdia1 = 'EQEX' 'OPTI' 'VF' 'IMPL'
  1362. 'ZONE' $clim2 'OPER' 'MDIA' 'H2' 'INCO' 'TSOL' 'F2' ;
  1363. rvmdia1 . 'INCO' = rvi ;
  1364. smdia1 mmdia1 = 'MDIA' (rvmdia1 . '1MDIA') ;
  1365. rvmdia2 = 'EQEX' 'OPTI' 'VF' 'IMPL'
  1366. 'ZONE' $clim2 'OPER' 'MDIA' 'H2' 'INCO' 'T2' 'F2' ;
  1367. rvmdia2 . 'INCO' = rvi ;
  1368. smdia2 mmdia2 = 'MDIA' (rvmdia2 . '1MDIA') ;
  1369. flx2 = 'NOMC' 'SCAL' ('-' ('KOPS' mmdia1 '*'
  1370. ('NOMC' 'TSOL' (rvi . 'TSOL')))
  1371. ('KOPS' mmdia2 '*'
  1372. ('NOMC' 'T2' (rvi . 'T2')))) ;
  1373. 'MESSAGE'
  1374. 'Flux integre sur interface solide/Fluide 2 (W) :'
  1375. ('MAXIMUM' ('RESULT' flx2)) ;
  1376.  
  1377.  
  1378. *** 6) Transfert en une puissance volumique dans le fluide
  1379. rvi . 'F1' = flx1 ; comm fluide un ;
  1380. pflx1 = '*' mfc1 flx1 ;
  1381. rvi . 'PFLU1' = 'KCHT' $mtflu1 'SCAL' 'CENTRE' pflx1 ;
  1382. mess 'Puissance volumique fournie au fluide 1 : ' ;
  1383. chpobor 'interface fluide 1 tube solide ' pflx1 ;
  1384. chpobor ( rvi . 'PFLU1' ) ;
  1385. rvi . 'F2' = flx2 ; comm fluide deux ;
  1386. pflx2 = '*' mfc2 flx2 ;
  1387. rvi . 'PFLU2' = 'KCHT' $mtflu2 'SCAL' 'CENTRE' pflx2 ;
  1388. mess 'Puissance volumique fournie au fluide 2 : ' ;
  1389. chpobor 'interface fluide 2 tube solide ' pflx2 ;
  1390. chpobor ( rvi . 'PFLU2' ) ;
  1391.  
  1392. MESS '6bis) Activation des sources internes dans le fluide (en W/m3)' ;
  1393. *** 6bis) Activation des sources internes dans le fluide (en W/m3)
  1394. *** Commentaires :
  1395. *** Comme lors de l'initialisation : on calcule la masse volumique de
  1396. *** chaque corps a partir de la temperature. Puis on en deduit les
  1397. *** puissances des sources internes.
  1398.  
  1399.  
  1400. MESS ' 7) Calcul des proprietes physiques fluide ' ;
  1401. *** 7) Calcul des proprietes physiques fluide
  1402. *** a partir des variables a l'instant precedent.
  1403. ***
  1404. *** Fluide 1 :
  1405. dmtflu1 = DOMA $mtflu1 'MAILLAGE' ;
  1406. Tflus = REDU dmtflu1 (rvi . 'TFLU') ;
  1407. Tfluc = 'NOEL' $mtflu1 (rvi . 'TFLU') ;
  1408.  
  1409. ppthe8s = PTH_HE8 Tflus ;
  1410. ppthe8c = PTH_HE8 Tfluc ;
  1411. rhes = ppthe8s . 'ROG' ;
  1412. muhes = ppthe8s . 'MUG' ;
  1413. lhes = ppthe8s . 'LAMG' ;
  1414. cphes = ppthe8s . 'CPG' ;
  1415. rhec = ppthe8c . 'ROG' ;
  1416. muhec = ppthe8c . 'MUG' ;
  1417. lhec = ppthe8c . 'LAMG' ;
  1418. cphec = ppthe8c . 'CPG' ;
  1419.  
  1420. uflu1s = ELNO $mtflu1 (KOPS ( TUBE1 . 'G' / Spass1) / rhec) ;
  1421. uflu1s = NOMC 'UZ' uflu1s ;
  1422. rvi . 'RCPFLU1' = 'KCHT' $mtflu1 'SCAL' 'CENTRE' ('*' rhec cphec) ;
  1423. rvi . 'LFLU1' = 'KCHT' $mtflu1 'SCAL' 'CENTRE' lhec ;
  1424. rvi . 'UFLU1' = 'KCHT' $mtflu1 'VECT' 'SOMMET' uflu1s ;
  1425.  
  1426. fb1 = (exco uz (rvi . 'UFLU1')) ;
  1427. chpobor 'rvi . uflu1 : ' fb1 ;
  1428.  
  1429. *** Fluide 2 :
  1430. dmtflu2 = DOMA $mtflu2 'MAILLAGE' ;
  1431. Tflus = REDU dmtflu2 (rvi . 'TFLU') ;
  1432. Tfluc = 'NOEL' $mtflu2 (rvi . 'TFLU') ;
  1433.  
  1434. ppthe8s = PTH_HE8 Tflus ;
  1435. ppthe8c = PTH_HE8 Tfluc ;
  1436. rhes = ppthe8s . 'ROG' ;
  1437. muhes = ppthe8s . 'MUG' ;
  1438. lhes = ppthe8s . 'LAMG' ;
  1439. cphes = ppthe8s . 'CPG' ;
  1440. rhec = ppthe8c . 'ROG' ;
  1441. muhec = ppthe8c . 'MUG' ;
  1442. lhec = ppthe8c . 'LAMG' ;
  1443. cphec = ppthe8c . 'CPG' ;
  1444.  
  1445. uflu2s = ELNO $mtflu2 (KOPS ( TUBE2 . 'G' / Spass2) / rhec) ;
  1446. uflu2s = NOMC 'UZ' uflu2s ;
  1447. rvi . 'RCPFLU2' = 'KCHT' $mtflu2 'SCAL' 'CENTRE' ('*' rhec cphec) ;
  1448. rvi . 'LFLU2' = 'KCHT' $mtflu2 'SCAL' 'CENTRE' lhec ;
  1449. rvi . 'UFLU2' = 'KCHT' $mtflu2 'VECT' 'SOMMET' uflu2s ;
  1450.  
  1451. fb2 = (exco uz (rvi . 'UFLU2')) ;
  1452. chpobor 'rvi . uflu2 : ' fb2 ;
  1453.  
  1454.  
  1455. MESS ' 8) Calcul de la temperature dans l eau' ;
  1456. *** 8) Calcul de la temperature dans l'eau
  1457. EXEC rvflu ;
  1458. chpobor 'temperature fluide (Celsius) : ' ((rvi . 'TFLU') - CK );
  1459.  
  1460. *** Convergence :
  1461. then = 'COPIER' (rvi . 'TFLU') ;
  1462. tcbn = 'COPIER' (rvi . 'TSOL') ;
  1463. errhe = '/' ('MAXIMUM' ('-' then thep) 'ABS')
  1464. ('MAXIMUM' thep 'ABS') ;
  1465. errcb = '/' ('MAXIMUM' ('-' tcbn tcbp) 'ABS')
  1466. ('MAXIMUM' tcbp 'ABS') ;
  1467. 'MESSAGE' ('CHAINE' 'Iteration ' &bouc) ;
  1468. 'MESSAGE' ('CHAINE' ' errhe = ' errhe) ;
  1469. 'MESSAGE' ('CHAINE' ' errcb = ' errcb) ;
  1470. thep = then ;
  1471. tcbp = tcbn ;
  1472. testcvg = 'ET' (errhe '<' 1.D-4) (errcb '<' 1.D-4) ;
  1473. 'SI' testcvg ;
  1474. maxiter = faux ;
  1475. 'QUITTER' bouc ;
  1476. 'FINSI' ;
  1477.  
  1478. fin bouc ;
  1479.  
  1480. TCpu2 = tcpu9 0. ;
  1481.  
  1482.  
  1483. ************************************************************************
  1484. *** **------------ FIN DU CALCUL ------------------------------********
  1485. ************************************************************************
  1486.  
  1487.  
  1488.  
  1489. ***********************************************************************
  1490. *** POST TRAITEMENT SOMMAIRE
  1491. ***********************************************************************
  1492.  
  1493.  
  1494. *** Calcul des Temperatures et les vitesses
  1495. *** ---------------------------------------
  1496. tk = rvi.tsol ; comm temperatures solides en K ;
  1497. tc = tk - ck ; comm temperatures solides en C ;
  1498. t_tn = rvsol . 'INCO' . 'TSOL' ;
  1499.  
  1500. TsoliC = (rvi . 'TSOL') - CK ;
  1501. TfluiC = (rvi . 'TFLU') - CK ;
  1502.  
  1503. *** Verification des bilans de puissance
  1504. Wsolid = 'MAXIMUM' ('RESULT'(( rvi . 'Soursol' ) *
  1505. ( 'DOMA' $VFW 'VOLUME' ))) ;
  1506.  
  1507. opti echo 0 ;
  1508.  
  1509. Ecform 'Diametre passage fluide 1 '
  1510. '(F5.3)' 'm' ( TUBE1 . 'DH' ) ;
  1511. Ecform 'Diametre passage fluide 2 '
  1512. '(F5.3)' 'm' ( TUBE2 . 'DH' ) ;
  1513.  
  1514. Ecform 'Surface de passage fluide 1 '
  1515. '(E12.5)' 'm2' Spass1 ;
  1516. Ecform 'Surface de passage fluide 2 '
  1517. '(E12.5)' 'm2' Spass2 ;
  1518.  
  1519. Ecform 'Debit massique fluide 1 '
  1520. '(F5.2)' 'kg/s' ( TUBE1 . 'G' ) ;
  1521. Ecform 'Debit massique fluide 2 '
  1522. '(F5.2)' 'kg/s' ( TUBE2 . 'G' ) ;
  1523.  
  1524.  
  1525. Ecform 'Volume solide '
  1526. '(E12.5)' 'm3' VoSol ;
  1527.  
  1528. Ecform 'Densite de puissance interne '
  1529. '(E12.5)' 'W/m3' Sousol ;
  1530. chpobor 'X_TOT (pour sources) : ' X_TOT ;
  1531.  
  1532. Ecform 'Puissance surfacique plasma '
  1533. '(E12.5)' 'W' W_SPLSM ;
  1534. Ecform 'Puissance surfacique interne '
  1535. '(E12.5)' 'W' W_SBZ ;
  1536. WsolTot = Wsolid + W_SPLSM + W_SBZ ;
  1537. WfluTot = ('MAXIMUM' ('RESULT' flx1)) + ('MAXIMUM' ('RESULT' flx2)) ;
  1538.  
  1539. Chpobor 'Coefficient echange fluide 1 (W/m2.K) ' Cech1 ;
  1540. Chpobor 'Coefficient echange fluide 2 (W/m2.K) ' Cech2 ;
  1541.  
  1542. ecform
  1543. 'Flux interface solide/Fluide 1 '
  1544. '(E12.5)' 'W' ('MAXIMUM' ('RESULT' flx1)) ;
  1545. ecform
  1546. 'Flux interface solide/Fluide 2 '
  1547. '(E12.5)' 'W' ('MAXIMUM' ('RESULT' flx2)) ;
  1548.  
  1549. ecform
  1550. 'Puissance totale solide '
  1551. '(E12.5)' 'W' WsolTot ;
  1552.  
  1553. ecform
  1554. 'Puissance totale fluide '
  1555. '(E12.5)' 'W' WfluTot ;
  1556.  
  1557. chpobor 'temperatures solides min & max (Celsius) '
  1558. ((redu ( rvi . 'TSOL' ) VFW) - CK ) ;
  1559.  
  1560. chpobor 'temp. fluides min & max (Celsius) fluide 1 '
  1561. ((redu ( rvi . 'TFLU' ) tube1.mtflu ) - CK ) ;
  1562. chpobor 'temp. fluides min & max (Celsius) fluide 2 '
  1563. ((redu ( rvi . 'TFLU' ) tube2.mtflu ) - CK ) ;
  1564.  
  1565.  
  1566. si complet ;
  1567. opti echo 1 ;
  1568. sinon ;
  1569. opti echo 0 ;
  1570. finsi ;
  1571.  
  1572. si complet ;
  1573.  
  1574. *** Evolution fluide 1
  1575. *** ------------------
  1576. tfc9 = redu TfluiC tube1.mtflu ;
  1577. tfc9c = noel $mtflu1 tfc9 ;
  1578. mtfc9c = doma $mtflu1 centre ;
  1579. repe x (nbno mtfc9c ) ;
  1580. pt = mtfc9c point &x ;
  1581. val89 = coor 3 pt ;
  1582. wal89 = extr tfc9c scal pt ;
  1583. si ( ega &x 1 ) ;
  1584. dqqc = val89 ;
  1585. drrc = wal89 ;
  1586. sinon ;
  1587. dqqc = dqqc et val89 ;
  1588. drrc = drrc et wal89 ;
  1589. finsi ;
  1590. fin x ;
  1591. mindqqc = mini dqqc ;
  1592. ndqqc = dime dqqc ;
  1593. dqqc = dqqc - ( prog ndqqc * mindqqc ) ;
  1594. evtfint1 = evol manu 'Z' dqqc drrc ;
  1595.  
  1596. *** Evolution fluide 2
  1597. *** ------------------
  1598. tfc9 = redu TfluiC tube2.mtflu ;
  1599. tfc9c = noel $mtflu2 tfc9 ;
  1600. mtfc9c = doma $mtflu2 centre ;
  1601. repe x (nbno mtfc9c ) ;
  1602. pt = mtfc9c point &x ;
  1603. val89 = coor 3 pt ;
  1604. wal89 = extr tfc9c scal pt ;
  1605. si ( ega &x 1 ) ;
  1606. dqqc = val89 ;
  1607. drrc = wal89 ;
  1608. sinon ;
  1609. dqqc = dqqc et val89 ;
  1610. drrc = drrc et wal89 ;
  1611. finsi ;
  1612. fin x ;
  1613. mindqqc = mini dqqc ;
  1614. ndqqc = dime dqqc ;
  1615. dqqc = dqqc - ( prog ndqqc * mindqqc ) ;
  1616. evtfint2 = evol manu 'Z' dqqc drrc ;
  1617. *** Chercher les abscisses curvilignes
  1618.  
  1619. trac cach TsoliC VFW titr 'Temperature solide' ;
  1620. trac cach TsoliC sc1 titr 'Temperature interface solide-fluide 1' ;
  1621. trac cach TsoliC sc2 titr 'Temperature interface solide-fluide 2' ;
  1622. trac cach TfluiC tube1.mtflu titr 'Temperature fluide 1' ;
  1623. trac cach TfluiC tube2.mtflu titr 'Temperature fluide 2' ;
  1624. trac TfluiC ( tube1.mtflu et tube2.mtflu )
  1625. titr 'Temperatures fluides 1 et 2 ' ;
  1626. dess ( evtfint1 et evtfint2 ) mima
  1627. titr 'Temperatures fluides 1 et 2 vs abscisse curviligne' ;
  1628. dess EVQfw mima titr 'sources' ;
  1629.  
  1630. factech = 2. ;
  1631.  
  1632. loupe oeil TsoliC VFW
  1633. 'Temperature solide' factech 0. ;
  1634. loupe oeil TsoliC sc1
  1635. 'Temperature interface solide-fluide 1' factech ;
  1636. loupe oeil TsoliC sc2
  1637. 'Temperature interface solide-fluide 2' factech ;
  1638. loupe oeil TfluiC tube1.mtflu
  1639. 'Temperature fluide 1' factech 5. ;
  1640. loupe oeil TfluiC tube2.mtflu
  1641. 'Temperature fluide 2' factech 5. ;
  1642. loupe oeil TfluiC ( tube1.mtflu et tube2.mtflu )
  1643. 'Temperatures fluides 1 et 2' factech 0. ;
  1644.  
  1645. finsi ;
  1646. ************************************************************************
  1647. ****************FIN DU POST-TRAITEMENT SOMMAIRE*************************
  1648. ************************************************************************
  1649.  
  1650. 'TEMPS' 'ZERO' ;
  1651.  
  1652. chpvide matvide = 'KOPS' 'MATRIK' ;
  1653. rvsol . METHINV.'MATASS'=matvide;
  1654. rvsol . METHINV.'MAPREC'=matvide;
  1655. rvflu . METHINV.'MATASS'=matvide;
  1656. rvflu . METHINV.'MAPREC'=matvide;
  1657. menage;
  1658. TCpu3 = tcpu9 0. ;
  1659.  
  1660. opti echo 0 ;
  1661. mess 'Duree calcul matrices des connectivites : ' TCpu1 ;
  1662. mess 'Duree calcul iteratif : ' TCpu2 ;
  1663. mess 'Duree menage : ' TCpu3 ;
  1664. opti echo 1 ;
  1665.  
  1666. FIN ;
  1667.  
  1668.  
  1669.  
  1670.  
  1671.  
  1672.  
  1673.  

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