Télécharger Marangoni1.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : Marangoni1.dgibi
  2. * _____________________
  3. *
  4. * CAS TEST EFFET MARANGONI
  5. * UTILISATION DE LA LOI DE CHAN, CHEN, MAZUMDER
  6. * Journal of Heat Transfert, vol 110, 1988
  7. * _____________________
  8. * OPTIONS TESTEES PLAN MACRO
  9.  
  10. ***************************************************************
  11. ** DESCRIPTION DU TEST :
  12. **
  13. ** Ce test a pour but d'étudier l'opérateur toimp au travers de l'effet
  14. ** Marangoni.
  15. **
  16. ** Une poche de metal liquide est soumise au bombardement d'un flux de
  17. ** chaleur surfacique ayant une loi parabolique. La loi de CHAN décrit
  18. ** ce type d'écoulement. Cette loi donne le profil de température du
  19. ** liquide ainsi que le profil des vitesses a la surface de la poche
  20. ** liquide.
  21. **
  22. ** Lors de ce test, nous imposons directement sur la surface du bain de
  23. ** liquide le profil de température obtenue grâce a la loi de CHAN. Ce
  24. ** profil de température permet de calculer les forces de Marangoni, seul
  25. ** terme moteur de l'écoulement. Le but est de retomber sur le profil
  26. ** théorique des vitesses donné par la loi de CHAN.
  27. **
  28. ** Ref : Journal of Heat Transfert, vol 110, 1988
  29. ** "Asymptotic solution for thermocapillary flow at high and low
  30. ** Prandtl numbers due to concentrated surface heating."
  31. ** CHAN, CHEN, MAZUMDER.
  32. **
  33. ***************************************************************
  34.  
  35. ***********************
  36. ** OPTIONS A TESTER :
  37. ***********************
  38. option DIME 2 ELEM qua8 MODE plan ; MOAXI = FAUX ;
  39. *option DIME 2 ELEM qua8 MODE axis; MOAXI = VRAI ;
  40. *MACRO = QUAF ;
  41.  
  42. ************************************************************
  43. ************************************************************
  44.  
  45. *DIMPR = VRAI ;
  46. DIMPR = FAUX ;
  47. GRAPH = FAUX ;
  48. COMPLET= FAUX ;
  49. option trac psc ;
  50.  
  51. * _________________________________
  52. *
  53. * différents parametres du calcul
  54. * _________________________________
  55.  
  56. * Nombre de mailles
  57. NMAIL = 10 ;
  58.  
  59. * nombre maximal d'itérations
  60. NITER = 8 ;
  61. TERR=0.6 ;
  62. 'SI' COMPLET ;NITER = 50 ; TERR=0.05 ; 'FINSI' ;
  63.  
  64. * coefficient de relaxation pour le champ de vitesse
  65. ALFAU = 0.5 ;
  66.  
  67. * précision requise
  68. PREC = 1.e-3 ;
  69.  
  70. * _______________________________________________________
  71. *
  72. * géométrie du creuset : tronc de cone (dimension en m)
  73. * _______________________________________________________
  74. *
  75.  
  76. * rayon du bas du domaine
  77. rbas = 0.0199 ;
  78.  
  79. * rayon du haut du domaine
  80. rhaut = 0.020 ;
  81.  
  82. * hauteur de liquide
  83. hliq = 0.005 ;
  84.  
  85. * épaisseur de la couche limite
  86. eclm = 1.e-4 ;
  87.  
  88. * rayon moyen du faisceau électonique
  89. rbe = 0.010 ;
  90.  
  91. * __________________________________________________________________
  92. *
  93. * Caractéristiques du faisceau d'électrons à répartition d'énergie
  94. * parabolique : puissance PCANON et "rayon" RFOCAL
  95. * __________________________________________________________________
  96.  
  97. PCANON = 1.e3 ;
  98. RFOCAL = rbe ;
  99.  
  100.  
  101. * ______________________
  102. *
  103. * constantes physiques
  104. * ______________________
  105.  
  106. * constante des gaz parfaits
  107. RG = 8.32 ;
  108.  
  109. * constante de STEPHAN-BOLTZMAN
  110. SIGMA = 5.67E-8 ;
  111.  
  112.  
  113.  
  114. *
  115. * __________________________________________________
  116. *
  117. * propriétés physiques du fluide incompressible
  118. * __________________________________________________
  119.  
  120. * viscosité dynamique (kg/m/s)
  121. mu = 1.3e-3 ;
  122.  
  123. * masse volumique (kg/m3)
  124. rho0 = 6600. ;
  125.  
  126. * conductivité thermique (W/m/K)
  127. lambda = 5. ;
  128.  
  129. * chaleur spécifique (J/kg/K)
  130. Cp = 270 ;
  131.  
  132. * tension de surface (N/m)
  133. sig0 = 0.34 ;
  134.  
  135. * 1/sig0 dsig0/dT (1/K)
  136. gam0 = 5.88e-4 ;
  137.  
  138. * viscosité cinématique (m2/s)
  139. nu = mu / rho0 ;
  140.  
  141. * effet MARANGONI
  142. lev = 1. * gam0 * sig0 / rho0 ;
  143.  
  144. * ______________________
  145. *
  146. * CREATION DU MAILLAGE
  147. * ______________________
  148.  
  149. p0 = 0. 0. ;
  150. p1 = rhaut 0. ;
  151. p2 = rbas (-1. * hliq) ;
  152. p3 = 0. (-1. * hliq) ;
  153.  
  154. p01 = rbe 0. ;
  155. p32 = rbe (-1. * hliq) ;
  156.  
  157. p03 = 0. (-10. * eclm) ;
  158. p12 = rhaut (-10. * eclm) ;
  159.  
  160. d0 = rhaut / NMAIL ;
  161. d1 = rhaut / NMAIL ;
  162. d2 = rhaut / NMAIL ;
  163. surli0 = (p01 droi dini d1 dfin d1 p0 ) coul roug ;
  164. surli1 = (p1 droi dini d2 dfin d1 p01) coul roug ;
  165. surli = surli1 et surli0 ;
  166.  
  167. d0 = hliq / 9 / NMAIL ;
  168. d1 = hliq / 2 / NMAIL ;
  169. d2 = hliq * 3 / NMAIL ;
  170. smm0 = (p0 droi dini d0 dfin d1 p03) coul jaun ;
  171. smm1 = (p03 droi dini d1 dfin d2 p3 ) coul jaun ;
  172. smm = smm1 et smm0 ;
  173.  
  174. scon10 = (inve (smm0 proj 'DIRE' (1. 0.) 'DROI' p1 p2) ) coul vert ;
  175. scon11 = (inve (smm1 proj 'DIRE' (1. 0.) 'DROI' p1 p2) ) coul vert ;
  176. scon1 = scon11 et scon10 ;
  177.  
  178. dz0 = (smm0 proj 'DIRE' (1. 0.) 'DROI' p01 p32) coul bleu ;
  179. dz1 = (smm1 proj 'DIRE' (1. 0.) 'DROI' p01 p32) coul bleu ;
  180. dz = dz0 et dz1 ;
  181.  
  182. zc = (-1. * (rhaut - rbe ) * hliq ) / ( rhaut - rbas) ;
  183.  
  184. scon21= (inve (surli1 proj 'CONI' (rbe zc) 'DROI' p2 p3) ) coul vert ;
  185. scon20= (inve (surli0 proj 'DIRE' (0. -1.) 'DROI' p2 p3) ) coul vert ;
  186. scon2 = scon20 et scon21 ;
  187.  
  188. dr1 = (surli1 proj 'CONI' (rbe zc) 'DROI' p12 p03) coul rose ;
  189. dr0 = (surli0 proj 'DIRE' (0. -1.) 'DROI' p12 p03) coul rose ;
  190. dr = dr1 et dr0 ;
  191.  
  192. scon = scon1 et scon2 ;
  193.  
  194. elim 1.e-6 ( surli1 et surli0 et scon10 et scon11 et scon20
  195. et scon21 et dr0 et dr1 et dz0 et dz1 et smm0 et smm1 ) ;
  196.  
  197. meta1 = daller surli1 dz0 dr1 scon10 ;
  198. meta2 = daller (inve dr1) dz1 scon21 scon11 ;
  199. meta3 = daller (inve dz0) surli0 smm0 dr0 ;
  200. meta4 = daller (inve dz1) (inve dr0) smm1 scon20 ;
  201.  
  202. meta = meta1 et meta2 et meta3 et meta4 ;
  203.  
  204.  
  205. oublier meta1 ;
  206. oublier meta2 ;
  207. oublier meta3 ;
  208. oublier meta4 ;
  209. *trac meta ;
  210. *
  211. ** On réoriente les éléments.
  212. *
  213.  
  214. meta = 'ORIENTER' meta ;
  215. tass meta ;
  216. nbel1 = nbel meta ; list nbel1 ;
  217.  
  218. * transformation des éléments en qua9
  219.  
  220. £META = CHANGER META MACRO ;
  221. £SURLI = CHANGER SURLI MACRO ;
  222. £SCON = CHANGER SCON MACRO ;
  223. £SMM = CHANGER SMM MACRO ;
  224.  
  225. ELIM 1.e-6 (£META ET £SURLI ET £SCON ET £SMM) ;
  226.  
  227. * formulation du modèle NAVIER_STOKES
  228.  
  229. $META = MODE £META 'NAVIER_STOKES' MACRO ;
  230. $SURLI = MODE £SURLI 'NAVIER_STOKES' MACRO ;
  231. $SCON = MODE £SCON 'NAVIER_STOKES' MACRO ;
  232. $SMM = MODE £SMM 'NAVIER_STOKES' MACRO ;
  233.  
  234. mmeta = doma $META maillage ;
  235. ssurli = doma $SURLI maillage ;
  236.  
  237.  
  238.  
  239. * _______________________________________________
  240. *
  241. * SYSTEME D'EQUATIONS ET CONDITIONS AUX LIMITES
  242. * _______________________________________________
  243.  
  244.  
  245.  
  246. * equations de qdm sur ur et uz + div V = 0
  247.  
  248. RV = EQEX $META
  249. OPTI 'EF' 'IMPL' CENTREP1 'SUPG'
  250. ZONE $META OPER KBBT 1 (-1.) INCO 'UN' 'PN'
  251. ZONE $META OPER NS 1. 'UN' nu INCO 'UN'
  252. OPTI 'CENTREE'
  253. ZONE $SURLI OPER TOIMP 'tau' INCO 'UN'
  254. ;
  255.  
  256.  
  257. * conditions aux limites
  258. RV = EQEX RV
  259. CLIM UN UIMP £SMM 0.
  260. UN VIMP £SURLI 0.
  261. ;
  262.  
  263. * ________________
  264. *
  265. * INITIALISATION
  266. * ________________
  267.  
  268. RV.INCO = TABLE INCO ;
  269.  
  270. RV.INCO.'UN' = KCHT $META VECT SOMMET (1.e-8 1.e-8) ;
  271. RV.INCO.'PN' = KCHT $META SCAL CENTREP1 0. ;
  272. RV.INCO.'tau' = KCHT $SURLI VECT CENTRE (0. 0. ) ;
  273.  
  274.  
  275. ********************
  276. * terme tau
  277. * grad T < 0 ,lev > 0 => Marangoni < 0 donc opposé à la qdm
  278. ***********************
  279.  
  280. * Courbe de temperature selon CHAN, CHEN, MAZUMDER
  281. 'SI' ( MOAXI ) ;
  282. bb = 0.70185 ;
  283. cc = 0.35093 ;
  284. f1 = 0.89872 ;
  285. SINON ;
  286. bb = 1. ;
  287. cc = 0.33333 ;
  288. f1 = 1. ;
  289. 'FINSI' ;
  290.  
  291. I0 = PCANON /(PI * (RFOCAL**2.)) ;
  292. q0 = I0 ;
  293. q1 = q0 '/' rbe '/' rbe ;
  294. DTmax = bb * (cc ** -.25) * q0 * (q1 ** -.25)
  295. * ((2 * (rho0 ** 2) * (Cp ** 3) * lev * mu) ** -.25) ;
  296. 'LISTE' DTmax ;
  297. XK = ssurli coor 1 ;
  298. Ttheo = 'KOPS' DTmax * ('KOPS' 1 '-' ('KOPS' (cc / bb / rbe / rbe)
  299. * ('KOPS' XK ** 2 ) ) ) ;
  300. Ttheo = 'KOPS' Ttheo '+' 1200. ;
  301. TK = KCHT $SURLI SCAL SOMMET Ttheo ;
  302.  
  303. ** calcul de l'effet Marangoni
  304. GTK = KOPS GRAD TK $SURLI ;
  305. MARA = KOPS lev '*' GTK ;
  306. RV.INCO.'tau' = KCHT $SURLI VECT CENTRE MARA ;
  307. MARAN = ELNO $SURLI MARA ;
  308.  
  309. * __________________
  310. *
  311. * BOUCLE ITERATIVE
  312. * __________________
  313.  
  314.  
  315. REPETER BLOCKI NITER ;
  316.  
  317. MESS 'ITERATION INTERNE N°' &BLOCKI ;
  318.  
  319. UN0 = COPI RV.INCO.'UN' ;
  320.  
  321.  
  322.  
  323. *
  324. * CALCUL D'UNE ITERATION
  325. *
  326. RV.METHINV.FCPRECT = 1 ;
  327. RV.METHINV.FCPRECI = 1 ;
  328. EXEC RV ;
  329.  
  330. *
  331. * TESTS DE CONVERGENCE
  332. *
  333. UNR = EXCO UX RV.INCO.'UN' ;
  334. UNZ = EXCO UY RV.INCO.'UN' ;
  335. URMAX = MAXI UNR ;
  336. UZMAX = MAXI UNZ ;
  337.  
  338. MESS 'URMAX = ' URMAX ;
  339. MESS 'UZMAX = ' UZMAX ;
  340.  
  341.  
  342. UR0 = UN0 EXCO 'UX' scal ;
  343. UR0 = KCHT $META SCAL SOMMET UR0 ;
  344. UNR = KCHT $META SCAL SOMMET UNR ;
  345. ERUNR = KOPS ( KOPS UNR '-' UR0 ) '/' ( (MAXI (ABS UNR) ) + 1.e-13) ;
  346. ERRUNR = MAXI ( ABS ERUNR ) ;
  347. MESS 'ERRUNR = ' ERRUNR ;
  348.  
  349. UZ0 = EXCO UY UN0 ;
  350. UZ0 = KCHT $META SCAL SOMMET UZ0 ;
  351. UNZ = KCHT $META SCAL SOMMET UNZ ;
  352. ERUNZ = KOPS ( KOPS UNZ '-' UZ0 ) '/' ( (MAXI (ABS UNZ) ) + 1.e-13) ;
  353. ERRUNZ = MAXI ( ABS ERUNZ ) ;
  354. MESS 'ERRUNZ = ' ERRUNZ ;
  355.  
  356.  
  357. ERR = ERRUNR ; VAR = MOTS 'UNR' ;
  358.  
  359. SI ( ERRUNZ > ERR ) ;
  360. ERR = ERRUNZ ; VAR = MOTS 'UNZ' ;
  361. FINSI ;
  362.  
  363.  
  364. VAR1 = EXTR 1 VAR ;
  365. MESS 'erreur relative maximale sur ' VAR1 ERR ;
  366.  
  367. * RELAXATION
  368.  
  369. RV.INCO.'UN' = KOPS ( KOPS ALFAU '*' RV.INCO.'UN')
  370. '+' ( KOPS (1. - ALFAU) '*' UN0 ) ;
  371.  
  372.  
  373. SI (ERR &lt;EG PREC) ;
  374. * convergence des itérations internes
  375. MESS 'CONVERGENCE EN ' &BLOCKI 'ITERATIONS' ;
  376. QUITTER BLOCKI ;
  377. FINSI ;
  378.  
  379. SI (&BLOCKI EGA NITER ) ;
  380. MESS 'PAS DE CONVERGENCE EN ' NITER 'ITERATIONS' ;
  381. FINSI ;
  382.  
  383. ******************************
  384. ** FIN DE LA BOUCLE ITERATIVE
  385. *******************************
  386. FIN BLOCKI ;
  387.  
  388. *************************************
  389. ** COURBE THEORIQUE DE Ur SELON CHAN
  390. *************************************
  391. XK = ssurli coor 1 ;
  392. URtheo = ((cc * q1 * 2 * lev / mu / Cp) ** .5) * f1 ;
  393. URtheo = 'KOPS' URtheo * XK ;
  394. URtheo = KCHT $SURLI SCAL SOMMET URtheo ;
  395. evURtheo = evol roug chpo URtheo (inve ssurli ) ;
  396.  
  397. ******************
  398. ** IMPRESSIONS
  399. ******************
  400. 'SI' (DIMPR) ;
  401.  
  402. titre 'temperature imposee le long de surli.' ;
  403. evtk = evol roug chpo TK (inve ssurli ) ;
  404. 'SI' GRAPH ; dess evtk ; 'FINSI' ;
  405.  
  406. titre 'vitesses calculees (ampl= 0.001) (m/s)' ;
  407. UN = RV.INCO.'UN' ;
  408. VIT1 = VECT UN 0.001 UX UY ROUG ;
  409. 'SI' GRAPH ; trac VIT1 mmeta ; 'FINSI' ;
  410.  
  411. titre 'vitesse radiale le long de surli (m/s) (en rouge, la theorie)' ;
  412. evux = evol chpo UN UX (inve ssurli ) ;
  413. 'SI' GRAPH ; dess (evux 'ET' evURtheo) 'LEGE' ; 'FINSI' ;
  414.  
  415. titre 'vitesse radiale theorique le long de surli (m/s)' ;
  416. 'SI' GRAPH ; dess evURtheo ; 'FINSI' ;
  417.  
  418. titre 'contrainte de Marangoni le long de surli (Pa)' ;
  419. evmaran = evol chpo MARAN UX (inve ssurli ) ;
  420. evmaran = -1. * evmaran ;
  421. evmaran = rho0 * evmaran ;
  422. 'SI' GRAPH ;dess evmaran ; 'FINSI' ;
  423.  
  424. * affichage de la composante imposee tau
  425. nomper = 'EXTRAIRE' 3 (rv . 'LISTOPER') ;
  426. notable= 'MOT' ('TEXTE' ('CHAINE' 3 nomper)) ;
  427. mess 'Operateur ' nomper ;
  428. msi mai=('TEXTE' nomper) (rv . notable) ;
  429. msir = redu msi surli ;
  430. ev1 = evol vert chpo msir 1UN (INVE surli) ;
  431. 'SI' ( MOAXI ) ;
  432. XK = ssurli coor 1 ;
  433. XK = KCHT $SURLI SCAL SOMMET XK ;
  434. MARAN = 'EXCO' MARAN UX ;
  435. MARAN = KCHT $SURLI SCAL SOMMET MARAN ;
  436. marx = KOPS (KOPS MARAN * (-1. * rhaut / 2 / NMAIL )) * (2 * pi * XK) ;
  437. SINON ;
  438. MARAN = 'EXCO' MARAN UX ;
  439. marx = KOPS MARAN * (-1. * rhaut / 2 / NMAIL ) ;
  440. 'FINSI' ;
  441. titre 'effet marangoni par maille (la theorie en rouge)' ;
  442. evmarx = evol roug chpo marx (inve ssurli ) ;
  443. 'SI' GRAPH ;dess (evmarx et ev1) 'LEGE' ; 'FINSI' ;
  444.  
  445. 'FINSI' ;
  446.  
  447. ************
  448. titre 'vitesse radiale le long de surli (m/s) (en rouge, la theorie)' ;
  449. UN = RV.INCO.'UN' ;
  450. evux = evol chpo UN UX (inve ssurli ) ;
  451. 'SI' GRAPH ;dess (evux 'ET' evURtheo) 'LEGE' ; 'FINSI' ;
  452.  
  453. **** TEST DE FONCTIONNEMENT ***********
  454. UNR = EXCO UX RV.INCO.'UN' ;
  455. UNR = 'REDU' UNR SURLI ;
  456. UNR = KCHT $SURLI SCAL SOMMET UNR ;
  457. ERtheo = KOPS ( KOPS UNR - URtheo ) '/' ( (MAXI (ABS UNR) ) + 1.e-13) ;
  458. ERRtheo = MAXI ( ABS ERtheo ) ;
  459. MESS 'erreur de la vitesse radiale par rapport à la théorie =' ERRtheo ;
  460.  
  461. 'SI' (ERRtheo < TERR) ;
  462. 'ERREUR' 0 ;
  463. 'SINON' ;
  464. 'ERREUR' 5 ;
  465. 'FINSI' ;
  466.  
  467. ***************************************
  468.  
  469. 'FIN' ;
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  

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