Télécharger soudage6.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier soudage6.dgibi
  2. * section : thermique conduction convection
  3. *----------------------------------------------------------------------*
  4. * S O U D A G E 6 . D G I B I *
  5. *----------------------------------------------------------------------*
  6. * Objet :
  7. * -------
  8. *
  9. * Exemple de simulation thermique du soudage d'un raidisseur sur une
  10. * plaque avec apport de matiere (4 passes). Les materiaux sont en acier
  11. * inoxydable (316 L).
  12.  
  13. * On modelise la conduction, la convection avec le milieu ambiant
  14. * et la source de chaleur selon 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 procedure SOUDAGE permet de definir la sequence de soudage et
  21. * d'indexer les elements du maillage des cordons de soudure en fonction
  22. * de l'evolution de l'outil le long de la trajectoire de soudage.
  23. *
  24. * Description :
  25. * -------------
  26. *
  27. * Type de calcul : Thermique Transitoire
  28. * Mode de calcul : 3D
  29. * Type d'element : CUB8, PRY6
  30. * Chargement : Source de chaleur, Convection, Apport de matiere
  31. *
  32. *----------------------------------------------------------------------*
  33. *
  34. opti dime 3 elem cub8 mode trid ;
  35.  
  36. * Pour affichage traces, mettre IG1 a VRAI :
  37. IG1 = faux ;
  38.  
  39. * Pour calcul complet, mettre icomplet a VRAI :
  40. icomplet = faux ;
  41.  
  42. *opti trac psc ;
  43. ig1 = ig1 ou (ega (vale trac) 'PSC') ;
  44.  
  45. *----------------------------------------------------------------------*
  46. * Donnees du probleme *
  47. *----------------------------------------------------------------------*
  48. *
  49. *----------------------- Parametres geometriques ----------------------*
  50.  
  51. * Geometrie pieces a souder :
  52. * la1 : largeur plaque (m)
  53. * hr1 : hauteur du raidisseur (m)
  54. * lw1 : longueur a souder (m)
  55. * ep1 : epaisseur plaque (m)
  56. * er1 : epaisseur raidisseur (m)
  57. la1 = 60.e-3 ;
  58. hr1 = 40.e-3 ;
  59. lw1 = 30.e-3 ;
  60. ep1 = 30.e-3 ;
  61. er1 = 10.e-3 ;
  62. de1 = 1.5e-3 ;
  63. de2 = 5.e-3 ;
  64. de3 = 15.e-3 ;
  65.  
  66. * Geometrie cordons :
  67. * lc1 : largeur cordons (m)
  68. lc1 = 6.e-3 ;
  69. * Pour la geometrie modelisee, section de cordon identique :
  70. Sc1 = 0.5 * lc1 * lc1 ;
  71. * Positions cordons :
  72. Pc1 = (0.5*er1*(1 0 0)) plus ((lc1 lc1 0.) * 0.5) ;
  73. Pc2 = Pc1 plus (lc1 0. 0.) ;
  74. Pc3 = Pc1 plus ((lc1 lc1 0.) * 0.5) ;
  75. Pc4 = Pc1 plus (0. lc1 0.) ;
  76.  
  77. *--------------------- Donnees probleme thermique ---------------------*
  78.  
  79. * CI / CL :
  80. * Tini1 : temperature initiale :
  81. * Te1 : temperature milieu ambiant :
  82. * h1 : coefficient d'echange convectif (W/m2/K)
  83. * em1 : emissivite
  84. * tps0 : temps de maintien avant debut deplacement torche (s)
  85. Tini1 = 20. ;
  86. Te1 = 20. ;
  87. h1 = 20. ;
  88. em1 = 0.5 ;
  89. tps0 = 1. ;
  90.  
  91. * Parametres soudage :
  92. * Us1 : tension de soudage (V)
  93. * Is1 : Intensite de soudage (A)
  94. * Vs1 : Vitesse de soudage (m/s)
  95. * Vd1 : Vitesse de deplacement (m/s)
  96. * Vf1 : vitesse de debit de fil (m/s)
  97. * Df1 : diametre du fil (m) : pas utilisee dans le calcul
  98. * Xpas1 : pas de discretisation de l'apport de matiere (m)
  99. Us1 = 12. ;
  100. Is1 = 400. ;
  101. Vs1 = 0.3 / 60. ;
  102. Vd1 = 0.1 * Vs1 ;
  103. Df1 = 1.2e-3 ;
  104. Xpas1 = 5.e-3 ;
  105.  
  106. * L'intensite de soudage est deduite du debit volumique de matiere et
  107. * de l'energie thermique qu'il faut fournir pour la fondre (on ne tient
  108. * pas compte du rendement).
  109. * A titre indicatif, calcul effectue pour l'estimer (avec : rho = 7.6e3 kg/m3,
  110. * Cp = 500. J/kg/m3, dT = 1500. degC, Qlat = 1.e9 J/m3)
  111. Is0 = Sc1 * Vs1 * (7.6e3 * 500. * 1500. + 1.e9) / Us1 ;
  112. list Is0 ;
  113.  
  114. * La vitesse de fil est deduite de la section des cordons et de la vitesse
  115. * de soudage. Elle n'intervient pas dans le calcul car geometrie cordon fixee.
  116. * A titre indicatif, son calcul et affichage (m/min.) :
  117. Vf1 = Sc1 * Vs1 / (pi * Df1 * Df1 /4.) ;
  118. List (Vf1 * 60.) ;
  119.  
  120. * Parametres modele source Gaussienne 3D :
  121. * Qtot1 : puissance thermique de la source (J)
  122. * Rg1 : "rayon" de la source Gaussienne (m)
  123. * Zg1 : "profondeur" de la source Gaussienne (m)
  124. Qtot1 = Us1 * Is1 ;
  125. Rg1 = 6.0e-3 ;
  126. Zg1 = 4.5e-3 ;
  127.  
  128. *-------------------------- Donnees materiau --------------------------*
  129. * Ref. :
  130. * Camille Cambon, Issam Bendaoud, Sebastien Rouquette, Fabien Soulie.
  131. * “Influence of the first weld bead on strain and stress states in wire+arc additive manufacturing”.
  132. * The 12th International Seminar ”Numerical Analysis of Weldability”,
  133. * Institute for Materials Science, Joining and Forming (IMAT),Sep 2018, Seggau, Austria.
  134. * hal-01954354 https://hal.archives-ouvertes.fr/hal-01954354
  135. *
  136. * rho1 : masse volumique (kg/m3)
  137. * Tfus1 : temperature de changement de phase solide-liquide (degC)
  138. * Qlat1 : chaleur latente de fusion de l'acier (J/m3)
  139. rho1 = 7760. ;
  140. Tfus1 = 1450. ;
  141. Qlat1 = 2.e9 ;
  142.  
  143. * k1 : conductivite thermique (W/m/K) en fonction de la temperature
  144. lt1 = prog 20. 100. pas 100. 1500. ;
  145. lk1 = prog 14. 15.2 16.6 17.9 19. 20.6 21.8 23.1 24.3 26. 27.3 28.6 29.9 45. 60. 60. ;
  146. k1 = evol vert manu 'T' lt1 'K' lk1 ;
  147. si ig1 ;
  148. dess k1 titr 'Conductivite thermique 316L (W/m/K)' ;
  149. fins ;
  150.  
  151. * Cp1 : capacite thermique massique (J/m3) en fonction de la temperature
  152. * On derive l'enthalpie :
  153. lt1 = prog 0. pas 100. 1500. ;
  154. lh1 = prog 0.983 1.36 1.76 2.19 2.62 3.06 3.51 3.96 4.43 4.92 5.42 5.92 6.44 6.97 9.51 ;
  155. lh2 = prog 1.36 1.76 2.19 2.62 3.06 3.51 3.96 4.43 4.92 5.42 5.92 6.44 6.97 9.51 10.1 ;
  156. dhdt1 = (lh2 - lh1) / 100. ;
  157. lc0 = dhdt1 * 1.e9 / rho1 ;
  158. lt0 = prog 50. pas 100. 1450. ;
  159. cp0 = evol manu 'T' lt0 'C' lc0 ;
  160. idx0 = posi (maxi lc0) dans lc0 ;
  161. lc2 = lc0 enle idx0 ;
  162. lt2 = lt0 enle idx0 ;
  163. cp2 = evol oran manu 'T' lt2 'C' lc2 ;
  164. cp1 = cp2 ;
  165. si ig1 ;
  166. tleg1 = table ;
  167. tleg1 . titre = table ;
  168. tleg1 . 1 = 'Cp derivee publi.' ;
  169. tleg1 . 2 = 'Cp utilisee' ;
  170. dess (cp0 et cp1) titr ' Capacite thermique massique 316L (J/m3)' lege tleg1 ;;
  171. fins ;
  172.  
  173. *----------------------------------------------------------------------*
  174. * Maillage *
  175. *----------------------------------------------------------------------*
  176.  
  177. * Repere :
  178. O1 = 0 0 0 ;
  179. X1 = 1 0 0 ;
  180. Y1 = 0 1 0 ;
  181. Z1 = 0 0 -1 ;
  182. oeil0 = 100 +100 100 ;
  183.  
  184. *-------------------- Maillage Plaque et Raidisseur -------------------*
  185.  
  186. * Plaque : maillage surface dans plan (0,xy)
  187. Pp1 = 0.5*er1*X1 ;
  188. Pp2 = Pp1 plus (3.*lc1*X1) ;
  189. lp1 = ((0 0 0) droi Pp1 dini de1 dfin de1) et (Pp1 droi Pp2 dini de1 dfin de1) ;
  190. sp1 = lp1 tran (-0.4*ep1*Y1) dini de1 dfin de1 ;
  191. sp1 = sp1 coul gris ;
  192. lp2 = sp1 cote 2 ;
  193. lp3 = sp1 cote 3 ;
  194. Pp3 = lp2 poin proc (Pp2 moin Y1) ;
  195. PP4 = Pp3 moin (0.6*ep1*Y1) ;
  196. Pp5 = PP4 moin (0.5*er1*X1) moin (3.*lc1*X1) ;
  197. Pp6 = lp3 poin proc (-1 -1 0) ;
  198. CntSp2 = Pp3 droi Pp4 dini de1 dfin de2 ;
  199. CntSp2 = CntSp2 et (Pp4 droi Pp5 dini de2 dfin de2) ;
  200. CntSp2 = CntSp2 et (Pp5 droi Pp6 dini de2 dfin de1) ;
  201. CntSp2 = CntSp2 et (inve lp3) ;
  202. Sp2 = surf CntSp2 plan ;
  203. Sp2 = sp2 coul gris ;
  204. lp22 = CntSp2 elem comp Pp3 Pp4 ;
  205. Pp7 = la1*X1 ;
  206. Pp8 = Pp7 moin (ep1*Y1) ;
  207. Pp9 = Lp22 poin proc (Pp2 moin (ep1*Y1)) ;
  208. CntSp3 = Pp2 droi Pp7 dini de1 dfin de3 ;
  209. CntSp3 = CntSp3 et (Pp7 droi Pp8 dini de3 dfin de3) ;
  210. CntSp3 = CntSp3 et (Pp8 droi Pp9 dini de3 dfin de2) ;
  211. CntSp3 = CntSp3 et (inve (Lp2 et lp22)) ;
  212. Sp3 = surf CntSp3 plan ;
  213. Sp3 = Sp3 coul gris ;
  214. spz0 = sp1 et Sp2 et Sp3 ;
  215.  
  216. * Raidisseur : maillage surface dans plan (0,xy)
  217. * Pr1 = Pp1 : Noeuds l'arete a l'angle de la plaque et du raidisseur commun aux 2 pieces :
  218. Pr2 = Pp1 plus (2.*lc1*Y1) ;
  219. lr1 = (0 0 0) droi Pp1 dini de1 dfin de1 ;
  220. sr1 = lr1 tran (2.*lc1*Y1) dini de1 dfin de1 ;
  221. Pr2 = sr1 poin proc Pr2 ;
  222. sr1 = sr1 coul vert ;
  223. lr3 = sr1 cote 3 ;
  224. sr2 = lr3 tran ((hr1-lc1-lc1)*Y1) dini de1 dfin de2 ;
  225. sr2 = sr2 coul vert ;
  226. srz0 = sr1 et sr2 ;
  227.  
  228. * Extrusion maillage volumique :
  229. Sz0 = Spz0 et Srz0 ;
  230. Vp0 = spz0 volu tran (lw1*Z1) dini de1 dfin de1 ;
  231. Vr0 = srz0 volu tran (lw1*Z1) dini de1 dfin de1 ;
  232. Vs0 = Vp0 et Vr0 ;
  233.  
  234. *------------------------ Maillage des cordons ------------------------*
  235.  
  236. * Maillage surface cordons dans plan (O,x,y) :
  237. opti elem tet4 ;
  238.  
  239. * Cordon 1 :
  240. Pc12 = lp1 poin proc (Pp1 plus (lc1*X1)) ;
  241. Pc13 = (sr1 cote 2) poin proc (Pp1 plus (lc1*Y1)) ;
  242. CntC1 = lp1 elem comp Pp1 Pc12 ;
  243. CntC1 = CntC1 et (Pc12 droi Pc13 dini de1 dfin de1) ;
  244. CntC1 = CntC1 et ((sr1 cote 2) elem comp Pc13 Pp1) ;
  245. SuC1 = surf CntC1 plan ;
  246. Suc1 = Suc1 coul 1 ;
  247.  
  248. * Cordon 2 :
  249. Pc22 = lp1 poin proc (Pp1 plus (2.*lc1*X1)) ;
  250. Pc23 = Pc22 plus ((-0.5*lc1) (0.5*lc1) 0.) ;
  251. Pc24 = Pc23 moin (lc1*X1) ;
  252. Pc24 = Cntc1 poin proc Pc24 ;
  253. CntC2 = lp1 elem comp Pc12 Pc22 ;
  254. CntC2 = CntC2 et (Pc22 droi Pc23 dini de1 dfin de1) ;
  255. CntC2 = CntC2 et (Pc23 droi Pc24 dini de1 dfin de1) ;
  256. CntC2 = CntC2 et (((CntC1 inve) elem comp Pc24 Pc12) ) ;
  257. Suc2 = Cntc2 surf plan ;
  258. Suc2 = Suc2 coul 2 ;
  259.  
  260. * Cordon 3 :
  261. Pc33 = Pc23 plus ((-0.5*lc1) (0.5*lc1) 0.) ;
  262. CntC3 = (inve CntC2) elem comp Pc24 Pc23 ;
  263. CntC3 = CntC3 et (Pc23 droi Pc33 dini de1 dfin de1) ;
  264. CntC3 = CntC3 et (Pc33 droi Pc13 dini de1 dfin de1) ;
  265. CntC3 = CntC3 et ((inve CntC1) elem comp Pc13 Pc24) ;
  266. SuC3 = surf CntC3 plan ;
  267. SuC3 = SuC3 coul 3 ;
  268.  
  269. * Cordon 4 :
  270. CntC4 = (inve CntC3) elem comp Pc13 Pc33 ;
  271. CntC4 = CntC4 et (Pc33 droi Pr2 dini de1 dfin de1) ;
  272. CntC4 = CntC4 et ((sr1 cote 2) elem comp Pr2 Pc13) ;
  273. SuC4 = CntC4 surf plan ;
  274. SuC4 = SuC4 coul 4 ;
  275.  
  276. * Volume cordons :
  277. Suc0 = Suc1 et Suc2 et Suc3 et Suc4 ;
  278. *trac (0 0 1000) Suc0 ;
  279. Vc0 = Suc0 volu tran (lw1*Z1) dini de1 dfin de1 ;
  280.  
  281. * Maillage volumique de chaque cordon :
  282. Vc1 = Vc0 elem coul 1 ;
  283. Vc2 = Vc0 elem coul 2 ;
  284. Vc3 = Vc0 elem coul 3 ;
  285. Vc4 = Vc0 elem coul 4 ;
  286.  
  287. * Fusion noeuds communs cordons/plaque et cordons/raidisseur mais pas plaque/raidisseur
  288. elim ((enve Vc0) et (enve Vp0)) 1.e-5 ;
  289. elim ((enve Vc0) et (enve Vr0)) 1.e-5 ;
  290.  
  291. * Maillage total :
  292. V0 = Vc0 et Vs0 ;
  293.  
  294. * Affichages :
  295. si IG1 ;
  296. mot1 = chai ' Maillage plaque et raidisseur :' (nbno Vs0) ' noeuds,' (nbel Vs0) ' elem.' ;
  297. trac oeil0 face Vs0 titr mot1 ;
  298. mbox2 = boite (Sp1 et Sr1 et Vc0) ;
  299. mot1 = chai ' Maillage plaque, raidisseur et cordons :' (nbno V0) ' noeuds,' (nbel V0) ' elem.' ;
  300. trac oeil0 face V0 titr mot1 ;
  301. trac (0 1 10) face V0 boit mbox2 titr mot1 ;
  302. fins ;
  303.  
  304. *----------------------------------------------------------------------*
  305. * Sequence de soudage *
  306. *----------------------------------------------------------------------*
  307.  
  308. * Initialisation table de soudage :
  309. tsoud1 = table ;
  310. tsoud1 . vitesse_de_soudage = Vs1 ;
  311. tsoud1 . vitesse_de_deplacement = Vd1 ;
  312. tsoud1 . puissance_de_soudage = Qtot1 ;
  313. tsoud1 . orientation_soudure = (1. 1. 0.) ;
  314. tsoud1 . diametre_de_fil = Df1 ;
  315. tsoud1 . vitesse_de_fil = Vf1 ;
  316. tsoud1 . point_de_depart = Pc1 ;
  317.  
  318. * Specification de la sequence :
  319. * Delai de 0,5 s avant de faire la 1ere passe :
  320. soudage tsoud1 point tps0 ;
  321. * 1ere passe :
  322. soudage tsoud1 passe droi (lw1*Z1) ;
  323. * 2e passe :
  324. soudage tsoud1 depla droi Pc2 abso ;
  325. soudage tsoud1 point 600. puis 0. debi 0. ;
  326. soudage tsoud1 passe droi (lw1*Z1) ;
  327. * 3e passe :
  328. soudage tsoud1 depla droi Pc3 abso ;
  329. soudage tsoud1 point 600. puis 0. debi 0. ;
  330. soudage tsoud1 passe droi (lw1*Z1) ;
  331. * 4e passe :
  332. soudage tsoud1 depla droi Pc4 abso ;
  333. soudage tsoud1 point 600. puis 0. debi 0. ;
  334. soudage tsoud1 passe droi (lw1*Z1) ;
  335. * Refroidissement
  336. soudage tsoud1 point 600. puis 0. debi 0. ;
  337.  
  338. * Sequencage maillage des cordons le long de la trajectoire :
  339. tab2 = soudage tsoud1 'MAIL' vc0 'PAS' Xpas1 'TEMP' ;
  340.  
  341. ttps1 = tab2.evolution_maillage.temps ;
  342.  
  343. si ig1 ;
  344. titr ' Trajectoire soudage des 4 passes (vert : depl. outil)' ;
  345. trac (1 2 10) (tsoud1.trajectoire et (aret vc1) et (aret vc2 coul defa) et (aret vc3 coul defa) et (aret vc4 coul defa)) ;
  346. dess tsoud1.evolution_deplacement titr 'Evolution temporelle du deplacement sur la trajectoire' ;
  347. dess tsoud1.evolution_puissance titr 'Evolution tempeorelle de la puissance thermique' ;
  348. *
  349. opti oeil (1. 2. 3.) ;
  350. waam tab2 visu cach ;
  351. *dess (evol manu tab2.temps_calcules (prog 1. pas 1. (dime tab2.temps_calcules))) titr 'Temps calcules' ;
  352. fins ;
  353.  
  354. *----------------------------------------------------------------------*
  355. * Modele Physique *
  356. *----------------------------------------------------------------------*
  357.  
  358. * Accrochage DDL thermique bord raidisseur sur plaque :
  359. clt1 = rela accro (enve Vr0) vp0 (mots T) ;
  360.  
  361. * sinte1 : surface interieure : a retirer de la surface qui convecte
  362. * partie du raidisseur en vis-a-vis de la plaque (surface y = ymin.)
  363. ptry0 = (vr0 coor 2) poin mini ;
  364. sury0 = (vr0 enve) elem appu stri ptry0 ;
  365. sinte1 = sury0 ;
  366. * partie de la plaque en vis-a-vis du raidisseur (maillage non-conforme)
  367. pclt1 = clt1 extr mail nomu ;
  368. supi1 = (enve Vp0) elem appu stri (pclt1 et sury0) ;
  369. sinte1 = sinte1 et supi1 ;
  370. * plan de symetrie en x=0
  371. ptx0 = (V0 coor 1) poin infe 1.e-6 ;
  372. sux0 = (enve V0) elem appu stri ptx0 ;
  373. sinte1 = sinte1 et sux0 ;
  374.  
  375. si ig1 ;
  376. trac (-5 1 3) cach ((enve V0) diff sinte1) boit (boite vc0) titr 'Surface de convection' ;
  377. fins ;
  378.  
  379. *---------------------- Modele / Carateristiques ----------------------*
  380.  
  381. * Conduction / Convection :
  382. mod1 = mode V0 thermique ;
  383. mat1 = mate mod1 rho rho1 k k1 'C' cp1 'TINI' Tini1 ;
  384.  
  385. * Source thermique :
  386. evqt1 = tsoud1.evolution_puissance ;
  387. evxs1 = tsoud1.evolution_deplacement ;
  388. chxs1 = tsoud1.trajectoire coor curv ;
  389. cgxs1 = char traj chxs1 evxs1 ;
  390. mod3 = mode V0 thermique source gaussienne elliptique ;
  391. mat3 = mate mod3 qtot evqt1 orig cgxs1 rgau Rg1 dire (1. 1. 0.) zgau Zg1 ;
  392.  
  393. * Tables d'evolution des modeles et caracteristiques :
  394. ttps1 = tab2.evolution_maillage.temps ;
  395. tmai1 = tab2.evolution_maillage.maillage ;
  396. nb1 = dime ttps1 ;
  397. tmod1 = table ;
  398. tmod2 = table ;
  399. tmod3 = table ;
  400. tmod4 = table ;
  401. tmat1 = table ;
  402. tmat2 = table ;
  403. tmat3 = table ;
  404. tmat4 = table ;
  405. repe b1 nb1 ;
  406. geoi1 = tmai1 . (&b1 - 1) ;
  407. geoi1 = geoi1 et Vp0 et Vr0 ;
  408. tmod1 . (&b1 - 1) = redu mod1 geoi1 ;
  409. tmat1 . (&b1 - 1) = redu mat1 (tmod1 . (&b1 - 1)) ;
  410. sconv1 = (enve geoi1) diff sinte1 ;
  411. *trac nclk cach sconv1 boit (boite vc0) ;
  412. tmod2 . (&b1 - 1) = mode sconv1 thermique convection ;
  413. tmat2 . (&b1 - 1) = mate (tmod2 . (&b1 - 1)) 'H' h1 'TC' Te1 ;
  414. tmod3 . (&b1 - 1) = redu mod3 geoi1 ;
  415. tmat3 . (&b1 - 1) = redu mat3 (tmod3 . (&b1 - 1)) ;
  416. tmod4 . (&b1 - 1) = mode sconv1 thermique rayonnement infini ;
  417. tmat4 . (&b1 - 1) = mate (tmod4 . (&b1 - 1)) 'EMIS' em1 'T_IN' Te1 ;
  418. fin b1 ;
  419.  
  420. * Chargements MODE / MATE :
  421. cgmod1 = char mode ttps1 tmod1 ;
  422. cgmod2 = char mode ttps1 tmod2 ;
  423. cgmod3 = char mode ttps1 tmod3 ;
  424. cgmod4 = char mode ttps1 tmod4 ;
  425. cgmod0 = cgmod1 et cgmod2 et cgmod3 et cgmod4 ;
  426.  
  427. cgmat1 = char mate ttps1 tmat1 ;
  428. cgmat2 = char mate ttps1 tmat2 ;
  429. cgmat3 = char mate ttps1 tmat3 ;
  430. cgmat4 = char mate ttps1 tmat4 ;
  431. cgmat0 = cgmat1 et cgmat2 et cgmat3 et cgmat4 ;
  432.  
  433. *------------------------- Resolution PASAPAS -------------------------*
  434.  
  435. * temps calcules :
  436. ltca0 = tab2.temps_calcules ;
  437. it0 = posi tps0 dans ltca0 ;
  438. ltca0 = (prog 0. pas 0.2 tps0) et (ltca0 extr (lect (it0 + 1) pas 1 (dime ltca0))) ;
  439. si (non icomplet) ;
  440. ltca1 = ltca0 extr (lect 1 pas 1 20) ;
  441. sino ;
  442. ltca1 = ltca0 ;
  443. fins ;
  444. list ltca1 ;
  445.  
  446. * temps des sauvegardes :
  447. si icomplet ;
  448. ltsg1 = ltca1 extr (lect 50 pas 50 ((dime ltca1) / 50 * 50)) ;
  449. si ((maxi ltsg1) neg (maxi ltca1)) ;
  450. ltsg1 = ltsg1 et (maxi ltca1) ;
  451. fins ;
  452. list ltsg1 ;
  453. fins ;
  454.  
  455. tpas1 = table ;
  456. tpas1.modele = cgmod0 ;
  457. tpas1.caracteristiques = cgmat0 ;
  458. *tpas1.chargement = cgmat0 ;
  459. tpas1.blocages_thermiques = clt1 ;
  460. tpas1.temps_calcules = ltca1 ;
  461. tpas1.temps_sauves = ltca1 ;
  462. tpas1.celsius = vrai ;
  463.  
  464. si icomplet ;
  465. tpas1.temps_sauvegardes = ltsg1 ;
  466. opti sauv 'thermique_SoudageRaidisseur.sauv' ;
  467. sauv ;
  468. fins ;
  469.  
  470.  
  471. pasapas tpas1 ;
  472.  
  473. * Affichage temps de calcul :
  474. duree1 = temp horl ;
  475. duree1 = (duree1 / 1000) ;
  476. dmin1 = (duree1 / 60) ;
  477. dsec1 = duree1 - (60 * dmin1) ;
  478. mot1 = chai '***** DUREE DU CALCUL (s) :' dmin1 ' min' dsec1 ' s' ;
  479. mess mot1 ;
  480.  
  481. *------------------------ Petit post-traitement -----------------------*
  482.  
  483. si ig1 ;
  484.  
  485. * Animation du champ de temperature :
  486. if1 = (dime tpas1.temps) - 1 ;
  487. modf1 = tpas1.modeles.if1 ;
  488. mailf1 = (extr modf1 mate conduction) extr mail ;
  489. dep0 = manu chpo mailf1 3 ux 0. uy 0. uz 0. ;
  490. def1 = vide deforme ;
  491. liso1 = prog 0. 50. 100. PAS 150. 1450. ;
  492. vtra1 = vale trac ;
  493. si (ega vtra1 'PSC') ;
  494. opti ftra 'Temperature_soudage6_anim.ps' ;
  495. fins ;
  496. mbox1 = boite Vc0 ;
  497. repe b1 if1 ;
  498. modi1 = tpas1.modeles.(&b1-1) ;
  499. maili1 = (extr modi1 mate conduction) extr mail ;
  500. chti1 = tpas1.temperatures.(&b1-1) ;
  501. defoi1 = defo maili1 dep0 chti1 ;
  502. def1 = def1 et defoi1 ;
  503. si (ega vtra1 'PSC') ;
  504. mot1 = chai format '(F6.1)' 'Temperature (degC) au temps (s) :' (tpas1.temps.(&b1-1)) ;
  505. trac (1 2 3) chti1 maili1 liso1 titr mot1 boit mbox1 ;
  506. fins ;
  507. fin b1 ;
  508. si (neg vtra1 'PSC') ;
  509. trac (1 2 3) anim def1 liso1 boit mbox1 ;
  510. fins ;
  511.  
  512. fins ;
  513.  
  514. si icomplet ; sauv ; fins ;
  515.  
  516. *-------------- F I N S O U D A G E 6 . D G I B I --------------*
  517. fin ;
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  

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