Télécharger canal-Sharma.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : canal-Sharma.dgibi
  2. *
  3. * Ce cas teste le modèle K-epsilon Bas Reynolds de Launder-Sharma
  4. * sur l'écoulement turbulent dans un canal plan.
  5. * opti trace 'PSC';
  6. COMPLET = FAUX ;
  7. GRAPH = FAUX ;
  8. *COMPLET = VRAI ;
  9. *GRAPH = VRAI ;
  10.  
  11. *-----------------------------------------------------------------------
  12. opti dime 2 elem TRI6;
  13. opti dime 2 elem QUA8;
  14. *-----------------------------------------------------------------------
  15. * |Triangles | Quadrangles
  16. * ---------------------------
  17. * LINE | | OK
  18. * LINB | |
  19. * MACRO| ? | OK
  20. * QUAF | | OK
  21. *-----------------------------------------------------------------------
  22.  
  23. DISCR=MACRO;
  24. KPRES=CENTREP1;
  25. KSUPG=SUPG ;
  26.  
  27. ******=================================================**********
  28. ******=================================================**********
  29. H=1. ;
  30.  
  31. Si COMPLET ;
  32. NBIT =450;
  33. DT = 0.02;
  34. KGEO=2;
  35. NBIT =1800;
  36. DT = 0.01;
  37. L=30.*H;
  38. Sinon;
  39. NBIT = 60;
  40. DT = 0.15;
  41. KGEO=1;
  42. L=3.*H;
  43. Finsi;
  44.  
  45. *----------------------- Maillage --------------------------------------
  46. epsi = 1.e-5;
  47.  
  48. Si(EGA KGEO 1);
  49. *dcl=H/200;
  50. *dm=H/20;
  51. *nm=15;
  52. *dcx=H/12.;
  53. *dmx=H/10.;
  54.  
  55. dcl=H/130;
  56. dm=H/13;
  57. nm=13;
  58. dcx=H/10.;
  59. dmx=H/8.;
  60. Finsi;
  61.  
  62. Si(EGA KGEO 2);
  63. dcl=H/300;
  64. dm=H/30;
  65. nm=20;
  66. dcx=H/24.;
  67. dmx=H/20.;
  68. Finsi;
  69.  
  70. Si(EGA KGEO 3);
  71. dcl=H/400;
  72. dm=H/40;
  73. nm=25;
  74. dcx=H/36.;
  75. dmx=H/30.;
  76. Finsi;
  77.  
  78. P0 = 0. 0. ;
  79. P1 = L 0. ;
  80. P2 = L H ;
  81. P3 = 0. H ;
  82. PS3 = (P0 PLUS P3)*0.5;
  83. PS31= (P0 PLUS P3)*0.2;
  84. PS32= (P3 MOINS PS31);
  85. entree= P0 d dini dcl dfin dm ps31 d nm ps32
  86. d dini dm dfin dcl P3;
  87. sortie=(entree plus (L 0.)) inve;
  88. par1 = p0 d dini dcx dfin dmx p1 ;
  89. par2 = (par1 plus (0. H)) inve;
  90.  
  91. pc= 1. 1.;
  92. ang= 43.;
  93. ang= 60.;
  94. ang= 0. ;
  95. entree=entree TOUR ang pC;
  96. sortie=sortie TOUR ang pC;
  97. par1 =par1 TOUR ang pC;
  98. par2 =par2 TOUR ang pC;
  99.  
  100. elim (entree et par1 et par2 et sortie) epsi;
  101. mt = daller entree par2 sortie par1;
  102. v1=1. 0. ;
  103. v2=0. -1.;
  104. v3=-1. 0.;
  105. v4=0. 1. ;
  106. vt1= tour v1 ang p0;
  107. vt2= tour v2 ang p0;
  108. vt3= tour v3 ang p0;
  109. vt4= tour v4 ang p0;
  110. list vt1;
  111. list vt2;
  112. list vt3;
  113. list vt4;
  114.  
  115. Mmt = chan mt QUAF ;
  116. Mentree= chan entree QUAF ;
  117. Msortie= chan sortie QUAF ;
  118. Mpar1 = chan par1 QUAF ;
  119. Mpar2 = chan par2 QUAF ;
  120.  
  121. elim (Mmt et Mentree et Msortie et Mpar1 et Mpar2) epsi ;
  122.  
  123. $mt = model Mmt 'NAVIER_STOKES' DISCR;
  124. $entree = model Mentree 'NAVIER_STOKES' DISCR;
  125. $sortie = model Msortie 'NAVIER_STOKES' DISCR;
  126. $par1 = model Mpar1 'NAVIER_STOKES' DISCR;
  127. $par2 = model Mpar2 'NAVIER_STOKES' DISCR;
  128.  
  129. doma $mt 'IMPR';
  130. doma $entree 'IMPR';
  131.  
  132. mt = doma $mt maillage;
  133. entree = doma $entree maillage;
  134. sortie = doma $sortie maillage;
  135. par1 = doma $par1 maillage;
  136. par2 = doma $par2 maillage;
  137. par2i = inve par2;
  138. axe = par1 plus (0. (H/2.));
  139. elim (axe et mt) epsi;
  140. entre1= chan entree poi1;
  141. entre1= elem entre1 (lect 2 pas 1 ((nbel entre1) - 1 ));
  142.  
  143. Si Graph;
  144. trace mt TITR ' Maillage ';
  145.  
  146. * On vérifie l'allongement
  147. diamin=doma $mt 'DIAMIN';
  148. diamax=doma $mt 'DIAMAX';
  149. ksi=diamax*(inve diamin);
  150. ksi=elno $mt ksi centre;
  151. trace ksi mt (cont mt) TITR ' Facteur d allongemet du maillage';
  152. Finsi;
  153.  
  154. *------------------- Fin Maillage --------------------------------------
  155.  
  156. * on impose un profil de vitesse en entrée soit plat (nn=1.e3) soit
  157. * turbulent (nn=7).
  158. nn=1.e3;
  159. nn=7.;
  160. * La vitesse débitante est de 1.
  161. U0 = 1. ;
  162.  
  163. tasser entree;
  164. ye=coor 2 entree;
  165. Dgj=doma $entree 'XXDIAGSI';
  166. a=(SOMT (Dgj*((ye*(H - ye))**(1./nn ))));
  167. Ufr=U0/a*((ye*(H - ye))**(1./nn ));
  168. Si Graph;
  169. dess (evol chpo ufr entree) TITR 'Profil de vitesse en entrée';
  170. Finsi;
  171.  
  172. uux=(cos ang) * U0;
  173. uuy=(sin ang) * U0;
  174. KE=((0.02*Ufr)**2.);
  175. EE=KE**1.5/H;
  176.  
  177. MU = 3.14E-5;
  178. Ro = 1.;
  179. YP = 1.e-2 ;
  180. Nu = Mu /Ro ;
  181.  
  182. Rey= U0 *H * 2. / NU;
  183. mess ' Reynolds = ' Rey;
  184.  
  185. RV= EQEX 'OMEGA' 1. 'NITER' 1 ITMA NBIT 'FIDT' 1
  186. 'OPTI' 'EF' 'IMPL' KSUPG KPRES
  187. ZONE $mt 'OPER' 'KEPSILON' 1. 'UN' 'NU' DT 'INCO' 'KN' 'EN'
  188. ZONE $mt 'OPER' 'NS' 1. 'UN' 'MUF' 'INCO' 'UN'
  189. 'OPTI' 'EFM1' 'IMPL' 'CENTREE'
  190. ZONE $mt 'OPER' DFDT 1. 'UNM' DT INCO 'UN';
  191.  
  192. rv.'ALGO_KEPSILON'=mots 'Sharma';
  193. Mdl = chai 'Launder-Sharma' ;
  194.  
  195. RV= EQEX RV CLIM
  196. UN UIMP entre1 Ufr UN VIMP entree (uuy + 1.e-4)
  197. UN UIMP (par1 et par2) 0. UN VIMP (par1 et par2) 0.
  198. KN TIMP entre1 KE EN TIMP entre1 EE
  199. KN TIMP (par1 et par2) 0. EN TIMP (par1 et par2) 0.
  200. ;
  201.  
  202. rv.'METHINV'.TYPINV=3 ;
  203. rv.'METHINV'.IMPINV=0 ;
  204. rv.'METHINV'.NITMAX=700;
  205. rv.'METHINV'.PRECOND=3 ;
  206. rv.'METHINV'.ILUTLFIL=4 ;
  207. rv.'METHINV'.ILUTDTOL=0.;
  208. rv.'METHINV'.RESID =1.e-8;
  209. rv.'METHINV' . 'FCPRECT'=1 ;
  210. rv.'METHINV' . 'FCPRECI'=1 ;
  211.  
  212. RVP= EQEX
  213. 'OPTI' 'EF' KPRES
  214. ZONE $mt 'OPER' KBBT (-1.) 'INCO' 'UN' 'PRES'
  215. ;
  216.  
  217. rvp.'METHINV'.TYPINV=1 ;
  218. rvp.'METHINV'.IMPINV=0 ;
  219. rvp.'METHINV'.NITMAX=5000;
  220. rvp.'METHINV'.PRECOND=3 ;
  221. rvp.'METHINV'.ILUTLFIL=10;
  222. rvp.'METHINV'.ILUTDTOL=0.;
  223. rvp.'METHINV'.RESID =1.e-10 ;
  224. rvp.'METHINV' . 'FCPRECT'=50000 ;
  225. rvp.'METHINV' . 'FCPRECI'=50000 ;
  226.  
  227.  
  228. RV.'PROJ'= RVP ;
  229.  
  230. rv.'INCO'= table inco ;
  231. rv.'INCO'.'UN' = kcht $mt vect sommet (1.e-5 1.e-5) ;
  232. rv.'INCO'.'KN' = kcht $mt scal sommet 1.e-5 ;
  233. rv.'INCO'.'EN' = kcht $mt scal sommet 1.e-5 ;
  234. rv.'INCO'.'UNM' = kcht $mt vect sommet (1.e-5 1.e-5) ;
  235. rv.'INCO'.'PRES'= kcht $mt scal kpres 0.;
  236. rv.'INCO'.'MUF'=kcht $mt scal sommet nu;
  237. rv.'INCO'.'NU'=NU;
  238. rv.'INCO'.'MU'=MU;
  239.  
  240. rv.'LTPS' = PROG ;
  241. rv.'Tps' = 1. ;
  242. rv.'DT' = DT;
  243. rv.'NUPAT' =1;
  244.  
  245.  
  246. exec rv ;
  247.  
  248. Si Complet
  249. opti sauv 'canalKES_1';
  250. sauv ;
  251. opti sauv 'bidon' ;
  252.  
  253. exec rv ;
  254. opti sauv 'canalKES_2';
  255. sauv ;
  256. opti sauv 'bidon' ;
  257.  
  258. exec rv ;
  259. opti sauv 'canalKES_3';
  260. sauv ;
  261. opti sauv 'bidon' ;
  262.  
  263. exec rv ;
  264. opti sauv 'canalKES_4';
  265. sauv ;
  266. opti sauv 'bidon' ;
  267.  
  268. exec rv ;
  269. opti sauv 'canalKES_5';
  270. sauv ;
  271. opti sauv 'bidon' ;
  272.  
  273. * On purge la mémoire de tous les objets MATRIK pour avoir un petit
  274. * fichier de résultats
  275. rv.'TABRES'=0.;
  276. rv.'PROJ'=0.;
  277. rv.'METHINV'=0;
  278. rv.'METHINV2'=0;
  279. rv.'METHINV3'=0;
  280. rv.'METH_KEP'=0;
  281. rvp=0.;
  282.  
  283. opti sauv 'canalKESharma';
  284. sauv ;
  285. Finsi;
  286.  
  287. un = rv.inco.'UN' ;
  288. qs=dbit un $sortie IMPR;
  289. um=(1./H)*qs;
  290. unn=(1./um)*un;
  291. *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  292. * POST-TRAITEMENT
  293. *-----------------------------------------------------------------------
  294. *--- Edition d'un profil de vitesse asymptotique de Référence ----------
  295. *--- Modèle de Buleev
  296. Debproc ANABU H*'FLOTTANT' Rey*'FLOTTANT' UM*'FLOTTANT' ;
  297. H2=H*H;
  298. p0=0. 0. ; p1=0. H. ; Pm=0. (H/2.); dpar=H/Rey*0.05; dctr=H*0.05;
  299. de= p0 d dini dpar dfin dctr pm d dini dctr dfin dpar p1 ;
  300. z= coor 2 de;
  301. Dh=2.*H;
  302. Rho=1.;
  303. mu=um/Rey*Rho*Dh;
  304. m=7.1;
  305. nu=mu/rho;
  306.  
  307. uet=um;
  308. REPETER CCP 15 ;
  309. fp=(uet/Um)**2.*8. ;
  310. F=fp/2/Dh*rho*(um*um);
  311. xi = z*(1./H);
  312. xiet = (1. - ((1. - (nu*m/h/Uet*4))**0.5))/2.;
  313. u1=H2*F/2./mu*xi*(1. - xi);
  314. ax=xi*(1. - xi)/xiet/(1. - xiet) + 1.e-10;
  315. ax=m*m*F*H/Rho* (log ax);
  316. ax =(abs ax) + 1.e-10;
  317. ax0=(h*h*F/mu/2*xiet*(1. - xiet))**2.;
  318. u2=(ax0+ax)**0.5;
  319. iua=masq xi 'INFERIEUR' xiet;
  320. iub=masq xi 'SUPERIEUR' (1. - xiet);
  321. iu1=iua+iub;
  322.  
  323. uref = (iu1 * u1) + ((1. - iu1)*u2) ;
  324. evuref = evol chpo uref de ;
  325. umn=INTG evuref prog ;
  326. umn=(extr 1 umn)/H; Reyn=rho*umn*Dh/mu;
  327. w=0.9;
  328. uet=(w*(uet*um/umn)) + ((1. - w)*uet);
  329. dumn=abs ((umn - um)/um);
  330. mess 'Iteration ' &ccp ' Umn=' umn ' Reyn=' Reyn ' Uet=' Uet
  331. ' dumn=' dumn;
  332. *dess evuref ;
  333. Si (dumn < 1.e-4) ; quitter CCP; Finsi ;
  334. Fin CCP;
  335. * Calcul des u+g et u+d
  336. yplus= (extr evuref 'ABSC')*uet/nu;
  337. evuplus=evuref*(1./uet);
  338. yy=extr evuplus ORDO ;
  339. lyz=lect (dime yy) pas -1 1;
  340. yyz=extr yy lyz;
  341. evuplud = (evol manu yplus yyz) coul verte;
  342. evuplug = (evol manu yplus yy) coul rouge ;
  343.  
  344. Resproc evuplug evuplud evuref uet;
  345. Finproc ;
  346.  
  347. DEBPROC KADER Pr*'FLOTTANT' Ret*'FLOTTANT' KOUL*'MOT';
  348. *--- Profil de Kader ---------------------------------------------------
  349.  
  350. yplusr= prog 0.1 pas 0.1 30 pas 1. 100. pas 50. 1.e3
  351. pas 500. 1.e4 ;
  352. unp = prog (dime yplusr)*1.;
  353. ysr=yplusr/Ret;
  354. Gamma=((Pr*yplusr)**4.)/(unp+(5.*(Pr**3.)*yplusr));
  355. Gamma=Gamma*(-0.01);
  356. tplusr=Pr*yplusr*(exp Gamma);
  357. beta=((3.85*(Pr**(1./3.)) - 1.3)**2.);
  358. beta=beta+(2.12*(log Pr));
  359. aa1=1.5*(2.*unp - ysr);
  360. aa2=2.5*(2.*unp - ysr);
  361. bb1=(unp - ysr)*(unp - ysr)*2. + unp;
  362. bb2=(unp - ysr)*(unp - ysr)*4. + unp;
  363. aa1=aa1/bb1 ;
  364. aa2=aa2/bb2 ;
  365. cc1= ((2.12*(Log ((unp+yplusr)*aa1))) + (beta*unp))
  366. *(exp(unp/Gamma));
  367. cc2= ((2.12*(Log ((unp+yplusr)*aa2))) + (beta*unp))
  368. *(exp(unp/Gamma));
  369. tplusr1=tplusr + cc1;
  370. tplusr2=tplusr + cc2;
  371.  
  372. evt1=evol manu yplusr tplusr1;
  373. evt2=evol manu yplusr tplusr2;
  374. evt1=evt1 coul KOUL;
  375. evt2=evt2 coul KOUL;
  376. *--- Profil de Kader ---------------------------------------------------
  377. FINPROC evt1 evt2;
  378.  
  379. DEBPROC POST ;
  380. tabk = table ;
  381. evupd1 evupg1 evuref1 uet1 = anabu 1. 2000. 1. ;
  382. evupd2 evupg2 evuref2 uet2 = anabu 1. 1.e4 1. ;
  383. evupd3 evupg3 evuref3 uet3 = anabu 1. 1.e5 1. ;
  384. evupd4 evupg4 evuref4 uet4 = anabu 1. 1.e6 1. ;
  385. evupd5 evupg5 evuref5 uet5 = anabu 1. 1.e7 1. ;
  386.  
  387. *--- Profil de Reichardt -----------------------------------------------
  388. Ka = 0.41;
  389. yplusr= prog 0.1 pas 0.1 30 pas 1. 100. pas 50. 1.e3
  390. pas 500. 1.e4 pas 1.e4 2.e5 ;
  391. unp = prog (dime yplusr)*1.;
  392.  
  393. E=9.5;
  394. uplusr=(1./Ka)*(Log (unp + (Ka*yplusr)));
  395. uplusr=uplusr + (7.8* (unp - (exp (yplusr*(-1./11))))
  396. - ( (yplusr*(-1./11)) * (exp (yplusr*(-1./3.))) ) );
  397.  
  398. evr1=evol manu yplusr uplusr;
  399. evr1=evr1 coul verte;
  400. *--- Profil de Reichardt -----------------------------------------------
  401.  
  402. *--- Profil de Référence pour le KLbr ----------------------------------
  403.  
  404. xrr=prog
  405. 2.99401E-06 1.24325E-03 4.78060E-03 1.05194E-02 1.83637E-02
  406. 2.82181E-02 3.99867E-02 5.35741E-02 6.88838E-02 8.58208E-02
  407. 0.10429 0.12419 0.14544 0.16793 0.19156
  408. 0.21625 0.24190 0.26841 0.29568 0.32363
  409. 0.35214 0.38114 0.41052 0.44019 0.47005
  410. 0.50000 0.52995 0.55981 0.58948 0.61886
  411. 0.64786 0.67637 0.70432 0.73159 0.75810 ;
  412. xrr = xrr et (prog
  413. 0.78375 0.80844 0.83207 0.85456 0.87581
  414. 0.89571 0.91418 0.93112 0.94643 0.96001
  415. 0.97178 0.98163 0.98948 0.99522 0.99875
  416. 1.00000);
  417. urr = prog
  418. 0.0000 9.36980E-02 0.35215 0.56346 0.68057
  419. 0.75493 0.80827 0.84978 0.88391 0.91302
  420. 0.93845 0.96103 0.98127 0.99955 1.0161
  421. 1.0311 1.0447 1.0569 1.0678 1.0774
  422. 1.0858 1.0927 1.0983 1.1024 1.1049
  423. 1.1058 1.1051 1.1027 1.0988 1.0934
  424. 1.0865 1.0783 1.0688 1.0580 1.0459 ;
  425. urr = urr et (prog
  426. 1.0325 1.0177 1.0013 0.98319 0.96315
  427. 0.94083 0.91571 0.88702 0.85347 0.81285
  428. 0.76100 0.68940 0.57826 0.37914 0.11368
  429. 5.00378E-04 );
  430. krr = prog
  431. 1.14242E-08 5.70695E-04 5.85036E-03 9.18812E-03 9.24352E-03
  432. 8.78015E-03 8.29986E-03 7.86419E-03 7.46515E-03 7.08857E-03
  433. 6.72369E-03 6.36405E-03 6.00640E-03 5.64984E-03 5.29542E-03
  434. 4.94455E-03 4.60029E-03 4.26604E-03 3.94641E-03 3.64662E-03
  435. 3.37300E-03 3.13278E-03 2.93380E-03 2.78421E-03 2.69096E-03
  436. 2.65941E-03 2.69096E-03 2.78421E-03 2.93380E-03 3.13278E-03
  437. 3.37300E-03 3.64662E-03 3.94641E-03 4.26604E-03 4.60029E-03 ;
  438. krr = krr et (prog
  439. 4.94455E-03 5.29542E-03 5.64984E-03 6.00640E-03 6.36405E-03
  440. 6.72369E-03 7.08857E-03 7.46515E-03 7.86419E-03 8.29986E-03
  441. 8.78015E-03 9.24352E-03 9.18812E-03 5.85036E-03 5.70695E-04
  442. 1.14242E-08);
  443. mrr = prog
  444. 2.0000 2.0031 2.4276 4.7639 9.0737
  445. 15.067 22.284 30.207 38.403 46.558
  446. 54.454 61.929 68.847 75.089 80.550
  447. 85.148 88.826 91.561 93.372 94.328
  448. 94.549 94.214 93.548 92.808 92.241
  449. 92.030 92.241 92.808 93.548 94.214
  450. 94.549 94.328 93.372 91.561 88.826;
  451. mrr = mrr et (prog
  452. 85.148 80.550 75.089 68.847 61.929
  453. 54.454 46.558 38.403 30.207 22.284
  454. 15.067 9.0737 4.7639 2.4276 2.0031
  455. 2.0000);
  456.  
  457. evkrr=evol manu xrr krr;
  458. evurr=evol manu xrr urr;
  459. evmrr=evol manu xrr mrr;
  460.  
  461. dess evurr TITR ' Profil de vitesse de référence (KL) en sortie';
  462. dess evkrr TITR ' Profil de K de référence (KL) en sortie';
  463. dess evmrr TITR ' Profil de Mueff/mu de référence (KL) en sortie';
  464.  
  465. *--- Profil de Référence pour le KLbr ----------------------------------
  466.  
  467. tabk.'Rey'=Rey;
  468. un = rv.inco.'UN' ;
  469.  
  470. qs=dbit un $sortie IMPR;
  471. um=(1./H)*qs;
  472. unn=(1./um)*un;
  473.  
  474. TAB1 = TABLE ;
  475. tab1.1 = 'MOT' ' ';
  476. tab1.2 = 'MOT' 'MARQ CROI REGU';
  477. tab1.3 = 'MOT' 'MARQ CARR REGU';
  478. tab1.4 = 'MOT' 'MARQ LOSA REGU';
  479. tab1.5 = 'MOT' 'MARQ PLUS REGU';
  480. tab1.6 = 'MOT' 'MARQ TRIA REGU';
  481. tab1.'TITRE' = TABLE ;
  482. tab1.'TITRE'. 1 = 'MOT' 'Re 2.e3' ;
  483. tab1.'TITRE'. 2 = 'MOT' 'Re 1.e4' ;
  484. tab1.'TITRE'. 3 = 'MOT' 'Re 1.e5' ;
  485. tab1.'TITRE'. 4 = 'MOT' 'Re 1.e6' ;
  486. tab1.'TITRE'. 5 = 'MOT' 'Re 1.e7' ;
  487. tab1.'TITRE'. 6 = 'MOT' 'Reichardt' ;
  488.  
  489. tit1=chai 'Comparaison Profils de vitesse Buleev à différents Reynolds';
  490. tit2=chai tit1 ' et Reichardt';
  491. dess (evupd1 et evupd2 et evupd3 et evupd4 et evupd5 et evr1)
  492. LOGX XBOR 0.1 5.e5 'GRIL' 'CARR' lege TAB1 titr tit2;
  493.  
  494. dess (evuref1 et evuref2 et evuref3 et evuref4 et evuref5)
  495. 'GRIL' 'CARR' lege TAB1 titr tit1;
  496. *-----------------------------------------------------------------------
  497.  
  498. unx =exco un 'UX';
  499. dudy=exco (kops 'GRADS' unx $mt) 'UY';
  500. uet=(mu*(abs (dudy + 1.e-5)))**0.5;
  501. uet1=redu uet par1;
  502. uet2=redu uet par2;
  503. evuet1= evol chpo uet1 par1;
  504. evuet2= evol chpo uet2 (inve par2);
  505.  
  506. dess (evuet1 et evuet2) TITR ' U* le long des deux parois'
  507. tity 'm/s' titx 'm';
  508.  
  509. mess ' Liste de U*';
  510. yevuet1=extr evuet1 'ORDO';
  511. yevuet2=extr evuet2 'ORDO';
  512. dl=(dime yevuet1) ;
  513. ll=lect (dl - 10) pas 1 dl;
  514. list (extr yevuet1 ll) ;
  515. list (extr yevuet2 ll) ;
  516.  
  517.  
  518. f1=8.*(((1./um)*uet1)**2.);
  519. f2=8.*(((1./um)*uet2)**2.);
  520. fiso = 0.202*(Rey**(-0.196));
  521. evf1=evol chpo f1 par1;
  522. evf1=evf1 coul rouge;
  523. evf2=evol chpo f2 (inve par2);
  524. evf2=evf2 coul verte;
  525. xx=extr evf1 'ABSC';
  526. yfiso= prog (dime xx)*fiso;
  527. evfiso=evol manu xx yfiso ;
  528. evfiso=evfiso coul bleue ;
  529.  
  530. TAB1 = TABLE ;
  531. tab1.1 = 'MOT' 'TIRR';
  532. tab1.2 = 'MOT' 'TIRC';
  533. tab1.3 = 'MOT' 'TIRM';
  534. tab1.'TITRE' = TABLE ;
  535. tab1.'TITRE'. 1 = 'MOT' 'Corr' ;
  536. tab1.'TITRE'. 2 = 'MOT' 'f paroi1' ;
  537. tab1.'TITRE'. 3 = 'MOT' 'f paroi2' ;
  538.  
  539. fmax = maxi yfiso;
  540.  
  541. dess (evfiso et evf2 et evf1) YBOR 0. (5.*fmax)
  542. TITR ' Coefficient de frottement' 'GRIL' lege TAB1;
  543.  
  544. tabk.'evfiso'=evfiso;
  545. tabk.'evf2' =evf2 ;
  546. tabk.'evf1' =evf1 ;
  547. tabk.'fmax' =fmax ;
  548.  
  549. yp1=norm ((poin 2 entre1) moins (poin 1 entre1));
  550. yp2=norm ((poin entre1 final) moins (poin ((nbno entre1) - 1) entre1));
  551.  
  552. mess ' YP1=' YP1 ' YP2=' YP2;
  553.  
  554. yplus1= yp1*uet1*(rv.inco.'MU'**(-1.));
  555. yplus2= yp2*uet2*(rv.inco.'MU'**(-1.));
  556.  
  557. evyplus1=evol chpo yplus1 par1;
  558. evyplus2=evol chpo yplus2 (inve par2);
  559.  
  560. dess (evyplus1 et evyplus2) TITR ' Y+ le long des deux parois'
  561. tity ' ' titx 'm';
  562.  
  563. sort2=elem sortie (lect 1 pas 1 ((nbel sortie)/2));
  564. sort1= syme sort2 'DROIT' (point 1 axe) (axe poin final);
  565. elim (sort1 et sort2 et sortie) epsi;
  566.  
  567. uet1=extr (nbno par1) (extr evuet1 'ORDO');
  568. uet2=extr (nbno par1) (extr evuet2 'ORDO');
  569. mess ' uet1 et uet2=' uet1 uet2;
  570. ypls1= evol chpo ((1./mu) * uet1 * (coor 2 sort1)) (inve sort1);
  571. ypls2= evol chpo ((1./mu) * uet2 * (H - (coor 2 sort2))) ( sort2);
  572.  
  573. upl1=(evol chpo unx (inve sort1))*(1./uet1);
  574. upl2=(evol chpo unx sort2)*(1./uet2);
  575. xypls1= ORDO (extr ypls1 'ORDO');
  576. yypls1= ORDO (extr upl1 'ORDO');
  577.  
  578. xypls1=xypls1 enlev 1;
  579. yypls1=yypls1 enlev 1;
  580. evupl1=evol manu xypls1 yypls1;
  581.  
  582.  
  583. xypls2=extr ypls2 'ORDO';
  584. yypls2=extr upl2 'ORDO';
  585. xypls2=xypls2 enlev 1;
  586. yypls2=yypls2 enlev 1;
  587. evupl2=evol manu xypls2 yypls2 ;
  588. evupl1=evupl1 coul rouge;
  589. evupl2=evupl2 coul verte;
  590.  
  591. TAB1 = TABLE ;
  592. tab1.1 = 'MOT' ' ';
  593. tab1.2 = 'MOT' 'TIRC';
  594. tab1.3 = 'MOT' 'TIRM';
  595. tab1.'TITRE' = TABLE ;
  596. tab1.'TITRE'. 1 = 'MOT' 'Reichardt' ;
  597. tab1.'TITRE'. 2 = 'MOT' 'U+ paroi1' ;
  598. tab1.'TITRE'. 3 = 'MOT' 'U+ paroi2' ;
  599.  
  600. dess (evr1 et evupl2 et evupl1) 'LOGX' 'XBOR' 1. 500.
  601. TITR ' U+ en sortie' 'GRIL' lege TAB1
  602. tity ' ' titx 'm';
  603.  
  604. tabk.'evr1' =evr1 ;
  605. tabk.'evupl1'=evupl1;
  606. tabk.'evupl2'=evupl2;
  607.  
  608. nutsnu=(rv.inco.'MUF')*(1./MU);
  609. trace nutsnu mt (cont mt) 'TITR' ' Nu effectif / nu ';
  610.  
  611. *-------------------------------------------------------------------------
  612. kn=rv.inco.'KN';
  613. kpl1=(evol chpo kn (inve sort1));
  614. kpl2=(evol chpo kn sort2);
  615. kpl1=extr kpl1 'ORDO'; ordo kpl1;
  616. kpl2=extr kpl2 'ORDO'; ordo kpl2;
  617. kpl1=kpl1 enlev 1 ;
  618. kpl2=kpl2 enlev 1 ;
  619.  
  620. evkpl1=evol manu xypls1 kpl1;
  621. evkpl2=evol manu xypls2 kpl2;
  622. evkpl1=evkpl1 coul rouge;
  623. evkpl2=evkpl2 coul verte;
  624.  
  625. TAB1 = TABLE ;
  626. tab1.1 = 'MOT' 'TIRC';
  627. tab1.2 = 'MOT' 'TIRM';
  628. tab1.'TITRE' = TABLE ;
  629. tab1.'TITRE'. 1 = 'MOT' 'k paroi1' ;
  630. tab1.'TITRE'. 2 = 'MOT' 'k paroi2' ;
  631.  
  632. dess (evkpl2 et evkpl1)
  633. * 'LOGX' 'XBOR' 1. 50. LOGY
  634. TITR ' k en sortie' 'GRIL' lege TAB1
  635. tity ' ' titx 'm';
  636. *-------------------------------------------------------------------------
  637. en=rv.inco.'EN';
  638. epl1=(evol chpo en (inve sort1));
  639. epl2=(evol chpo en sort2);
  640. epl1=extr epl1 'ORDO'; ordo epl1;
  641. epl2=extr epl2 'ORDO'; ordo epl2;
  642. epl1=epl1 enlev 1 ;
  643. epl2=epl2 enlev 1 ;
  644.  
  645. evepl1=evol manu xypls1 epl1;
  646. evepl2=evol manu xypls2 epl2;
  647. evepl1=evepl1 coul rouge;
  648. evepl2=evepl2 coul verte;
  649.  
  650. TAB1 = TABLE ;
  651. tab1.1 = 'MOT' 'TIRC';
  652. tab1.2 = 'MOT' 'TIRM';
  653. tab1.'TITRE' = TABLE ;
  654. tab1.'TITRE'. 1 = 'MOT' 'e paroi1' ;
  655. tab1.'TITRE'. 2 = 'MOT' 'e paroi2' ;
  656.  
  657. dess (evepl2 et evepl1) 'LOGX' 'XBOR' 1. 50. LOGY
  658. TITR ' epsilon en sortie' 'GRIL' lege TAB1
  659. tity ' ' titx 'm';
  660. *-------------------------------------------------------------------------
  661.  
  662.  
  663. npl1=(evol chpo nutsnu (inve sort1));
  664. npl2=(evol chpo nutsnu sort2);
  665. npl1=extr npl1 'ORDO'; ordo npl1;
  666. npl2=extr npl2 'ORDO'; ordo npl2;
  667. npl1=npl1 enlev 1 ;
  668. npl2=npl2 enlev 1 ;
  669.  
  670. evnpl1=evol manu xypls1 npl1;
  671. evnpl2=evol manu xypls2 npl2;
  672. evnpl1=evnpl1 coul rouge;
  673. evnpl2=evnpl2 coul verte;
  674.  
  675. TAB1 = TABLE ;
  676. tab1.1 = 'MOT' 'TIRC';
  677. tab1.2 = 'MOT' 'TIRM';
  678. tab1.'TITRE' = TABLE ;
  679. tab1.'TITRE'. 1 = 'MOT' 'nt/n paroi1' ;
  680. tab1.'TITRE'. 2 = 'MOT' 'nt/n paroi2' ;
  681.  
  682. dess (evnpl2 et evnpl1) 'LOGX' 'XBOR' 1. 500.
  683. TITR ' Nut/nu en sortie' 'GRIL' lege TAB1
  684. tity ' ' titx 'm';
  685.  
  686. tabk.'evnpl1'=evnpl1;
  687. tabk.'evnpl2'=evnpl2;
  688.  
  689. ung = vect un 0.5 'UX' 'UY' jaune;
  690. trace ung mt 'TITR' ' Vitesses ';
  691.  
  692. pn = elno $mt rv.inco.PRESSION kpres;
  693. trace pn mt (cont mt) TITR 'Pression';
  694. evpaxe= evol chpo pn axe;
  695. dess evpaxe TITR ' Pression sur l axe';
  696.  
  697. *-----------------------------------------------------------------------
  698. evax= evol chpo (exco un 'UX') axe ;
  699. dess evax TITR 'U sur l axe'
  700. tity 'm/s' titx 'm';
  701. *-----------------------------------------------------------------------
  702.  
  703. *-----------------------------------------------------------------------
  704. evmuax= evol chpo nutsnu axe ;
  705. dess evmuax TITR 'Nut/Mu sur l axe'
  706. tity ' ' titx 'm';
  707. tabk.'evmuax'=evmuax;
  708. *-----------------------------------------------------------------------
  709.  
  710. *$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  711.  
  712. *profils de référence
  713. evupdr evupgr evusr uetr = anabu 1. Rey 1. ;
  714. mess '***************************************************************';
  715. mess '***************************************************************';
  716. mess ' UET1 = ' UET1 ' UET2 = ' UET2 ' UETR = ' UETR ;
  717. mess '***************************************************************';
  718. mess '***************************************************************';
  719.  
  720. evus= evol chpo (exco unn 'UX') sortie;
  721. usix = extr evusr 'ABSC';
  722. usi = ipol usix (extr evus 'ABSC') (extr evus 'ORDO');
  723. evusi = evol manu usix usi ;
  724. evdu = (evusi - evusr)*(evusi - evusr);
  725.  
  726. tab1 = table;
  727. tab1.1 = 'MOT' 'TIRC';
  728. tab1.1 = 'MOT' ' ';
  729. tab1.2 = 'MOT' ' ';
  730. tab1.3 = 'MOT' ' ';
  731. tab1.'TITRE' = TABLE ;
  732. tab1.'TITRE'. 1 = 'MOT' 'KL Référence';
  733. tab1.'TITRE'. 2 = 'MOT' Mdl ;
  734. tab1.'TITRE'. 3 = 'MOT' 'Buleev analytique' ;
  735. evusr=evusr coul rouge;
  736. evurr=evurr coul vert ;
  737.  
  738. dess (evurr et evus et evusr) TITR 'U en sortie' 'GRIL' LEGE TAB1
  739. tity 'm/s' titx 'm';
  740.  
  741. evkrr=evkrr coul verte;
  742. evks = evol chpo rv.inco.'KN' sortie;
  743.  
  744. dess (evkrr et evks) TITR 'K en sortie' 'GRIL' LEGE TAB1
  745. tity 'm2/s2' titx 'm';
  746.  
  747. evmrr=evmrr coul verte;
  748. evms = evol chpo ((1./MU)*(rv.inco.'MUF')) sortie;
  749.  
  750. dess (evmrr et evms) TITR 'Mueff en sortie' 'GRIL' LEGE TAB1
  751. tity 'm2/s' titx 'm';
  752.  
  753. tabk.'evus'=evus;
  754. tabk.'evusr'=evusr;
  755.  
  756. dess evdu TITR '|U - uref|**2';
  757.  
  758. du = (INTG evdu);
  759. errn = (abs (du - 1.23566E-03));
  760. mess ' delta u = ' du ' errn = ' errn;
  761. Si (NON COMPLET);
  762. Si(errn > 0.0001); erreur 5 ; Finsi ;
  763. Finsi;
  764.  
  765. FINPROC tabk;
  766.  
  767. ******* Profils de T+ de Kader ***********************************
  768. Si FAUX;
  769.  
  770. evt2p1 evt1p1=kader 0.7 1.e4 'VERTE';
  771. evt2p2 evt1p2=kader 0.7 1.e5 'ROUGE';
  772. evt2p3 evt1p3=kader 0.7 1.e6 'BLEUE';
  773.  
  774. tab1 = table;
  775. tab1.1 = 'MOT' ' ';
  776. tab1.2 = 'MOT' 'TIRC';
  777. tab1.3 = 'MOT' ' ';
  778. tab1.4 = 'MOT' 'TIRC';
  779. tab1.5 = 'MOT' ' ';
  780. tab1.6 = 'MOT' 'TIRC';
  781. tab1.'TITRE' = TABLE ;
  782. tab1.'TITRE'. 1 = 'MOT' 'T+1 Ret=1.e4' ;
  783. tab1.'TITRE'. 2 = 'MOT' 'T+2 Ret=1.e4' ;
  784. tab1.'TITRE'. 3 = 'MOT' 'T+1 Ret=1.e5' ;
  785. tab1.'TITRE'. 4 = 'MOT' 'T+2 Ret=1.e5' ;
  786. tab1.'TITRE'. 5 = 'MOT' 'T+1 Ret=1.e6' ;
  787. tab1.'TITRE'. 6 = 'MOT' 'T+2 Ret=1.e6' ;
  788.  
  789. dess (evt1p1 et evt2p1 et evt1p2 et evt2p2 et evt1p3 et evt2p3)
  790. LOGX XBOR 0.1 1.E5 tity 'T+' titx 'Y+' 'GRIL' LEGE TAB1
  791. TITR ' Teta+ Cas 1 et 2 Fonction du Reynolds Turbulent';
  792.  
  793. evt2p1 evt1p1=kader 0.1 1.e4 'VERTE';
  794. evt2p2 evt1p2=kader 1. 1.e5 'ROUGE';
  795. evt2p3 evt1p3=kader 10. 1.e6 'BLEUE';
  796.  
  797. tab1.'TITRE'. 1 = 'MOT' 'T+1 Pr=0.1' ;
  798. tab1.'TITRE'. 2 = 'MOT' 'T+2 Pr=0.1' ;
  799. tab1.'TITRE'. 3 = 'MOT' 'T+1 Pr=1.' ;
  800. tab1.'TITRE'. 4 = 'MOT' 'T+2 Pr=1.' ;
  801. tab1.'TITRE'. 5 = 'MOT' 'T+1 Pr=10.' ;
  802. tab1.'TITRE'. 6 = 'MOT' 'T+2 Pr=10.' ;
  803.  
  804. dess (evt1p1 et evt2p1 et evt1p2 et evt2p2 et evt1p3 et evt2p3)
  805. LOGX XBOR 0.1 1.E5 tity 'T+' titx 'Y+' 'GRIL' LEGE TAB1
  806. TITR ' Teta+ Cas 1 et 2 Fonction du Prandtl';
  807. Finsi;
  808. ******* Profils de T+ de Kader FIN ******************************
  809.  
  810.  
  811. *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  812. *profils de référence
  813. evupdr evupgr evusr uetr = anabu 1. Rey 1. ;
  814. mess '***************************************************************';
  815. mess '***************************************************************';
  816. mess ' UET1 = ' UET1 ' UET2 = ' UET2 ' UETR = ' UETR ;
  817. mess '***************************************************************';
  818. mess '***************************************************************';
  819.  
  820. evus= evol chpo (exco unn 'UX') sortie;
  821. usix = extr evusr 'ABSC';
  822. usi = ipol usix (extr evus 'ABSC') (extr evus 'ORDO');
  823. evusi = evol manu usix usi ;
  824. evdu = (evusi - evusr)*(evusi - evusr);
  825.  
  826. Si GRAPH ;
  827. t1=POST;
  828.  
  829. tab1 = table;
  830. tab1.1 = 'MOT' 'TIRC';
  831. tab1.2 = 'MOT' ' ';
  832. tab1.'TITRE' = TABLE ;
  833. tab1.'TITRE'. 1 = 'MOT' Mdl ;
  834. tab1.'TITRE'. 2 = 'MOT' 'Buleev analytique' ;
  835. evusr=evusr coul rouge;
  836.  
  837. dess (evus et evusr) TITR 'U en sortie' 'GRIL' LEGE TAB1
  838. tity 'm/s' titx 'm';
  839.  
  840. dess evdu TITR '|U - uref|**2';
  841. Finsi;
  842.  
  843. du = (INTG evdu);
  844. errn = (abs (du - 1.23566E-03));
  845. mess ' delta u = ' du ' errn = ' errn;
  846. Si (NON COMPLET);
  847. Si(errn > 0.001); erreur 5 ; Finsi ;
  848. Finsi;
  849.  
  850. FIN;
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  

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