Télécharger waam4.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier waam4.dgibi
  2. * section : thermique conduction convection
  3. *----------------------------------------------------------------------*
  4. * W A A M 4 . D G I B I *
  5. *----------------------------------------------------------------------*
  6. * Objet :
  7. * -------
  8. *
  9. * Exemple de simulation thermique d'une fabrication additive en WAAM.
  10. * L'exemple simule la realisation d'un piquage a 45 degres sur un tube
  11. * (tube A). Le depot et le tube A sont en acier 316L.
  12. *
  13. * On modelise la conduction, la convection et le rayonnement avec le
  14. * milieu ambiant. La source de chaleur suit une distribution gaussienne.
  15. *
  16. * L'apport de matiere est defini a l'aide d'un chargement de nom MODE
  17. * qui decrit l'evolution du modele au cours du temps. Un chargement de
  18. * nom MATE definit celle de ses caracteristiques.
  19. *
  20. * La modelisation fait appel a la procedure SOUDAGE pour definir la
  21. * sequence de fabrication et indexer l'appartion des mailles au cours
  22. * du temps le long de la trajectoire de l'outil (sequancage de l'apport
  23. * de matiere).
  24. *
  25. * Cet exemple sert notamment a verifier le bon fonctionnement de
  26. * l'option MAIL de la procedure SOUDAGE utilisee pour le sequencage du
  27. * maillage dans le cas d'une trajectoire circulaire fermee.
  28. *
  29. * Un test de non regression est realise sur la temperature en un point
  30. * et un instant donne du calcul.
  31. *
  32. * Description :
  33. * -------------
  34. *
  35. * Type de calcul : Thermique Transitoire
  36. * Mode de calcul : 3D
  37. * Type d'element : CUB8, PRI6, TET4
  38. * Chargement : Source de chaleur, Convection, Rayonnement,
  39. * Apport de matiere
  40. *
  41. *----------------------------------------------------------------------*
  42. opti dime 3 elem cub8 ;
  43.  
  44. opti trac psc ;
  45.  
  46. * Pour affichages, mettre IG1 a VRAI :
  47. ig1 = faux ;
  48.  
  49. * Pour sortie PS sequencage apport de matiere, mettre ISEQMAIL a VRAI :
  50. iseqmail = faux ;
  51.  
  52. * Pour sortie PS champ temperature au cours du temps, mettre ITANIM a VRAI :
  53. iT_anim = faux ;
  54.  
  55. * Pour calcul complet, mettre ICOMPLET a VRAI :
  56. icomplet = faux ;
  57.  
  58. *----------------------------------------------------------------------*
  59. * Parametres du modele *
  60. *----------------------------------------------------------------------*
  61.  
  62. *------------------ Parametres geometrie et maillage ------------------*
  63.  
  64. * Rae1 : rayon exte. tube A (m)
  65. * Rai1 : rayon inte. tube A (m)
  66. * Rbe1 : rayon exte. tube B (m)
  67. * Rbi1 : rayon inte. tube B (m)
  68. * Rbm1 : rayon moyen tube B (m)
  69. * Angl1 : angle axes tubes A et B (degres)
  70. * Np1 : nombre de passe de fabrication
  71. * epp1 : epaisseur d'une passe
  72. * de1 : densite maillage passe (tube B)
  73. * de2 : densite maillage tube A
  74. * ne1 : nombre d'element sur la trajectoire circulaire d'une passe
  75. * ne2 : nombre d'element sur le perimetre du tube fabrique
  76. Rae1 = 150.e-3 ;
  77. Rai1 = 135.e-3 ;
  78. Rbe1 = 100.e-3 ;
  79. Epb1 = 10.e-3 ;
  80. Rbi1 = Rbe1 - Epb1 ;
  81. Rbm1 = 0.5 * (Rbe1 + Rbi1) ;
  82. Angl1 = 45. ;
  83. Np1 = 5 ;
  84. epp1 = 4.e-3 ;
  85. de1 = 2.e-3 ;
  86. de2 = 10. * de1 ;
  87. ne1 = 40 ;
  88. ne2 = enti (2. * pi * Rbm1 / de1 + 0.5) ;
  89. ne2 = ne2 / 2 ;
  90. ne2 = ne2 - (ne2 - (ne2 / 4 * 4)) ; comm ne2 doit etre un multiple de 4 ;
  91.  
  92. *----------------------- Parametres fabrication -----------------------*
  93.  
  94. * Us1/Us2 : tension 1ere/autres passes
  95. * Is1/Is2 : intensite 1ere/autres passes
  96. * eta1 : rendement
  97. * dtini1 : duree prechauffage 1ere passe (s)
  98. * dtpasse1: temps de pause entre 2 passes (s)
  99. * Dfil1 : diametre de fil (m)
  100. * Vfil1 : vitesse de debit de fil (m/s)
  101. * Vs1 : vitesse de soudage (m/s)
  102. * Rg1 : rayon source Gaussienne (m)
  103. * Zg1 : profondeur source Gaussienne (m)
  104. Us1 = 30. ;
  105. Us2 = 25. ;
  106. Is1 = 250. ;
  107. Is2 = 250. ;
  108. eta1 = 0.8 ;
  109. dtini1 = 1.0 ;
  110. dtpasse1 = 600. ;
  111. Dfil1 = 2.e-3 ;
  112. Vfil1 = 3.5 / 60. ;
  113. Vs1 = 300.e-3 / 60. ;
  114. Rg1 = 5.e-3 ;
  115. Zg1 = 3.e-3 ;
  116.  
  117. *----------------- Parametres modelisation thermique ------------------*
  118.  
  119. * T0 : temperature initiale et ambiante (degC)
  120. * H1 : coefficient de convection (W/m2)
  121. * Em1 : emissivite
  122. ZeroC1 = 273.16 ;
  123. T0 = 20. + ZeroC1 ;
  124. H1 = 20. ;
  125. Em1 = 0.5 ;
  126.  
  127. *----------------------------------------------------------------------*
  128. * MAILLAGE *
  129. *----------------------------------------------------------------------*
  130.  
  131. * Repere :
  132. O1 = 0 0 0 ;
  133. X1 = 1 0 0 ;
  134. y1 = 0 1 0 ;
  135. z1 = 0 0 1 ;
  136.  
  137. *------------------------- Maillage du depot --------------------------*
  138.  
  139. * Points et lignes de de construction :
  140. PCA1 = 1 0 0 ;
  141. PCB1 = 1 0 0 ;
  142. PAE1 = PCA1 plus (Rae1 * Y1) ;
  143. PAI1 = PCA1 plus (Rai1 * Y1) ;
  144. PBE1 = PCB1 plus (Rbe1 * Y1) ;
  145. PBI1 = PCB1 plus (Rbi1 * Y1) ;
  146. RBM1 = (0.2 * Rbi1) + (0.8 * Rbe1) ;
  147. PBM1 = PCB1 plus (Rbm1 * Y1) ;
  148.  
  149. * Diametres ext., int. et moyen du tube B oriente suivant Ox ;
  150. LCBM1 = cerc ne1 rota 360. PBM1 O1 PCB1 ;
  151. LCBE1 = cerc ne2 rota 360. PBE1 O1 PCB1 elim ;
  152. LCBI1 = cerc ne2 rota 360. PBI1 O1 PCB1 elim ;
  153. LCBM1 = LCBM1 coul vert ;
  154. LCBE1 = LCBE1 coul roug ;
  155. LCBI1 = LCBI1 coul bleu ;
  156.  
  157. * Rotation lignes de contruction tube B a Angl1 de Ox :
  158. LCBE1 LCBI1 LCBM1 PCB1 = LCBE1 LCBI1 LCBM1 PCB1 tour Angl1 Y1 O1 ;
  159.  
  160. * Projections surfaces sur tube A :
  161. Sb1 = LCBE1 regl LCBI1 dini de1 dfin de1 ;
  162. Sb2 = Sb1 proj dire (O1 moin PCB1) cyli O1 PCA1 PAE1 ;
  163. LCBM2 = LCBM1 proj dire (O1 moin PCB1) cyli O1 PCA1 PAE1 ;
  164. PCB2 = PCB1 proj dire (O1 moin PCB1) cyli O1 PCA1 PAE1 ;
  165. *trac (LCBE1 et LCBI1 et LCBM1) (1000. * PCB1) titr mot1 ;;
  166.  
  167. * Construction maillage passe par passe &
  168. * Construction de la trajectoire :
  169. nep1 = enti (epp1/de1+0.5) ;
  170. VTB0 = vide maillage ;
  171. ltrj1 = LCBM2 coul roug ;
  172. ttrj1 = table ;
  173. Si1 = Sb2 ;
  174. Pi1 = Si1 poin proc O1 ;
  175. repe bpasse1 Np1 ;
  176. i1 = &bpasse1 ;
  177.  
  178. * Maillage passe :
  179. Vi1 = Si1 volu nep1 tran (epp1*PCB1) ;
  180. Vi1 = Vi1 coul i1 ;
  181. VTB0 = VTB0 et Vi1 ;
  182. Si1 = Vi1 face 2 ;
  183. *trac (Si1 et (aret VTB0)) ;
  184.  
  185. * Maillage trajectoire :
  186. Pi2 = Si1 poin proc O1 ;
  187. ltrj1 = ltrj1 plus (Pi2 moin Pi1) ;
  188. ttrj1 . i1 = ltrj1 ;
  189. Pi1 = Pi2 ;
  190. ltrj1 = inve ltrj1 ;
  191. *trac (ltrj1 et (aret VTB0)) ;
  192. fin bpasse1 ;
  193.  
  194. *----------------------- Tests option PROJ CYLI -----------------------*
  195.  
  196. LCAE1 = cerc ne2 rota 360. PAE1 O1 PCA1 elim ;
  197. LCAI1 = cerc ne2 rota 360. PAI1 O1 PCA1 elim ;
  198. LCA0 = LCAE1 et LCAI1 ;
  199. LCA0 = LCA0 plus ((((bary sb2) moin (bary LCA0)) psca X1) * X1) ;
  200. OB1 = bary LCA0 ;
  201.  
  202. SB3 = SB2 proj cyli O1 PCA1 cyli OB1 PCA1 PAI1 ;
  203. SBX = (SB2 coul roug) et (SB3 coul vert) ;
  204. si ig1 ;
  205. trac (SBX et LCA0) (10000*X1) titr 'Sur un cylindre : vue dans l''axe de projection cylindrique' ;
  206. trac (SBX et LCA0) (10000*Y1) titr 'Sur un cylindre : vue // a l''axe de projection cylindrique' ;
  207. fins ;
  208.  
  209. SB3 = SB2 proj cyli O1 PCA1 plan (0 0 RAE1) (1 0 RAE1) (0 1 RAE1) ;
  210. SBX = (SB2 coul roug) et (SB3 coul vert) ;
  211. si ig1 ;
  212. trac (SBX et LCA0) (10000*X1) titr 'Sur un plan : vue dans l''axe de projection cylindrique' ;
  213. trac (SBX et LCA0) (10000*Y1) titr 'Sur un plan : vue // a l''axe de projection cylindrique' ;
  214. fins ;
  215.  
  216. SB3 = SB2 proj cyli O1 PCA1 sphe OB1 (0 0 RAI1) ;
  217. SBX = (SB2 coul roug) et (SB3 coul vert) ;
  218. si ig1 ;
  219. trac (SBX et LCA0) (10000*X1) titr 'Sur une sphere : vue dans l''axe de projection cylindrique' ;
  220. trac (SBX et LCA0) (10000*Y1) titr 'Sur une sphere : vue // a l''axe de projection cylindrique' ;
  221. fins ;
  222.  
  223. SB3 = SB2 proj cyli O1 PCA1 coni (OB1 plus (RAE1*Z1)) (OB1 plus Z1) (OB1 plus (2.*RAE1*X1)) ;
  224. SBX = (SB2 coul roug) et (SB3 coul vert) ;
  225. si ig1 ;
  226. trac (SBX et LCA0) (10000*X1) titr 'Sur un cone : vue dans l''axe de projection cylindrique' ;
  227. trac (SBX et LCA0) (10000*Y1) titr 'Sur un cone : vue // a l''axe de projection cylindrique' ;
  228. fins ;
  229.  
  230. SB3 = SB2 proj cyli O1 PCA1 tori (0 0 -10) (1 1 -10) OB1 (1.5*RAI1*Z1) ;
  231. SBX = (SB2 coul roug) et (SB3 coul vert) ;
  232. si ig1 ;
  233. trac (SBX et LCA0) (10000*X1) titr 'Sur un tore : vue dans l''axe de projection cylindrique' ;
  234. trac (SBX et LCA0) (10000*Y1) titr 'Sur un tore : vue // a l''axe de projection cylindrique' ;
  235. fins ;
  236.  
  237. *------------------------- Maillage du tube A -------------------------*
  238.  
  239. * Maillage tranche tube A sous surface base tube B :
  240. Stai1 = Sb2 proj cyli O1 X1 cyli O1 X1 (Rai1 * Y1) ;
  241. *Stai1 = Sb2 proj dire (O1 moin pcb1) cyli O1 X1 (Rai1 * Y1) ;
  242. Vta1 = Sb2 volu Stai1 dini de1 dfin (5.*de1) ;
  243. *opti trac x ; trac face (1000*X1) (VTA1 et vtb0) ; opti trac psc ;
  244.  
  245. * Surface exterieure :
  246. dXA1 = Rbe1 / (cos 45.) + (Rae1 + Rbe1 * 0.2) ;
  247. PTA1 = PCB2 moin (dXA1 * X1) moin ((PCB2 coor 3) * Z1) plus (Rae1 * Y1) ;
  248. LTA1 = PTA1 cerc dini de2 dfin de2 rota O1 X1 180. ;
  249. PTA2 = LTA1 poin (nbno LTA1) ;
  250. LTA3 = LTA1 plus (2. * dXA1 * X1) ;
  251. LTA3 = inve LTA3 ;
  252. PTA3 = LTA3 poin 1 ;
  253. PTA4 = LTA3 poin (nbno LTA3) ;
  254. LTA2 = PTA2 droi PTA3 dini de2 dfin de2 ;
  255. LTA4 = PTA4 droi PTA1 dini de2 dfin de2 ;
  256.  
  257. * Contour du tube B :
  258. tsb2 = (cont sb2) part nesc conn ;
  259. csbe2 = tsb2 . 1 ;
  260. si ((mesu csbe2) < (mesu tsb2 . 2)) ;
  261. csbe2 = tsb2 . 2 ;
  262. fins ;
  263.  
  264. * Contour global et maillage surface exte. tube A :
  265. LTA0 = LTA1 et LTA2 et LTA3 et LTA4 et (inve csbe2) ;
  266. STA1 = surf LTA0 cyli O1 X1 ;
  267.  
  268. * Surace interieure :
  269. LTA5 = LTA1 proj coni ((PTA1 plus PTA2) * 0.5) cyli O1 X1 (Rai1 * Y1) ;
  270. PTA5 = LTA5 poin 1 ;
  271. PTA6 = LTA5 poin (nbno LTA5) ;
  272. LTA7 = LTA5 plus (2. * dXA1 * X1) ;
  273. PTA7 = LTA7 poin (nbno LTA7) ;
  274. PTA8 = LTA7 poin 1 ;
  275. LTA6 = PTA6 droi PTA7 dini de2 dfin de2 ;
  276. LTA8 = PTA8 droi PTA5 dini de2 dfin de2 ;
  277.  
  278. * Contour exte. Stai1 :
  279. tstai1 = (cont Stai1) part nesc conn ;
  280. cstai1 = tstai1 . 1 ;
  281. si ((mesu cstai1) < (mesu tstai1 . 2)) ;
  282. cstai1 = tstai1 . 2 ;
  283. fins ;
  284.  
  285. * Contour global et maillage surface inte. tube A :
  286. LTA02 = (LTA5 et LTA6 et LTA7 et LTA8) elem comp PTA5 PTA5 ;
  287. LTA02 = LTA02 et (inve cstai1) ;
  288. STA2 = surf LTA02 cyli O1 X1 ;
  289.  
  290. * Bords :
  291. STA3 = LTA0 regl LTA02 2 ;
  292.  
  293. * Volume partie sup. tube A :
  294. VTA2 = volu ((sta1 et sta2 et sta3) chan tri3) ;
  295.  
  296. * Extensions axiales :
  297. ptx0 = (VTA2 coor 1) poin mini ;
  298. ptx1 = (VTA2 coor 1) poin maxi ;
  299. STAx0 = (enve VTA2) elem appu stri ptx0 ;
  300. STAx1 = (enve VTA2) elem appu stri ptx1 ;
  301. VTAx0 = STAx0 volu tran 1 (-2. * Rae1 * X1) ;
  302. VTAx1 = STAx1 volu tran 1 (+2. * Rae1 * X1) ;
  303. VTA3 = VTAx0 et VTAx1 ;
  304.  
  305. * Volume partie infe. (opposee au piquage) :
  306. ptz0 = ((VTA2 et VTA3) coor 3) poin infe 1.e-6 ;
  307. ptz0 = (ptz0 coor 2) poin supe 0. ;
  308. STAz0 = ((VTA2 et VTA3) enve) elem appu stri ptz0 ;
  309. VTA4 = STAz0 volu 10 rota -180. O1 X1 ;
  310.  
  311. * Maillage total tube A :
  312. VTA0 = (VTA1 et VTA2 et VTA3 et VTA4) coul turq ;
  313. elim VTA0 1.e-6 ;
  314.  
  315. *------------------------ Affichages Maillages ------------------------*
  316.  
  317. oeil1 = -100 100 80 ;
  318. si ig1 ;
  319. trac oeil1 face (VTA0 et VTB0) titr 'Maillage tube (turquoise) et piquage par depot WAAM' ;
  320. trac (100*Y1) face (VTA0 et VTB0) boit (boite VTB0) titr 'Maillage tube et piquage : detail piquage vue cote' ;
  321. fins ;
  322.  
  323. *----------------------------------------------------------------------*
  324. * Sequence de fabrication *
  325. *----------------------------------------------------------------------*
  326.  
  327. * Puissances de soudage :
  328. Qs1 = eta1 * Us1 * Is1 ;
  329. Qs2 = eta1 * Us2 * Is2 ;
  330.  
  331. * Vitesse de deplacement entre 2 passes pour un temps de pause donnee :
  332. ldepl1 = ((ttrj1 . 1) poin 1) droi 1 ((ttrj1 . 2) poin 2) ;
  333. vdepl1 = (mesu ldepl1) / dtpasse1 ;
  334.  
  335. * Donnees d'entree :
  336. tfab1 = table ;
  337. tfab1 . vitesse_de_soudage = Vs1 ;
  338. tfab1 . vitesse_de_deplacement = vdepl1 ;
  339. tfab1 . puissance_de_soudage = Qs2 ;
  340. tfab1 . debit_de_fil = 0.25 * pi * Dfil1 * Dfil1 * Vfil1 ;
  341. tfab1 . point_de_depart = (ttrj1 . 1) poin 1 ;
  342. tfab1 . temps_de_coupure = 0.5 ;
  343.  
  344. * Sequence de fabrication :
  345. soudage tfab1 point dtini1 puis Qs1 debi 0. ;
  346. nfab1 = dime ttrj1 ;
  347. repe bfab1 nfab1 ;
  348. si (&bfab1 ega 1) ;
  349. soudage tfab1 passe mail (ttrj1 . &bfab1) puis Qs1 ;
  350. sino ;
  351. soudage tfab1 passe mail (ttrj1 . &bfab1) ;
  352. fins ;
  353. si (&bfab1 ega nfab1) ; quit bfab1 ; fins ;
  354. soudage tfab1 depla droi ((ttrj1 . (&bfab1+1)) poin 1) abso vite vdepl1 ;
  355. fin bfab1 ;
  356. soudage tfab1 point dtpasse1 puis 0. debi 0. ;
  357.  
  358. * Affichages sequence de fabrication :
  359. si ig1 ;
  360. opti oeil (PCB2 plus Z1) ;
  361. trac tfab1.trajectoire titr 'trajectoire realisation piquage' ;
  362. dess tfab1.evolution_deplacement titr 'evolution deplacement' ;
  363. dess tfab1.evolution_puissance titr 'evolution puissance thermique' ;
  364. dess tfab1.evolution_debit titr 'evolution debit apport de matiere' ;
  365. fins ;
  366.  
  367. *-------------------- Sequencage apport de matiere --------------------*
  368.  
  369. * Sequencage maillage le long de la trajectoire :
  370. tseq1 = soudage tfab1 mail VTB0 pas 10.e-3 temp ;
  371. ttps1 = tseq1 . evolution_maillage . temps ;
  372. tmai1 = tseq1 . evolution_maillage . maillage ;
  373.  
  374. oeil2 = 100 50 150. ;
  375. si iseqmail ;
  376. si (ega (vale trac) 'PSC') ; opti ftra 'waam4_sequ_mail.ps' ; fins ;
  377. mbox1 = boite VTB0 ;
  378. i1 = 0 ;
  379. repe b1 (dime tmai1) ;
  380. geoi1 = tmai1 . i1 ;
  381. trac oeil2 face (geoi1 et VTA0) titr 'Sequencage du maillage du depot' boit mbox1 ;
  382. i1 = i1 + 1 ;
  383. fin b1 ;
  384. fins ;
  385.  
  386. *----------------------------------------------------------------------*
  387. * Modelisation Thermique *
  388. *----------------------------------------------------------------------*
  389.  
  390. * Donnees materiau :
  391. t316L = biblio '316L' ;
  392. rho1 = ipol t316L.'RHO' (T0-Zeroc1) ;
  393. evk1 = t316L.'K' + Zeroc1 absc ;
  394. evc1 = t316L.'C' + Zeroc1 absc ;
  395.  
  396. * Modele de conduction :
  397. VT0 = VTA0 et VTB0 ;
  398. mod1 = mode VT0 thermique conduction ;
  399. mat1 = mate mod1 'RHO' rho1 'C' evc1 'K' evk1 'TINI' T0 ;
  400.  
  401. * Modele source thermique :
  402. * Evolution de la position de la source :
  403. evqt1 = tfab1.evolution_puissance ;
  404. evxs1 = tfab1.evolution_deplacement ;
  405. chxs1 = tfab1.trajectoire coor curv ;
  406. cgxs1 = char traj chxs1 evxs1 ;
  407.  
  408. * Evolution de la direction de la source :
  409. * On donne la normale au tube en chaque point de la trajectoire.
  410. * L'axe du tube est selon (O,x), la normale est donc selon la coord.
  411. * (y,z) de chaque point.
  412. ltraj1 = tfab1.trajectoire ;
  413. ldir1 = enum ;
  414. ltpx1 = prog ;
  415. evtxs1 = evol manu (evxs1 extr ordo) (evxs1 extr absc) ;
  416. nbdir1 = nbno ltraj1 ;
  417. tps0 = -1. ;
  418. ddir1 = vide maillage ;
  419. repe bdir1 nbdir1 ;
  420. pi1 = ltraj1 poin &bdir1 ;
  421. xsi1 = extr chxs1 scal pi1 ;
  422. txi1 = ipol evtxs1 xsi1 ;
  423. si (txi1 > tps0) ;
  424. pni1 = 0. (pi1 coor 2) (pi1 coor 3) ;
  425. ldir1 = ldir1 et (enum pni1) ;
  426. ltpx1 = ltpx1 et txi1 ;
  427. ddir1 = ddir1 et (pi1 droi 1 (pi1 plus pni1)) ;
  428. fins ;
  429. fin bdir1 ;
  430. cgdir1 = char dire ltpx1 ldir1 ;
  431.  
  432. * Visualisation :
  433. si ig1 ;
  434. mbox1 = boite VTB0 ;
  435. ddir1 = ddir1 coul oran ;
  436. trac (100 100 20) face (VTA0 et VTB0 et ddir1) boit mbox1 titr 'Directions d''orientation de la source de chaleur' ;
  437. fins ;
  438.  
  439. * Definition du modele :
  440. mod2 = mode VT0 thermique source gaussienne elliptique ;
  441. mat2 = mate mod2 'QTOT' evqt1 'ORIG' cgxs1 'DIRE' cgdir1 'RGAU' Rg1 'ZGAU' Zg1 ;
  442.  
  443. * Sequencage modeles :
  444. ltps1 = prog tabl ttps1 ;
  445. nb1 = dime tmai1 ;
  446. lgeo0 = enum nb1*vta0 ;
  447. lgeo1 = enum 'TABL' tmai1 ;
  448.  
  449. * Vectorisation des operations sur les listes de maillages et de modeles
  450. * en activant la parallelisation :
  451. opti para vrai ;
  452. lgeo1 = lgeo0 et lgeo1 ;
  453. lgeo2 = enve lgeo1 ;
  454. lmod1 = redu lgeo1 (mod1 et mod2) ;
  455. lmat1 = redu lmod1 (mat1 et mat2) ;
  456. lmod2 = mode lgeo2 thermique convection ;
  457. lmat2 = mate lmod2 'H' h1 'TC' T0 ;
  458. lmod3 = mode lgeo2 thermique rayonnement infini ;
  459. lmat3 = mate lmod3 'EMIS' Em1 'T_IN' T0 ;
  460.  
  461. * Chargements MODE / MATE :
  462. opti para faux ;
  463. * Retour en sequentiel : chaque commande sert de point d'arret
  464. cgmod1 = char mode ltps1 lmod1 ;
  465. cgmod2 = char mode ltps1 lmod2 ;
  466. cgmod3 = char mode ltps1 lmod3 ;
  467. cgmod0 = cgmod1 et cgmod2 et cgmod3 ;
  468.  
  469. cgmat1 = char mate ltps1 lmat1 ;
  470. cgmat2 = char mate ltps1 lmat2 ;
  471. cgmat3 = char mate ltps1 lmat3 ;
  472. cgmat0 = cgmat1 et cgmat2 et cgmat3 ;
  473.  
  474. *------------------------- Resolution PASAPAS -------------------------*
  475.  
  476. ltca0 = tseq1.temps_calcules ;
  477. si icomplet ;
  478. ltca1 = ltca0 ;
  479. sino ;
  480. ltca1 = ltca0 extr (lect 1 pas 1 11) ;
  481. fins ;
  482. list ltca1 ;
  483.  
  484. tpas1 = table ;
  485. tpas1.modele = cgmod0 ;
  486. tpas1.caracteristiques = cgmat0 ;
  487. tpas1.temps_calcules = ltca1 ;
  488.  
  489.  
  490. pasapas tpas1 ;
  491.  
  492. * Affichage temps de calcul :
  493. duree1 = temp horl ;
  494. duree1 = (duree1 / 1000) ;
  495. dmin1 = (duree1 / 60) ;
  496. dsec1 = duree1 - (60 * dmin1) ;
  497. mot1 = chai '***** DUREE DU CALCUL (s) :' dmin1 ' min' dsec1 ' s' ;
  498. mess mot1 ;
  499.  
  500. si icomplet ;
  501. opti sauv 'waam4.sauv' ;
  502. sauv ;
  503. fins ;
  504.  
  505. *------------------------ Petit post-traitement -----------------------*
  506.  
  507. si iT_anim ;
  508. si (ega (vale trac) 'PSC') ; opti ftra 'waam4_T_anim.ps' ; fins ;
  509.  
  510. * Sorties PS du champ de temperature :
  511. * Image toutes les :
  512. * - dtimag1 quand puiss. thermique non nulle
  513. * - FFwd1*dtimag1 sinon.
  514. dtimag1 = 2. ;
  515. si (ega (vale trac) 'PSC') ; dtimag1 = 0.5 ; fins ;
  516. FFwd1 = 10. ;
  517. liso1 = prog 50. 100. PAS 150. 1450. ;
  518. mbox1 = boite VTB0 ;
  519. tpsf1 = tpas1.temps . ((dime tpas1.temps) - 1) ;
  520. ifin1 = faux ;
  521. tpsi1 = 0. ;
  522. repe b1 ;
  523. modi1 = peche tpas1 modeles tpsi1 ipol ;
  524. geoi1 = (extr modi1 mate conduction) extr mail ;
  525. chti1 = peche tpas1 temperatures tpsi1 ipol ;
  526. chti1 = chti1 - ZeroC1 ;
  527. ptrj1 = tire cgxs1 traj tpsi1 ;
  528. Ri1 = ((ptrj1 coor 2) ** 2) + ((ptrj1 coor 3) ** 2) ** 0.5 ;
  529. yi1 = ptrj1 coor 2 ;
  530. thetai1 = yi1 / Ri1 * 180. / pi ;
  531. depl geoi1 tour thetai1 O1 X1 ;
  532. mot1 = chai format '(F6.1)' 'Temperature (degC) au temps (s) :' tpsi1 ;
  533. trac (100 0 100) chti1 geoi1 liso1 titr mot1 boit mbox1 ;
  534. depl geoi1 tour thetai1 X1 O1 ;
  535. tpsi1 = tpsi1 + dtimag1 ;
  536. qti1 = ipol evqt1 tpsi1 ;
  537. si (qti1 < 1.) ; comm si puissance nulle, on accelere le film (xFFwd1) ;
  538. tpsi1 = (FFwd1 - 1.) * dtimag1 + tpsi1 ;
  539. fins ;
  540. si (tpsi1 > tpsf1) ;
  541. si ifin1 ;
  542. quit b1 ;
  543. sino ;
  544. tpsi1 = tpsf1 ;
  545. ifin1 = vrai ;
  546. fins ;
  547. fins ;
  548. fin b1 ;
  549.  
  550. fins ;
  551.  
  552. *------------------------- Test non-regression ------------------------*
  553.  
  554. ttest1 = tpas1.temps.10 ;
  555. temp1 = peche tpas1 temperatures ttest1 ipol ;
  556. tmax1 = maxi abs temp1 ;
  557. tmaxref1 = 4596.8 ;
  558. si ((abs (tmax1 - tmaxref1)) > 1.) ;
  559. erre 5 ;
  560. fins ;
  561.  
  562. *------------------ F I N W A A M 4 . D G I B I -----------------*
  563. fin ;
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  

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