Télécharger soudage.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : soudage.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. *----------------------------------------------------
  5. * calcul simplifie du depot d'un cordon de soudure :
  6. * on realise litteralement des depots de matiere chaude
  7. * le long d 'un chanfrein. Le materiau est de l inox.
  8. *
  9. * ce jeu de donnees comprend notamment :
  10. * une boucle de construction du maillage 3D (plaque+depots)
  11. * et d attribution des modeles
  12. * une etude sur le choix des modeles plastiques et viscoplastiques
  13. * (avec VISK2 disponible en 1/1/1999)
  14. * une procedure pour realiser les depots successifs : construction
  15. * de la table pour PASAPAS avec mise a jour des modeles, chargements
  16. * et conditions aux limites. Un temps de latence de 2s est arbitrairement
  17. * observe.
  18. * une procedure pour le refroidissement apres depot : idem
  19. * une procedure pour le trace des temperatures et du Von Mises des
  20. * contraintes a chaque depot
  21. *
  22. * le calcul thermo-mecanique couple consiste en la reactualisation
  23. * des caracteristiques materiaux a chaque pas de temps
  24. * les aspects thermo-metallurgiques ne sont pas pris en compte
  25. * au 1/1/1999
  26. * le trace final est realise en animation
  27. *
  28. * Cet exemple comprend un mode mise au point -> misopoin = vrai ;
  29. * Le calcul complet est tres gourmand en ressources informatiques
  30. *-----------------------------------------------------------------
  31. *-----------------------------------------------------------------
  32. * Simplified calculation of welding :
  33. * The deposits of hot material ate readily simulated,
  34. * along a V-notched plate. Austenitic steel is concerned.
  35. *
  36. * This data file includes :
  37. * a loop which enables the 3D meshing (plate+deposits)
  38. * and set the models
  39. * a study on the opportunity to use either elastoplastic or viscoplastic
  40. * models (particularly VISK2 available 1/1/199)
  41. * a procedure which enables the stepwise deposits : defines the TABLE object
  42. * for PASAPAS, and updates models, loadings and boundary conditions.
  43. * It is arbitrary chosen a duration of 2s for the deposit.
  44. * a procedure to compute the cooling down : idem
  45. * a procedure which shows the thermal and Von Mises fields after each deposit
  46. *
  47. * The thermo-mechanical coupling consists of the material characteristics
  48. * updating. The thermo-metallurgical aspects are not taken into account
  49. * (1/1/1999).
  50. * Finally an animated view of the calculation is presented.
  51. *
  52. * This example includes a tuning mode -> misopoin = vrai ;
  53. * The complete calculation is quite a heavy computer job
  54. *------------------------------------------------------------------
  55. tit_ref = 'soudure / ' ;
  56. opti dime 2 elem seg2 ;
  57. mo_mode = parf ;
  58. misopoin = vrai ;
  59. si misopoin ;
  60. opti trac x ;
  61. sinon ;
  62. opti trac psc sauv 'soudure.k2000' ;
  63. finsi ;
  64. graph = 'N' ; monop=faux;
  65. *------------------------------------------------------------------
  66. * parametres
  67. *------------------------------------------------------------------
  68. * epaisseur de la tranche elementaire
  69. epais_z = 0.01 ;
  70. * nombre de tranches (hormis 2 tranches de bord)
  71. si misopoin ;
  72. n_tra1 = 10 ;
  73. sinon ;
  74. n_tra1 = 200 ;
  75. finsi ;
  76. * temperature des depots (C)
  77. tempdepo = 1500. ;
  78. * duree du depot (s)
  79. duredepo = 2. ;
  80. * coefficient pour les traces
  81. t_coef = table ;
  82. t_coef . defo1 = 2. ;
  83. *------------------------------------------------------------------
  84. * CARACTÉRISTIQUES MATERIAU
  85. * MATERIAL CHARACTERITICS
  86. *------------------------------------------------------------------
  87. * evolution des caracteristiques avec la temperature ;
  88. * TABLE POUR LA VISUALISATION
  89. TAB1 = TABLE;
  90. TAB1.1 = 'MARQ LOSA';
  91. TAB1.2 = 'MARQ TRIA';
  92.  
  93. * capacite volumique
  94.  
  95. ltmpt1 = prog 20. 100. pas 100. 1400. 1450. 3000.;
  96.  
  97. lscapa = prog 3594.5 3902.6 4157.4 4309.6 4442.9 4467.6
  98. 4491.6 4590.4 4696.8 4907.5 4950. 4990. 5043. 5054.2
  99. 5071.5 5088. 5088.;
  100.  
  101. * conversion en USI
  102. lscapa = lscapa * 1.e3;
  103. evlcapa = evol manu 'T' ltmpt1 'C' lscapa ;
  104. *dess evlcapa titre 'Capacaité volumique' nclk TAB1 ;
  105.  
  106. * conductivite
  107.  
  108. lscondu = prog 14. 15.2 16.6 17.9 19.2 20.6 21.8 23.1 24.3 26.
  109. 27.3 28.1 29.9 32. 34. 49. 49.;
  110. lscondu = lscondu ;
  111.  
  112. evlcond = evol manu 'T' ltmpt1 'K' lscondu ;
  113. *dess evlcond titre 'Conductivite' nclk TAB1 ;
  114.  
  115. * coefficient de convection avec l'exterieur
  116. he1 = 30. ;
  117.  
  118. * module d'YOUNG
  119. ltmpt2 = prog 0. 100. 200. 300. 400. 500. 600.
  120. 700. 750. 1200. 1350. 3000. ;
  121. lyoung = (prog 197. 191.5 184. 176.5 168. 160. 151. 142.5
  122. 135. 50. 10. 1. ) * 1.d9 ;
  123. evlyoun = evol manu 'T' ltmpt2 'YOUN' lyoung ;
  124. *dess evlyoun titre 'Module d Young' nclk TAB1 GRIL;
  125. * coefficient d ecrouissage
  126. evlh = evolm manu 'T' ltmpt2 'H' (lyoung*0.0001) ;
  127.  
  128. * coefficient de POISSON *
  129. ltmpt3 = prog 0. 23.8 148.9 260. 371. 482.2 593. 704. 1400.
  130. 1450. 3000. ;
  131. lnu = prog 0.26 0.26 0.26 0.3 0.34 0.3 0.32 0.31 0.31 0.49 0.49 ;
  132. evlnu = evol manu 'T' ltmpt3 'NU' lnu ;
  133. *dess evlnu titre 'Coefficient de Poisson' nclk TAB1 GRIL;
  134.  
  135. * limite élastique
  136. ltmpt4 = prog 0. 100. 200. 250. 300. 350. 400. 500. 600.
  137. 700. 800. 900. 1000. 1100. 1200. 1400. 1450. 3000. ;
  138. lsigy = prog 260. 206. 173. 162.5 155. 147. 140. 130. 123.5
  139. 116. 106. 88. 60. 26. 10. 1. 1. 1.;
  140. lsigy = lsigy * 1.d6 ;
  141. evly = evol manu 'T' ltmpt4 'SIGY' lsigy ;
  142. *dess evly titre 'Limite elastique' nclk TAB1 GRIL;
  143. *
  144. * module visqueux
  145. evlhvis = evol manu 'T' ltmpt2 'HVIS' (lyoung*0.1) ;
  146.  
  147. * coefficient eta
  148. ev_eta = evol manu 'T' ltmpt2 'ETA' (lyoung*0.1*15.) ;
  149.  
  150. * coefficient n
  151. ev_n2 = evol manu 'T' (prog 0. 3000.) 'N' (prog 1. 1.) ;
  152.  
  153. * dilatation thermique moyenne reference 20°
  154. ltmpt7 = prog 0. 200. 400. 600. 800. 1000. 1400. 1450. 3000. ;
  155. lalpha1 = prog 15.4 16.6 17.5 18.4 19.0 19.4 19.6 19.6 19.6;
  156. lalpha1 = lalpha1 * 1.d-6 ;
  157. evalpha1 = evol manu 'T' ltmpt7 'ALPH' lalpha1 ;
  158. *dess evalpha1 titre 'Alpha' TAB1 GRIL nclk ;
  159. *-----------------------------------------------------------------
  160. * procedure attribution modele
  161. * procedure to set the models
  162. *-----------------------------------------------------------------
  163. debproc at_moma mail_u*maillage ;
  164. * definit le modele thermomecanique
  165. si (ega mo_mode cine) ;
  166. mo1 = (modele mail_u mecanique
  167. elastique isotrope plastique cinematique cons meca)
  168. et (modele mail_u thermique isotrope cons ther) ;
  169. ma1 = (mate (extr mo1 cons meca)
  170. 'YOUN' evlyoun 'NU' evlnu 'SIGY' evly 'H' evlh 'ALPH' evalpha1 'TREF' 20. 'TALP' 20.)
  171. et (mate (extr mo1 cons ther)
  172. 'C' evlcapa 'K' evlcond 'RHO' 1.) ;
  173. finsi ;
  174. si (ega mo_mode parf) ;
  175. mo1 = (modele mail_u mecanique
  176. elastique isotrope plastique parfait cons meca)
  177. et (modele mail_u thermique isotrope cons ther) ;
  178. ma1 = (mate (extr mo1 cons meca)
  179. 'YOUN' evlyoun 'NU' evlnu 'SIGY' evly 'ALPH' evalpha1 'TREF' 20. 'TALP' 20.)
  180. et (mate (extr mo1 cons ther)
  181. 'C' evlcapa 'K' evlcond 'RHO' 1.) ;
  182. finsi ;
  183. si (ega mo_mode visk2) ;
  184. mo1 = (modele mail_u mecanique
  185. elastique isotrope viscoplastique visk2 cons meca)
  186. et (modele mail_u thermique isotrope cons ther) ;
  187. ma1 = (mate (extr mo1 cons meca)
  188. 'YOUN' evlyoun 'NU' evlnu 'SIGY' evly 'H' evlh 'ALPH' evalpha1 'TREF' 20. 'TALP' 20.
  189. 'HVIS' evlhvis 'ETA' ev_eta 'N' ev_n2 )
  190. et (mate (extr mo1 cons ther)
  191. 'C' evlcapa 'K' evlcond 'RHO' 1.) ;
  192. finsi ;
  193. si (ega mo_mode viscp) ;
  194. mo1 = (modele mail_u mecanique elastique isotrope
  195. viscoplastique parfait cons meca)
  196. et (modele mail_u thermique isotrope cons ther) ;
  197. ma1 = (mate (extr mo1 cons meca)
  198. 'YOUN' evlyoun 'NU' evlnu 'SIGY' evly 'ALPH' evalpha1 'TREF' 20. 'TALP' 20.
  199. 'K' 2.d8 'N' 1.)
  200. et (mate (extr mo1 cons ther) 'C' evlcapa 'K' evlcond 'RHO' 1.) ;
  201. finsi ;
  202. *
  203. finproc mo1 ma1 ;
  204. *-----------------------------------------------------------------
  205. * tranche maillage elementaire
  206. * plate slice mesh
  207. *------------------------------------------------------------------
  208. * densites utilisées
  209. si misopoin ;
  210. d0 = 5.d-3 ; d1 = d0 ; d2 = d0 ; d22 = d0 ;
  211. d3 = 20.d-3 ; d4 = d3 ; d5 = d3 ;
  212. sinon ;
  213. * coeff Arnaud
  214. si faux ;
  215. d0 = 0.5d-3 ;
  216. d1 = 0.6d-3 ;
  217. d2 = 1.d-3 ;
  218. d22 = 2.d-3 ;
  219. d3 = 5.d-3 ;
  220. d4 = 8.d-3 ;
  221. d5 = 8.d-3 ;
  222. finsi ;
  223. d0 = 0.5d-3 ;
  224. d1 = 0.6d-3 ;
  225. d2 = 1.d-3 ;
  226. d22 = 5.d-3 ;
  227. d3 = 20.d-3 ; d4 = 20.d-3 ; d5 = 20.d-3 ;
  228. finsi ;
  229.  
  230. * points
  231. dens d0 ; ori = 0. 0. ;
  232. * chanfrein
  233. pchfr0 = 0. 6.d-3 ;
  234. dens d22 ; pchfr1 = 6.3d-3 30.d-3 ;
  235. dens d1 ; pchfr2 = 3.9d-3 5.25d-3 ;
  236. dens d1 ; pchfr3 = 4.1054d-3 6.75d-3 ;
  237. * comparaison FRAMATOME
  238. p_c = pchfr1 ; p_g = 11d-3 0. ; p_f = 11d-3 30.d-3 ;
  239. p_tc1 = 6.5d-3 5d-3 ;
  240.  
  241. * attention contrairement a Arnaud la penetration/deformation
  242. * surface inferieure du chanfrein n'est pas prise en compte
  243. * la passe initiale n'est pas calculee
  244. * le premier depot correspond a H(1) - H(initiale) ou H est la hauteur
  245. * bain -- depot de la premiere passe profondeur 26.1
  246. dens d0 ; p1b1 = 0. 3.9d-3 ;
  247. dens d0 ; p1b2 = 3.4d-3 3.9d-3 ;
  248. dens d0 ; p1b3 = 3.4d-3 0. ;
  249. dens d0 ; p1b4 = 0. 2.d-3 ;
  250.  
  251. * bain -- depot de la seconde passe profondeur 25.7
  252. * notation Arnaud modifiees
  253. dens d1 ; p2b1 = 0. 4.3d-3 ;
  254. dens d1 ; p2b2 = 3.6d-3 4.3d-3 ;
  255. p2b3 = p1b2 ;
  256. p2b4 = p1b1 ;
  257.  
  258. * bain -- depot de la troisieme passe profondeur 24.75
  259. * notation Arnaud modifiees
  260. dens d1 ; p3b1 = 0. 5.25d-3 ;
  261. dens d1 ; p3b2 = pchfr2 ;
  262. p3b3 = p2b2 ;
  263. p3b4 = p2b1 ;
  264.  
  265. * bain -- depot de la quatrieme passe profondeur 23.25
  266. dens d1 ; p4b1 = 0. 6.75d-3 ;
  267. dens d1 ; p4b2 = pchfr3 ;
  268. p4b3 = p3b2 ;
  269. p4b4 = p3b1 ;
  270.  
  271. * reste de la plaque
  272. dens d22 ; ppl1 = 12.d-3 30.d-3 ;
  273. dens d1 ; ppl3b3 = 3.9d-3 0. ;
  274. dens d1 ; ppl2 = 12.d-3 0. ;
  275. dens d2 ; ppl3 = 30.d-3 0. ;
  276. dens d3 ; ppl4 = 30.d-3 30.d-3 ;
  277. dens d4 ; ppl5 = 50.d-3 30.d-3 ;
  278. dens d4 ; ppl6 = 50.d-3 0. ;
  279. dens d5 ; ppl7 = 100.d-3 0. ;
  280. dens d5 ; ppl8 = 100.d-3 30.d-3 ;
  281.  
  282.  
  283.  
  284. * CONTOURS
  285.  
  286. l1b1 = d p1b2 p1b1 ;
  287. l1b2 = d p1b1 p1b4 ; l_l1b2 = l1b2 ;
  288. l1b3 = c p1b4 pchfr0 p1b2 ;
  289. l1b4 = d p1b4 ori ; l_l1b4 = l1b4 ;
  290. l1b5 = d ori p1b3 ;
  291. l1b6 = d p1b3 p1b2 ;
  292.  
  293. l2b1 = d p2b2 p2b1 ;
  294. l2b2 = d p2b1 p2b4 ; l_l2b2 = l2b2 ;
  295. l2b3 = inve l1b1 ;
  296. l2b4 = c p2b3 pchfr0 p2b2 ;
  297.  
  298. l3b1 = d p3b2 p3b1 ;
  299. l3b2 = d p3b1 p3b4 ; l_l3b2 = l3b2 ;
  300. l3b3 = inve l2b1 ;
  301. l3b4 = d p3b3 p3b2 ;
  302. *l3b5 = d p1b3 p3b3 ;
  303. l3b5 = d p1b3 ppl3b3 ;
  304. l3b6 = d ppl3b3 p3b2 ;
  305.  
  306. l4b1 = d p4b2 p4b1 ;
  307. l4b2 = d p4b1 p4b4 ; l_l4b2 = l4b2 ;
  308. l4b3 = inve l3b1 ;
  309. l4b4 = d p4b3 p4b2 ;
  310.  
  311.  
  312. lchfr1 = d pchfr1 pchfr3 d pchfr2 ;
  313. *lchfr2 = c pchfr2 pchfr0 p3b2 ;
  314. lchfr3 = c p3b2 pchfr0 p1b2 ;
  315. lchfr4 = c p2b2 pchfr0 p1b2 ;
  316.  
  317. lpl1 = d ppl3b3 ppl2 ;
  318. lpl2 = d ppl2 ppl1 ;
  319. lpl3 = d ppl1 pchfr1 ;
  320. lpl4 = d ppl2 ppl3 ;
  321. lpl5 = d ppl3 ppl4 ;
  322. lpl6 = d ppl4 ppl1 ;
  323. lpl7 = d ppl6 ppl5 ;
  324. lpl8 = d ppl6 ppl7 ;
  325. lpl9 = d ppl7 ppl8 ;
  326. lpl10 = d ppl8 ppl5 ;
  327. lpl11 = d ppl3 ppl6 ;
  328. lpl12 = d ppl5 ppl4 ;
  329.  
  330. lplbas = lpl8 et lpl11 et lpl4 et lpl1 et l3b5 et l1b5 ;
  331.  
  332. * ligne horizontale
  333. lhoriz = l3b5 et l1b5 et lpl1 et lpl4 et lpl11 et lpl8 ;
  334.  
  335. * SURFACES
  336.  
  337. opti elem qua4 ;
  338.  
  339.  
  340. sdepot1 = surf (l1b1 et l1b2 et l1b3 ) coul jaune ;
  341. sdepot2 = surf (l2b1 et l2b2 et l2b3 et l2b4) coul vert ;
  342. sdepot3 = surf (l3b1 et l3b2 et l3b3 et l3b4) coul rose ;
  343. sdepot4 = surf (l4b1 et l4b2 et l4b3 et l4b4) coul bleu ;
  344. stalon1 = surf (l1b4 et l1b5 et l1b6 et (inve l1b3)) coul bleu ;
  345. sbain1 = sdepot1 et stalon1 ;
  346.  
  347. opti elem tri3 ;
  348. *spl1 = surf (l3b5 et l3b4 et lchfr3 et (inve l1b6)) ;
  349. spl1 = surf (l3b5 et l3b6 et l3b4 et l2b4 et (inve l1b6)) ;
  350. opti elem qua4 ;
  351. *spl3 = surf ( (inve l3b4) et lpl1 et lpl2 et lpl3 et lchfr1 et
  352. * lchfr2 ) ;
  353. spl3 = surf ( l3b6 et lpl1 et lpl2 et lpl3 et lchfr1 ) ;
  354. spl4 = surf (lpl4 et lpl5 et lpl6 et lpl2) ;
  355. spl5 = surf ((inve lpl5) et lpl11 et lpl7 et lpl12) ;
  356. spl6 = surf (lpl8 et lpl9 et lpl10 et (inve lpl7)) ;
  357.  
  358. * evaluation du maillage
  359.  
  360.  
  361. * surface complete
  362. sur0 = spl1 et spl3 et spl4 et spl5 et spl6 coul rouge ;
  363. sur_t = sdepot4 et sdepot3 et sdepot2 et sbain1 et sur0 ;
  364. sur1 = sbain1 et sur0 ;
  365. titr 'Maillage 2D de la plaque + depots ' (nbno sur_t) ' noeuds '
  366. (nbelem sur_t) ' elements' ;
  367. p_tc1 = point sur_t proc p_tc1 ;
  368. p_f = point sur_t proc p_f ; p_g = point sur_t proc p_g ;
  369. *trac (sur_t) ;
  370.  
  371. * surface complete sans le metal depose
  372. sur2 = stalon1 et sur0 ;
  373. *trac sur2 titr 'sur2' ;
  374.  
  375. * surface sans le metal liquide
  376. sur3 = sur0 ;
  377. *trac sur3 titr 'sur3' ;
  378. *
  379. * contours pour la convection
  380.  
  381. ctr1a = contour sur1 coul vert ;
  382. ctr1b = diff ctr1a ( l1b1 et l1b2 et l1b4 et l1b5 et lpl9 ) ;
  383. ctr1d = diff ctr1a (l1b2 et l1b4 et lpl9) ;
  384. *trac ctr1b nclk;
  385. *trac ctr1d nclk;
  386.  
  387. *----------------- VOLUMES ---------------------------------
  388. opti dime 3 elem cub8 ;
  389. t_oeil = table ;
  390. t_oeil . 1 = -1.3322 2.2028 -4.3278 ;
  391. t_oeil . 2 = -4.0225 2.1934 -1.0511 ;
  392. t_oeil . 3 = -.38324 .52515 -2.3239 ;
  393. t_oeil . 4 = -1.6814 1.8311 -1.5466 ;
  394.  
  395. e_z = 0. 0. epais_z ;
  396. *
  397. vsur0 = sur0 volu trans 1 e_z ;
  398. vdepot1 = sdepot1 volu trans 1 e_z ;
  399. vdepot2 = sdepot2 volu trans 1 e_z ;
  400. vdepot3 = sdepot3 volu trans 1 e_z ;
  401. vdepot4 = sdepot4 volu trans 1 e_z ;
  402. vtalon1 = stalon1 volu trans 1 e_z ;
  403. vbain1 = vtalon1 et vdepot1 ;
  404. * volume complet
  405. vsur_t = vdepot4 et vdepot3 et vdepot2 et vbain1 et vsur0 ;
  406. vsur1 = vbain1 et vsur0 ;
  407. titr 'Maillage 3D de la plaque + depots ' (nbno vsur_t) ' noeuds '
  408. (nbelem vsur_t) ' elements' ;
  409. *trac (vsur_t) ;
  410. * volume complet sans le metal depose
  411. vsur2 = vtalon1 et vsur0 ;
  412. *trac vsur2 titr 'vsur2' ;
  413. * volume sans le metal liquide
  414. vsur3 = vsur0 ;
  415. *trac vsur3 titr 'vsur3' ;
  416.  
  417. * surfaces pour la convection et conditions aux limites
  418. opti elem qua4 ;
  419. ctr1a = ctr1a trans 1 e_z ; elim (vsur_t et ctr1a) 1.e-6 ;
  420. ctr1b = ctr1b trans 1 e_z ; elim (vsur_t et ctr1b) 1.e-6 ;
  421. ctr1d = ctr1d trans 1 e_z ; elim (vsur_t et ctr1d) 1.e-6 ;
  422. *
  423. l2b4 = l2b4 trans 1 e_z ; l3b4 = l3b4 trans 1 e_z ;
  424. l4b4 = l4b4 trans 1 e_z ;
  425. *
  426. l1b1 = l1b1 trans 1 e_z ; l2b1 = l2b1 trans 1 e_z ;
  427. l3b1 = l3b1 trans 1 e_z ; l4b1 = l4b1 trans 1 e_z ;
  428. *
  429. l1b4 = l1b4 trans 1 e_z ; l1b2 = l1b2 trans 1 e_z ;
  430. l2b2 = l2b2 trans 1 e_z ; l3b2 = l3b2 trans 1 e_z ;
  431. *
  432. l1b3 = l1b3 trans 1 e_z ; l2b3 = l2b3 trans 1 e_z ;
  433. l3b3 = l3b3 trans 1 e_z ;
  434. l4b3 = l4b3 trans 1 e_z ;
  435. *
  436. l4b2 = l4b2 trans 1 e_z ;
  437. *
  438. su_9 = lpl9 trans 1 e_z ; elim (vsur_t et su_9) 1.e-6 ;
  439. *
  440. lp1b4 = p1b4 d 1 (p1b4 plus e_z) ;
  441. lp2b4 = p2b4 d 1 (p2b4 plus e_z) ;
  442. lp3b4 = p3b4 d 1 (p3b4 plus e_z) ;
  443. lp4b4 = p4b4 d 1 (p4b4 plus e_z) ;
  444. elim (vsur_t et lp1b4 et lp2b4 et lp3b4 et lp4b4) 1.e-6 ;
  445. elim 1.e-6 (vsur1 et l1b1 et l1b2 et l1b3 et l1b4) ;
  446. *------------------------------------------------------------------
  447. * table chanfrein
  448. * maillage total
  449. * global meshing
  450. *------------------------------------------------------------------
  451. chanfrei = table ;
  452. chanfrei . tranches = table ;
  453. chanfrei . tranches . initial = table ;
  454. chanfrei . tranches . initial . mail = vsur2 ;
  455. chanfrei . tranches . initial . modele
  456. chanfrei . tranches . initial . caracteristiques =
  457. at_moma chanfrei . tranches . initial . mail ;
  458. *
  459. chanfrei . maillage = chanfrei . tranches . initial . mail ;
  460. chanfrei . modele = chanfrei . tranches . initial . modele ;
  461. chanfrei . caracteristiques =
  462. chanfrei . tranches . initial . caracteristiques ;
  463. s1b4 = l1b4 ;
  464. *
  465. repeter b_mail n_tra1 ;
  466. ve_tra = &b_mail * e_z ;
  467. ovsur2 ovdep ol1b3 ol1b2 ol1b4 =
  468. vsur2 vdepot1 l1b3 l1b2 l1b4 plus ve_tra ;
  469. *
  470. chanfrei . tranches . &b_mail = table ;
  471. chanfrei . tranches . &b_mail . mail = ovsur2 ;
  472. chanfrei . tranches . &b_mail . modele
  473. chanfrei . tranches . &b_mail . caracteristiques =
  474. at_moma chanfrei . tranches . &b_mail . mail ;
  475. *
  476. chanfrei . maillage = chanfrei . maillage et
  477. chanfrei . tranches . &b_mail . mail ;
  478. chanfrei . modele = chanfrei . modele et
  479. chanfrei . tranches . &b_mail . modele ;
  480. chanfrei . caracteristiques = chanfrei . caracteristiques et
  481. chanfrei . tranches . &b_mail . caracteristiques ;
  482. s1b4 = s1b4 et ol1b4 ;
  483. *
  484. chanfrei . tranches . &b_mail . depots = table ;
  485. chanfrei . tranches . &b_mail . depots . 1 = ovdep ;
  486. chanfrei . tranches . &b_mail . interfaces = table ;
  487. chanfrei . tranches . &b_mail . interfaces . 1 = ol1b3 ;
  488. chanfrei . tranches . &b_mail . surf_bloc_meca = ol1b2 ;
  489. chanfrei . tranches . &b_mail . blocages_mecaniques =
  490. bloq chanfrei . tranches . &b_mail . surf_bloc_meca ux ;
  491. *
  492. si (&b_mail > 1) ;
  493. elim 1.e-5 (chanfrei . tranches . &b_mail . depots . 1
  494. et chanfrei . tranches . (&b_mail-1) . depots . 1) ;
  495. finsi ;
  496. *
  497. fin b_mail ;
  498. *
  499. ovsur2 ol1b4 = vsur2 l1b4 plus ((n_tra1+1)*e_z);
  500. chanfrei . tranches . final = table ;
  501. chanfrei . tranches . final . mail = ovsur2 ;
  502. chanfrei . tranches . final . modele
  503. chanfrei . tranches . final . caracteristiques =
  504. at_moma chanfrei . tranches . final . mail ;
  505. *
  506. chanfrei . maillage = chanfrei . maillage et
  507. chanfrei . tranches . final . mail ;
  508. elim 1.e-5 chanfrei . maillage ;
  509. chanfrei . modele = chanfrei . modele et
  510. chanfrei . tranches . final . modele ;
  511. chanfrei . caracteristiques = chanfrei . caracteristiques et
  512. chanfrei . tranches . final . caracteristiques ;
  513. s1b4 = s1b4 et ol1b4 ; elim 1.e-6 s1b4 ;
  514. chanfrei . surf_bloc_meca = s1b4 ;
  515. chanfrei . blocages_mecaniques = (bloq ori depla )
  516. et (bloq s1b4 ux) et (bloq sur1 uz) ;
  517. *+++++++++++++
  518. titre (et tit_ref ' / maillage initial / noeuds = ')
  519. (nbno chanfrei . maillage) ;
  520. si (neg graph 'N') ;
  521. trac t_oeil . 3 cach chanfrei . maillage ;
  522. finsi ;
  523. *------------------------------------------------------------------
  524. * procedure de depot
  525. * deposit procedure
  526. *------------------------------------------------------------------
  527. debproc depocord tstru*table t_oeil*table t_coef*table ;
  528. *-----------------------------
  529. * realise les depots elementaires
  530. * achieves elementary deposits
  531. * en entree : table tstru
  532. * input : table tstru
  533. * 'MAILLAGE' : maillage courant / instant global mesh
  534. * 'TRANCHES', TABLE des donnees, indicee par
  535. * 'INITIAL', 1...N,'FINAL' de sous indices
  536. * 'DEPOTS', TABLE
  537. * 'INTERFACES', TABLE
  538. * 'SURF_BLOC_MECA', MAILLAGE
  539. * 'INTERFACES', TABLE
  540. * 'BLOCAGES_MECANIQUES', RIGIDITE
  541. *
  542. * 'TEMPERATURES', CHPOINT
  543. * 'DEPLACEMENTS', CHPOINT
  544. * 'CONTRAINTES', MCHAML
  545. * 'DEFORMATIONS_INELASTIQUES', MCHAML
  546. * 'VARIABLES_INTERNES', MCHAML
  547. * 'BLOCAGES_MECANIQUES', RIGIDITE
  548. * 'SURF_BLOC_MECA', MAILLAGE
  549. * 'DEPOT_INI', ENTIER indice du depot initial / initial deposit
  550. * 'DEPOT_FIN', ENTIER indice du depot final / final deposit
  551. * 'ILFOSOVE', LOGIQUE sauvegarde ou non / to save or not
  552. * 'ILFOTRACE', LOGIQUE dessine ou non / to picture or not
  553. * 'DELTA_T', FLOTTANT pas de temps / time step
  554. * en sortie : table tstru
  555. * output : table tstru
  556. * 'SAUVEGARDE', TABLE des sauvegardes, indicee par un entier,
  557. * de sous-indices
  558. * 'TITRE', TEXTE
  559. * 'MAILLAGE', MAILLAGE
  560. * 'TEMPS', LISTREEL chronologie du depot / deposit chronology
  561. * 'MODELE', MMODEL
  562. * 'CARACTERISTIQUES', MCHAML
  563. * 'TEMPERATURES', TABLE
  564. * 'DEPLACEMENTS', TABLE
  565. * 'CONTRAINTES', TABLE
  566. * 'DEFORMATIONS_INELASTIQUES', TABLE
  567. * 'VARIABLES_INTERNES', TABLE
  568. * 'TEMPS', LISTREEL chronologie de tout le calcul / global chronology
  569. *-----------------------
  570. mess ' §§§§ debut depot cordon / deposit start §§§§ ' ;
  571. nd1 = tstru . depot_ini ; nd2 = tstru . depot_fin ;
  572. si (nd2 < nd1) ;
  573. mess ' ordre des depots non-prevu ! / incorrect order for deposits' ;
  574. quitter depocord ;
  575. finsi ;
  576. si (non (existe tstru temps)) ;
  577. tstru . temps = prog ;
  578. finsi ;
  579. *++++++++++
  580. repeter b_depo (nd2 - nd1 + 1) ;
  581. ndk = nd1 + &b_depo - 1 ;
  582. mess ' numero depot : ' ndk ;
  583. * initialise le depot
  584. * initializes deposit
  585. mail_u1 = inte (changer tstru . tranches . ndk . depots . 1 poi1)
  586. (changer tstru . maillage poi1) ;
  587. mail_u = diff (changer tstru . tranches . ndk . depots . 1 poi1)
  588. mail_u1 ;
  589. *mail_u = diff (changer tstru . tranches . ndk . depots . 1 poi1)
  590. * (changer tstru . tranches . ndk . interfaces . 1 poi1) ;
  591. chtedepo = manu chpo 1 mail_u T tempdepo nature diffuse ;
  592. chdedepo = manu chpo 3 mail_u ux 0. uy 0. uz 0. nature diffuse ;
  593. mod_u mat_u = at_moma tstru . tranches . ndk . depots . 1 ;
  594. chsmdepo = zero (extr mod_u cons meca) contrain ;
  595. chdfdepo = zero (extr mod_u cons meca) definela ;
  596. chvidepo = zero (extr mod_u cons meca) varinter ;
  597. *+++++++++++
  598. * chargement
  599. * loadings
  600. blte1 = bloq T mail_u ;
  601. imblte1 = depi blte1 tempdepo ;
  602. si ((dime tstru . temps) ega 0) ;
  603. t_ini = 0. ;
  604. sinon ;
  605. t_ini = extr tstru . temps (dime tstru . temps) ;
  606. finsi ;
  607. lt_dep = prog t_ini pas tstru . delta_t (t_ini+2.) ;
  608. lt_o = prog (dime lt_dep)*1. ;
  609. ev_dep = evol manu lt_dep lt_o ;
  610. cha_dep = char timp ev_dep imblte1 ;
  611. *
  612. sur_conv = enve (tstru . maillage et
  613. tstru . tranches . ndk . depots . 1) ;
  614. sur_conv = diff sur_conv (tstru . surf_bloc_meca et
  615. tstru . tranches . ndk . surf_bloc_meca) ;
  616. mod_conv = mode sur_conv thermique convection cons ther ;
  617. mat_conv = mate mod_conv h he1 ;
  618. cht_conv = manu chpo sur_conv 1 T 20. ;
  619. ev_conv = evol manu 't (s)' lt_dep 'Te (oC)' lt_o ;
  620. cha_conv = char teco ev_conv cht_conv ;
  621. *+++++++++++
  622. * prepare la table pour pasapas
  623. * PASAPAS table
  624. tdep = table ; tdep.'PROCESSEURS' = MOT 'AUTOMATIQUE';
  625. tdep . modele = tstru . modele et mod_u et mod_conv ;
  626. tdep . caracteristiques = tstru . caracteristiques et mat_u
  627. et mat_conv ;
  628. tdep . blocages_thermiques = blte1 ;
  629. tdep . blocages_mecaniques = tstru . blocages_mecaniques et
  630. tstru . tranches . ndk . blocages_mecaniques ;
  631. tdep . chargement = cha_dep et cha_conv ;
  632. tdep . temps_calcules = lt_dep ;
  633. tdep . procedure_thermique = DUPONT ;
  634. tdep . temps = table ;
  635. tdep . temps . 0 = extr lt_dep 1 ;
  636. tdep . temperatures = table ;
  637. tdep . temperatures . 0 = tstru . temperatures et chtedepo ;
  638. tdep . deplacements = table ;
  639. tdep . deplacements . 0 = tstru . deplacements + chdedepo ;
  640. tdep . contraintes = table ;
  641. tdep . contraintes . 0 = tstru . contraintes et chsmdepo ;
  642. tdep . deformations_inelastiques = table ;
  643. tdep . deformations_inelastiques . 0 = chdfdepo
  644. et tstru . deformations_inelastiques ;
  645. tdep . variables_internes = table ;
  646. tdep . variables_internes . 0 = chvidepo
  647. et tstru . variables_internes ;
  648. TMASAU=table;
  649. tdep . 'MES_SAUVEGARDES'=TMASAU;
  650. TMASAU .'DEFTO'=VRAI;
  651. TMASAU .'DEFIN'=VRAI;
  652. *+++++++++++
  653. * execute
  654. * run
  655. pasapas tdep ;
  656. *list (maxi tdep . temperatures . 2 sans (mots lx)) ;
  657. *list (mini tdep . temperatures . 2 sans (mots lx)) ;
  658. *mailtra = extr tdep . modele mail ;
  659. *trac t_oeil . 2 cach (redu tdep . temperatures . 1 mailtra) mailtra ;
  660. *+++++++++++
  661. * actualise tstru
  662. * update tstru
  663. tstru . temps = tstru . temps et lt_dep ;
  664. lt1 = dime tdep . temps ;
  665. lt1 = lt1 - 1 ;
  666. tstru . modele = tstru . modele et mod_u ;
  667. tstru . caracteristiques = tstru . caracteristiques et mat_u;
  668. tstru . maillage = tstru . maillage et
  669. tstru . tranches . ndk . depots . 1 ;
  670. tstru . surf_bloc_meca = tstru . surf_bloc_meca et
  671. tstru . tranches . ndk . surf_bloc_meca ;
  672. tstru . blocages_mecaniques = tdep . blocages_mecaniques ;
  673. tstru . temperatures = tdep . temperatures . lt1 ;
  674. si vrai ;
  675. tstru . deplacements = copie tdep . deplacements . lt1 ;
  676. tstru . contraintes = copie tdep . contraintes . lt1 ;
  677. tstru . deformations_inelastiques =
  678. copie tdep . deformations_inelastiques . lt1 ;
  679. tstru . variables_internes = copie tdep . variables_internes . lt1 ;
  680. finsi ;
  681. *
  682. si tstru . ilfosove ;
  683. si (non (existe tstru sauvegarde)) ;
  684. tstru . sauvegarde = table ;
  685. finsi ;
  686. tsauv = tstru . sauvegarde ;
  687. nds = (dime tsauv) + 1 ;
  688. tsauv . nds = table ;
  689. tsauv . nds . titre = texte 'depot tranche ' ndk ;
  690. tsauv . nds . maillage = tstru . maillage ;
  691. tsauv . nds . temps = tdep . temps ;
  692. tsauv . nds . modele = tdep . modele ;
  693. tsauv . nds . temperatures = tdep . temperatures ;
  694. tsauv . nds . deplacements = tdep . deplacements ;
  695. tsauv . nds . contraintes = tdep . contraintes ;
  696. tsauv . nds . variables_internes = tdep . variables_internes ;
  697. tsauv . nds . deformations_inelastiques =
  698. tdep . deformations_inelastiques ;
  699. finsi ;
  700. *++++++
  701. * dessine
  702. * picture
  703. si (tstru . ilfotrace) ;
  704. bodes1 tstru t_oeil t_coef ;
  705. finsi ;
  706. *
  707. fin b_depo ;
  708. *
  709. mess ' §§§§ fin depot cordon / deposit end §§§§ ' ;
  710. finproc ;
  711. *------------------------------------------------------------------
  712. * procedure de refroidissement
  713. * cooling down procedure
  714. *------------------------------------------------------------------
  715. debproc refroidi tstru*table t_oeil*table t_coef*table ;
  716. *-----------------------------
  717. * refroidissement de la structure
  718. * final structure cooling down
  719. * en entree : table tstru
  720. * input : table tstru
  721. * 'MAILLAGE' : maillage courant / istant global mesh
  722. * 'TEMPERATURES', CHPOINT
  723. * 'DEPLACEMENTS', CHPOINT
  724. * 'CONTRAINTES', MCHAML
  725. * 'DEFORMATIONS_INELASTIQUES', MCHAML
  726. * 'VARIABLES_INTERNES', MCHAML
  727. * 'BLOCAGES_MECANIQUES', RIGIDITE
  728. * 'ILFOSOVE', LOGIQUE sauvegarde ou non / to save or not
  729. * 'ILFOTRACE', LOGIQUE dessine ou non / to picture or not
  730. * 'TEMPS_CALCULES', LISTREEL temps de refroidisssement/ cooling time
  731. * 'TEMPS_SAUVES', LISTREEL idem, facultatif / optional
  732. * en sortie : table tstru
  733. * output : table tstru
  734. * 'SAUVEGARDE', TABLE des sauvegardes, indicee par des entiers,
  735. * de sous-indices
  736. * 'TITRE', TEXTE
  737. * 'MAILLAGE', MAILLAGE
  738. * 'TEMPS', LISTREEL chronologie du refroidissement
  739. * 'MODELE', MMODEL
  740. * 'CARACTERISTIQUES', MCHAML
  741. * 'TEMPERATURES', TABLE
  742. * 'DEPLACEMENTS', TABLE
  743. * 'CONTRAINTES', TABLE
  744. * 'DEFORMATIONS_INELASTIQUES', TABLE
  745. * 'VARIABLES_INTERNES', TABLE
  746. * 'TEMPS', LISTREEL chronologie du calcul
  747. *-----------------------
  748. mess ' §§§§ debut refroidissement / cooling beginning §§§§ ' ;
  749. si (non (existe tstru temps)) ;
  750. tstru . temps = prog ;
  751. finsi ;
  752. *++++++++++
  753. * chargement
  754. si ((dime tstru . temps) ega 0) ;
  755. t_ini = 0. ;
  756. sinon ;
  757. t_ini = extr tstru . temps (dime tstru . temps) ;
  758. finsi ;
  759. lt_dep = (prog (dime tstru . temps_calcules)*t_ini)
  760. + tstru . temps_calcules ;
  761. si (existe tstru temps_sauves) ;
  762. lt_sauv = (prog (dime tstru . temps_sauves)*t_ini)
  763. + tstru . temps_sauves ;
  764. finsi ;
  765. lt_o = prog (dime tstru . temps_calcules)*1. ;
  766. ev_dep = evol manu lt_dep lt_o ;
  767. *
  768. sur_conv = enve tstru . maillage ;
  769. mod_conv = mode sur_conv thermique convection cons ther ;
  770. mat_conv = mate mod_conv h he1 ;
  771. cht_conv = manu chpo sur_conv 1 T 20. ;
  772. ev_conv = evol manu 't (s)' lt_dep 'Te (oC)' lt_o ;
  773. cha_conv = char teco ev_conv cht_conv ;
  774. *+++++++++++
  775. * prepare la table pour pasapas
  776. tref = table ;
  777. tref . modele = tstru . modele et mod_conv ;
  778. tref . caracteristiques = tstru . caracteristiques et mat_conv ;
  779. tref . blocages_mecaniques = tstru . blocages_mecaniques ;
  780. tref . chargement = cha_conv ;
  781. tref . temps_calcules = lt_dep ;
  782. si (existe tstru temps_sauves) ;
  783. tref . temps_sauves = lt_sauv ;
  784. finsi ;
  785. tref.'MONO'=monop;
  786. tref . procedure_thermique = DUPONT ;
  787. tref . temps = table ;
  788. tref . temps . 0 = extr lt_dep 1 ;
  789. tref . temperatures = table ;
  790. tref . temperatures . 0 = tstru . temperatures ;
  791. tref . deplacements = table ;
  792. tref . deplacements . 0 = tstru . deplacements ;
  793. tref . contraintes = table ;
  794. tref . contraintes . 0 = tstru . contraintes ;
  795. tref . deformations_inelastiques = table ;
  796. tref . deformations_inelastiques . 0 =
  797. tstru . deformations_inelastiques ;
  798. tref . variables_internes = table ;
  799. tref . variables_internes . 0 =
  800. tstru . variables_internes ;
  801. TMASAU=table;
  802. tref . 'MES_SAUVEGARDES'=TMASAU;
  803. TMASAU .'DEFTO'=VRAI;
  804. TMASAU .'DEFIN'=VRAI;
  805. *+++++++++++
  806. * execute
  807. pasapas tref ;
  808. *+++++++++++
  809. * actualise tstru
  810. tstru . temps = tstru . temps et lt_dep ;
  811. lt1 = dime tref . deplacements ;
  812. lt1 = lt1 - 1 ;
  813. tstru . deplacements = tref . deplacements . lt1 ;
  814. tstru . temperatures = tref . temperatures . lt1 ;
  815. tstru . contraintes = tref . contraintes . lt1 ;
  816. tstru . deformations_inelastiques =
  817. tref . deformations_inelastiques . lt1 ;
  818. tstru . variables_internes = tref . variables_internes . lt1 ;
  819. si tstru . ilfosove ;
  820. si (non (existe tstru sauvegarde)) ;
  821. tstru . sauvegarde = table ;
  822. finsi ;
  823. tsauv = tstru . sauvegarde ;
  824. nds = (dime tsauv) + 1 ;
  825. tsauv . nds = table ;
  826. tsauv . nds . titre = refroidissement ;
  827. tsauv . nds . maillage = tstru . maillage ;
  828. tsauv . nds . temps = tref . temps ;
  829. tsauv . nds . modele = tref . modele ;
  830. tsauv . nds . temperatures = tref . temperatures ;
  831. tsauv . nds . deplacements = tref . deplacements ;
  832. tsauv . nds . contraintes = tref . contraintes ;
  833. tsauv . nds . variables_internes = tref . variables_internes ;
  834. tsauv . nds . deformations_inelastiques =
  835. tref . deformations_inelastiques ;
  836. finsi ;
  837. *
  838. *++++++
  839. * dessine
  840. si (tstru . ilfotrace) ;
  841. bodes1 tstru t_oeil t_coef ;
  842. finsi ;
  843. *
  844. mess ' §§§§ fin refroidissement / cooling end §§§§ ' ;
  845. finproc ;
  846. *------------------------------------------------------------------
  847. * procedure de traces
  848. *------------------------------------------------------------------
  849. debproc bodes1 tstru*table t_oeil*table t_coef*table ;
  850. *--------------------------------------------
  851. * traces isovaleurs
  852. *------------------
  853. n_oeil = dime t_oeil ;
  854. mailtra1 = enve tstru . maillage ;
  855. * temperature
  856. l_temp = prog 100. 200. 300. 400. 500. 600. 700. 800. 900. 1000.
  857. 1100. 1200. 1300. 1400. ;
  858. dep1 = redu tstru . deplacements mailtra1 ;
  859. defte1 = defo dep1 mailtra1 t_coef . defo1 vert
  860. (redu tstru . temperatures mailtra1) ;
  861. tstru . deformee_thermique = tstru . deformee_thermique et defte1 ;
  862. titre (et tit_ref ' / temperature ') ;
  863. si (neg graph 'N') ;
  864. trac t_oeil . 3 cach defte1 ;
  865. finsi ;
  866. * vmises
  867. l_vm = prog 25. 50. 75. 100. 125. 150. 175. 200. 250. 300. 350. 400.
  868. 450. 500. ;
  869. momec1 = (extr tstru . modele cons meca) ;
  870. vm1 = vmis momec1 tstru . contraintes / 1.e6 ;
  871. chpvm1 = redu (changer vm1 momec1 chpo) mailtra1 ;
  872. defvm1 = defo dep1 mailtra1 t_coef . defo1 chpvm1 ;
  873. tstru . deformee_mecanique = tstru . deformee_mecanique et defvm1 ;
  874. titre (et tit_ref ' / von mises (MPa) ') ;
  875. si (neg graph 'N') ;
  876. trac t_oeil . 3 cach defvm1 ;
  877. finsi ;
  878. *
  879. finproc ;
  880. *------------------------------------------------------------------
  881. *------------------------------------------------------------------
  882. * execution
  883. * run
  884. *------------------------------------------------------------------
  885. chanfrei . temperatures = manu chpo 1 chanfrei . maillage T 20.
  886. nature diffuse ;
  887. chanfrei . deplacements = manu chpo 3 chanfrei . maillage
  888. ux 0. uy 0. uz 0. nature diffuse;
  889. chanfrei . contraintes = zero
  890. (extr chanfrei . modele cons meca) contrain ;
  891. chanfrei . deformations_inelastiques = zero
  892. (extr chanfrei . modele cons meca) definela ;
  893. chanfrei . variables_internes =
  894. zero (extr chanfrei . modele cons meca) varinter ;
  895. chanfrei . depot_ini = 1 ;
  896. si misopoin ;
  897. chanfrei . depot_fin = 1 ;
  898. sinon ;
  899. chanfrei . depot_fin = n_tra1 ;
  900. finsi ;
  901. chanfrei . ilfosove = faux ;
  902. chanfrei . ilfotrace = vrai ;
  903. si misopoin ;
  904. chanfrei . delta_t = 2. ;
  905. sinon ;
  906. chanfrei . delta_t = 1. ;
  907. finsi ;
  908. *
  909. mailtra1 = enve chanfrei . maillage ;
  910. * temperature
  911. dep1 = redu chanfrei . deplacements mailtra1 ;
  912. defte1 = defo dep1 mailtra1 t_coef . defo1 vert
  913. (redu chanfrei . temperatures mailtra1) ;
  914. chanfrei . deformee_thermique = defo dep1 mailtra1 t_coef . defo1 vert
  915. (redu chanfrei . temperatures mailtra1) ;
  916. *
  917. momec1 = (extr chanfrei . modele cons meca) ;
  918. vm1 = vmis momec1 chanfrei . contraintes / 1.e6 ;
  919. chpvm1 = redu (changer vm1 momec1 chpo) mailtra1 ;
  920. chanfrei . deformee_mecanique = defo dep1 mailtra1
  921. t_coef . defo1 chpvm1 ;
  922. *
  923. depocord chanfrei t_oeil t_coef ;
  924. *++++++++++++++++++
  925. si faux ;
  926. chanfrei . depot_ini = 2 ;
  927. chanfrei . depot_fin = 2 ;
  928. depocord chanfrei t_oeil t_coef ;
  929. finsi ;
  930. *++++++++++++++++++
  931. si misopoin ;
  932. * chanfrei . temps_calcules = prog 0. pas 1. 10.;
  933. * refroidi chanfrei t_oeil t_coef ;
  934. sinon ;
  935. chanfrei . temps_calcules = prog 0. pas 1. 120. ;
  936. refroidi chanfrei t_oeil t_coef ;
  937. finsi ;
  938. *++++++++++++++++++
  939. *bodes1 chanfrei t_oeil t_coef ;
  940. *
  941. *sauv chanfrei t_oeil l_vm l_temp ;
  942. *
  943. si (neg graph 'N') ;
  944. trac chanfrei . deformee_thermique cach t_oeil . 3 anim ;
  945. trac chanfrei . deformee_mecanique cach t_oeil . 3 anim ;
  946. finsi ;
  947. *------------------------------------------------------------------
  948. test1 = extr (chanfrei . temperatures) t ppl3 ;
  949. si ((abs(test1 - 20.)) > 10.) ;
  950. erre 5 ;
  951. sinon ;
  952. erre 0 ;
  953. finsi ;
  954.  
  955. fin ;
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  

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