* fichier : Marangoni1.dgibi * _____________________ * * CAS TEST EFFET MARANGONI * UTILISATION DE LA LOI DE CHAN, CHEN, MAZUMDER * Journal of Heat Transfert, vol 110, 1988 * _____________________ * OPTIONS TESTEES PLAN MACRO *************************************************************** ** DESCRIPTION DU TEST : ** ** Ce test a pour but d'étudier l'opérateur toimp au travers de l'effet ** Marangoni. ** ** Une poche de metal liquide est soumise au bombardement d'un flux de ** chaleur surfacique ayant une loi parabolique. La loi de CHAN décrit ** ce type d'écoulement. Cette loi donne le profil de température du ** liquide ainsi que le profil des vitesses a la surface de la poche ** liquide. ** ** Lors de ce test, nous imposons directement sur la surface du bain de ** liquide le profil de température obtenue grâce a la loi de CHAN. Ce ** profil de température permet de calculer les forces de Marangoni, seul ** terme moteur de l'écoulement. Le but est de retomber sur le profil ** théorique des vitesses donné par la loi de CHAN. ** ** Ref : Journal of Heat Transfert, vol 110, 1988 ** "Asymptotic solution for thermocapillary flow at high and low ** Prandtl numbers due to concentrated surface heating." ** CHAN, CHEN, MAZUMDER. ** *************************************************************** *********************** ** OPTIONS A TESTER : *********************** option DIME 2 ELEM qua8 MODE plan ; MOAXI = FAUX ; *option DIME 2 ELEM qua8 MODE axis; MOAXI = VRAI ; *MACRO = QUAF ; ************************************************************ ************************************************************ *DIMPR = VRAI ; DIMPR = FAUX ; GRAPH = FAUX ; COMPLET= FAUX ; option trac psc ; * _________________________________ * * différents parametres du calcul * _________________________________ * Nombre de mailles NMAIL = 10 ; * nombre maximal d'itérations NITER = 8 ; TERR=0.6 ; 'SI' COMPLET ;NITER = 50 ; TERR=0.05 ; 'FINSI' ; * coefficient de relaxation pour le champ de vitesse ALFAU = 0.5 ; * précision requise PREC = 1.e-3 ; * _______________________________________________________ * * géométrie du creuset : tronc de cone (dimension en m) * _______________________________________________________ * * rayon du bas du domaine rbas = 0.0199 ; * rayon du haut du domaine rhaut = 0.020 ; * hauteur de liquide hliq = 0.005 ; * épaisseur de la couche limite eclm = 1.e-4 ; * rayon moyen du faisceau électonique rbe = 0.010 ; * __________________________________________________________________ * * Caractéristiques du faisceau d'électrons à répartition d'énergie * parabolique : puissance PCANON et "rayon" RFOCAL * __________________________________________________________________ PCANON = 1.e3 ; RFOCAL = rbe ; * ______________________ * * constantes physiques * ______________________ * constante des gaz parfaits RG = 8.32 ; * constante de STEPHAN-BOLTZMAN SIGMA = 5.67E-8 ; * * __________________________________________________ * * propriétés physiques du fluide incompressible * __________________________________________________ * viscosité dynamique (kg/m/s) mu = 1.3e-3 ; * masse volumique (kg/m3) rho0 = 6600. ; * conductivité thermique (W/m/K) lambda = 5. ; * chaleur spécifique (J/kg/K) Cp = 270 ; * tension de surface (N/m) sig0 = 0.34 ; * 1/sig0 dsig0/dT (1/K) gam0 = 5.88e-4 ; * viscosité cinématique (m2/s) nu = mu / rho0 ; * effet MARANGONI lev = 1. * gam0 * sig0 / rho0 ; * ______________________ * * CREATION DU MAILLAGE * ______________________ p0 = 0. 0. ; p1 = rhaut 0. ; p2 = rbas (-1. * hliq) ; p3 = 0. (-1. * hliq) ; p01 = rbe 0. ; p32 = rbe (-1. * hliq) ; p03 = 0. (-10. * eclm) ; p12 = rhaut (-10. * eclm) ; d0 = rhaut / NMAIL ; d1 = rhaut / NMAIL ; d2 = rhaut / NMAIL ; surli0 = (p01 droi dini d1 dfin d1 p0 ) coul roug ; surli1 = (p1 droi dini d2 dfin d1 p01) coul roug ; surli = surli1 et surli0 ; d0 = hliq / 9 / NMAIL ; d1 = hliq / 2 / NMAIL ; d2 = hliq * 3 / NMAIL ; smm0 = (p0 droi dini d0 dfin d1 p03) coul jaun ; smm1 = (p03 droi dini d1 dfin d2 p3 ) coul jaun ; smm = smm1 et smm0 ; scon10 = (inve (smm0 proj 'CYLI' (1. 0.) 'DROI' p1 p2) ) coul vert ; scon11 = (inve (smm1 proj 'CYLI' (1. 0.) 'DROI' p1 p2) ) coul vert ; scon1 = scon11 et scon10 ; dz0 = (smm0 proj 'CYLI' (1. 0.) 'DROI' p01 p32) coul bleu ; dz1 = (smm1 proj 'CYLI' (1. 0.) 'DROI' p01 p32) coul bleu ; dz = dz0 et dz1 ; zc = (-1. * (rhaut - rbe ) * hliq ) / ( rhaut - rbas) ; scon21= (inve (surli1 proj 'CONI' (rbe zc) 'DROI' p2 p3) ) coul vert ; scon20= (inve (surli0 proj 'CYLI' (0. -1.) 'DROI' p2 p3) ) coul vert ; scon2 = scon20 et scon21 ; dr1 = (surli1 proj 'CONI' (rbe zc) 'DROI' p12 p03) coul rose ; dr0 = (surli0 proj 'CYLI' (0. -1.) 'DROI' p12 p03) coul rose ; dr = dr1 et dr0 ; scon = scon1 et scon2 ; elim 1.e-6 ( surli1 et surli0 et scon10 et scon11 et scon20 et scon21 et dr0 et dr1 et dz0 et dz1 et smm0 et smm1 ) ; meta1 = daller surli1 dz0 dr1 scon10 ; meta2 = daller (inve dr1) dz1 scon21 scon11 ; meta3 = daller (inve dz0) surli0 smm0 dr0 ; meta4 = daller (inve dz1) (inve dr0) smm1 scon20 ; meta = meta1 et meta2 et meta3 et meta4 ; oublier meta1 ; oublier meta2 ; oublier meta3 ; oublier meta4 ; *trac meta ; * ** On réoriente les éléments. * meta = 'ORIENTER' meta ; tass meta ; nbel1 = nbel meta ; list nbel1 ; * transformation des éléments en qua9 £META = CHANGER META MACRO ; £SURLI = CHANGER SURLI MACRO ; £SCON = CHANGER SCON MACRO ; £SMM = CHANGER SMM MACRO ; ELIM 1.e-6 (£META ET £SURLI ET £SCON ET £SMM) ; * formulation du modèle NAVIER_STOKES $META = MODE £META 'NAVIER_STOKES' MACRO ; $SURLI = MODE £SURLI 'NAVIER_STOKES' MACRO ; $SCON = MODE £SCON 'NAVIER_STOKES' MACRO ; $SMM = MODE £SMM 'NAVIER_STOKES' MACRO ; mmeta = doma $META maillage ; ssurli = doma $SURLI maillage ; * _______________________________________________ * * SYSTEME D'EQUATIONS ET CONDITIONS AUX LIMITES * _______________________________________________ * equations de qdm sur ur et uz + div V = 0 RV = EQEX $META OPTI 'EF' 'IMPL' CENTREP1 'SUPG' ZONE $META OPER KBBT 1 (-1.) INCO 'UN' 'PN' ZONE $META OPER NS 1. 'UN' nu INCO 'UN' OPTI 'CENTREE' ZONE $SURLI OPER TOIMP 'tau' INCO 'UN' ; * conditions aux limites RV = EQEX RV CLIM UN UIMP £SMM 0. UN VIMP £SURLI 0. ; * ________________ * * INITIALISATION * ________________ RV.INCO = TABLE INCO ; RV.INCO.'UN' = KCHT $META VECT SOMMET (1.e-8 1.e-8) ; RV.INCO.'PN' = KCHT $META SCAL CENTREP1 0. ; RV.INCO.'tau' = KCHT $SURLI VECT CENTRE (0. 0. ) ; ******************** * terme tau * grad T < 0 ,lev > 0 => Marangoni < 0 donc opposé à la qdm *********************** * Courbe de temperature selon CHAN, CHEN, MAZUMDER 'SI' ( MOAXI ) ; bb = 0.70185 ; cc = 0.35093 ; f1 = 0.89872 ; SINON ; bb = 1. ; cc = 0.33333 ; f1 = 1. ; 'FINSI' ; I0 = PCANON /(PI * (RFOCAL**2.)) ; q0 = I0 ; q1 = q0 '/' rbe '/' rbe ; DTmax = bb * (cc ** -.25) * q0 * (q1 ** -.25) * ((2 * (rho0 ** 2) * (Cp ** 3) * lev * mu) ** -.25) ; 'LISTE' DTmax ; XK = ssurli coor 1 ; Ttheo = 'KOPS' DTmax * ('KOPS' 1 '-' ('KOPS' (cc / bb / rbe / rbe) * ('KOPS' XK ** 2 ) ) ) ; Ttheo = 'KOPS' Ttheo '+' 1200. ; TK = KCHT $SURLI SCAL SOMMET Ttheo ; ** calcul de l'effet Marangoni GTK = KOPS GRAD TK $SURLI ; MARA = KOPS lev '*' GTK ; RV.INCO.'tau' = KCHT $SURLI VECT CENTRE MARA ; MARAN = ELNO $SURLI MARA ; * __________________ * * BOUCLE ITERATIVE * __________________ REPETER BLOCKI NITER ; MESS 'ITERATION INTERNE N°' &BLOCKI ; UN0 = COPI RV.INCO.'UN' ; * * CALCUL D'UNE ITERATION * RV.METHINV.FCPRECT = 1 ; RV.METHINV.FCPRECI = 1 ; EXEC RV ; * * TESTS DE CONVERGENCE * UNR = EXCO UX RV.INCO.'UN' ; UNZ = EXCO UY RV.INCO.'UN' ; URMAX = MAXI UNR ; UZMAX = MAXI UNZ ; MESS 'URMAX = ' URMAX ; MESS 'UZMAX = ' UZMAX ; UR0 = UN0 EXCO 'UX' scal ; UR0 = KCHT $META SCAL SOMMET UR0 ; UNR = KCHT $META SCAL SOMMET UNR ; ERUNR = KOPS ( KOPS UNR '-' UR0 ) '/' ( (MAXI (ABS UNR) ) + 1.e-13) ; ERRUNR = MAXI ( ABS ERUNR ) ; MESS 'ERRUNR = ' ERRUNR ; UZ0 = EXCO UY UN0 ; UZ0 = KCHT $META SCAL SOMMET UZ0 ; UNZ = KCHT $META SCAL SOMMET UNZ ; ERUNZ = KOPS ( KOPS UNZ '-' UZ0 ) '/' ( (MAXI (ABS UNZ) ) + 1.e-13) ; ERRUNZ = MAXI ( ABS ERUNZ ) ; MESS 'ERRUNZ = ' ERRUNZ ; ERR = ERRUNR ; VAR = MOTS 'UNR' ; SI ( ERRUNZ > ERR ) ; ERR = ERRUNZ ; VAR = MOTS 'UNZ' ; FINSI ; VAR1 = EXTR 1 VAR ; MESS 'erreur relative maximale sur ' VAR1 ERR ; * RELAXATION RV.INCO.'UN' = KOPS ( KOPS ALFAU '*' RV.INCO.'UN') '+' ( KOPS (1. - ALFAU) '*' UN0 ) ; SI (ERR