Télécharger isotro_cis.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : isotro_cis.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. **************************************************
  5. * *
  6. * TEST DE VALIDATION D'UNE LOI DE COMPORTEMENT *
  7. * -------------------------------------------- *
  8. * DE MATERIAU *
  9. * ----------- *
  10. * *
  11. * LOI DE COMPORTEMENT ELASTO-PLASTIQUE *
  12. * ISOTROPE *
  13. * *
  14. * COMPARAISON DE CALCULS SUR DES ELEMENTS: *
  15. * - COQUE EPAISSE ( MFR=5 ) *
  16. * - COQUE MINCE ( MFR=3 ) *
  17. * - MASSIF 3D ( MFR=1 ) *
  18. * *
  19. * STRUCTURE : UNE PLAQUE CARREE *
  20. * - COTE : .1 M *
  21. * - EPAISSEUR : 5.E-4 M *
  22. * *
  23. * CHARGEMENT : DEPLACEMENTS IMPOSES *
  24. * CISAILLEMENT PUR *
  25. * *
  26. **************************************************
  27. graph = 'N' ;
  28.  
  29. opti debu 1 ;
  30.  
  31. opti echo 1 dime 3 elem cub8 ;
  32. * ajout de option epsilon lineaire pour la precision des test!
  33. OPTION epsilon lineaire;
  34. *
  35. *
  36. * Maillage
  37. *
  38. rayon0 = .05 ;
  39. epais0 = .0005 ;
  40. l1 = epais0 + rayon0 ;
  41. l2 = .1 ;
  42. n1 = 1 ;
  43. n2 = 1 ;
  44. p1 = rayon0 0. 0. ;
  45. p2 = l1 0. 0. ;
  46. p3 = l1 l2 0. ;
  47. p4 = rayon0 l2 0. ;
  48. p11 = rayon0 0. l2 ;
  49. p21 = l1 0. l2 ;
  50. p31 = l1 l2 l2 ;
  51. p41 = rayon0 l2 l2 ;
  52. d1 = d p1 n1 p2 ;
  53. d2 = d p2 n2 p3 ;
  54. d3 = d p3 n1 p4 ;
  55. d4 = d p4 n2 p1 ;
  56. d11 = d p11 n1 p21 ;
  57. d21 = d p21 n2 p31 ;
  58. d31 = d p31 n1 p41 ;
  59. d41 = d p41 n2 p11 ;
  60. *p01 = ( rayon0 + ( epais0 / 2. ) ) 0. l2 ;
  61. *p02 = ( rayon0 + ( epais0 / 2. ) ) l2 l2 ;
  62. sur1 = 'DALL' d1 d2 d3 d4 ;
  63. sur2 = 'DALL' d11 d21 d31 d41 ;
  64. vol1 = sur1 'VOLU' n2 sur2 ;
  65. *titr ' maillage ' ;
  66. *trace vol1 ;
  67. *
  68. * Deplacement maximal
  69. *
  70. depmax = .01 ;
  71. *
  72. * Courbe d'ecrouissage
  73. *
  74. beta0 = 1250. ;
  75. sig0 = 410.E6 ;
  76. xm = .5 ;
  77. youn0 = 7.34E10 ;
  78. epsp0 = 'PROG' 0. ;
  79. deb0 = 'PROG' 0. ;
  80. epsmax0 = depmax / l2 ;
  81. pas0 = epsmax0 / 50 ;
  82. epsp1 = 'PROG' 0. 'PAS' pas0 epsmax0 ;
  83. dim00 = 'DIME' epsp1 ;
  84. un = 'PROG' dim00 '*' 1. ;
  85. Y0 = sig0 ;
  86. epsp2 = beta0 * epsp1 ;
  87. epsp3 = epsp2 + un ;
  88. epsp31 = log epsp3 ;
  89. epsp32 = epsp31 * xm ;
  90. epsp4 = exp epsp32 ;
  91. Y1 = Y0 * epsp4 ;
  92. *
  93. epsp1 = epsp0 'ET' epsp1 ;
  94. Y1 = deb0 'ET' Y1 ;
  95. epsp2 = epsp1 + ( Y1 / youn0 ) ;
  96. trac00 = 'EVOL' 'MANU' 'defo' epsp1 'sigm' Y1 ;
  97. *
  98. * Modele de calcul
  99. *
  100. trac0 = 'EVOL' 'MANU' 'defo' epsp2 'sigm' Y1 ;
  101. y1 = y1 enle 1 ;
  102. epsp2 = (epsp2 enle 1) - (y1 / youn0) ;
  103. ecro0 = evol vert manu ep epsp2 sig y1 ;
  104. si (neg graph 'N') ;
  105. 'DESS' (trac0 et ecro0) titr ' Courbes de traction et d ecrouissage (vert)' ;
  106. fins ;
  107.  
  108. mod0 = 'MODE' vol1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
  109. 'PLASTIQUE' 'ISOTROPE' ;
  110. mat0 = 'MATE' mod0 'YOUN' youn0 'NU' 0.33
  111. 'ECRO' ecro0 ;
  112. *
  113. * Conditions aux limites
  114. *
  115. cl1 = 'BLOQ' sur1 'UX' 'RY' ;
  116. cl2 = 'BLOQ' sur2 'UX' 'RY' ;
  117. cl3 = 'BLOQ' vol1 'UY' 'UZ' ;
  118. cl0 = cl1 'ET' cl2 'ET' cl3 ;
  119. *
  120. * Chargement
  121. *
  122. chp1 = 'COOR' 3 vol1 ;
  123. chp1 = chp1 * depmax / l2 ;
  124. chp1 = 'NOMC' chp1 'UY' ;
  125. chp2 = 'MANU' 'CHPO' vol1 1 'UZ' 0. ;
  126. *trace chp1 vol1 ;
  127. chp0 = chp1 + chp2 ;
  128. dep1 = 'DEPI' cl3 chp0 ;
  129. ev0 = 'EVOL' 'MANU' temps ( 'PROG' 0. 1000. ) y ( 'PROG' 0. 1. ) ;
  130. cha0 = 'CHAR' 'DIMP' dep1 ev0 ;
  131. *vec1 = 'VECT' dep1 1.E-5 'FX' 'FY' 'FZ' 'ROUG' ;
  132. *titr ' chargement ' ;
  133. *trace vec1 vol1 ;
  134. *
  135. * Temps du calcul
  136. *
  137. dt0 = 50. ;
  138. tfin0 = 1000. ;
  139. *
  140. *
  141. * Resolution par PASAPAS
  142. *---------------------------------------
  143. *
  144. ta1 = 'TABLE' ;
  145. ta1 .'MODELE' = mod0 ;
  146. ta1 .'CARACTERISTIQUES' = mat0 ;
  147. ta1 .'BLOCAGES_MECANIQUES' = cl0 ;
  148. ta1 .'CHARGEMENT' = cha0 ;
  149. *ta1 .'TEMPS_CALCULES' = ( ( 'PROG' 0. 'PAS' dt0 80. ) 'ET'
  150. *( 'PROG' 85. 'PAS' 5. 90. ) 'ET'
  151. *( 'PROG' 92.5 'PAS' 2.5 tfin0 ) ) ;
  152. ta1 .'TEMPS_CALCULES' = 'PROG' 0. 'PAS' dt0 tfin0 ;
  153. *
  154. TMASAU=table;
  155. ta1 . 'MES_SAUVEGARDES'=TMASAU;
  156. TMASAU .'DEFTO'=VRAI;
  157. TMASAU .'DEFIN'=VRAI;
  158. PASAPAS ta1 ;
  159. *
  160. *
  161. * Post-traitement
  162. *-----------------------------------------
  163. *
  164. dim0 = 'DIME' ( ta1 .'TEMPS' ) ;
  165. char2 = 'PROG' 0. ;
  166. depl2 = 'PROG' 0. ;
  167. defi2 = 'PROG' 0. ;
  168. cont1 = 'PROG' 0. ;
  169. *
  170. reac0 = ta1 .'REACTIONS'.( dim0 - 1 ) ;
  171. depl0 = ta1 .'DEPLACEMENTS'.( dim0 - 1 ) ;
  172. vec2 = 'VECT' reac0 1.E-2 'FX' 'FY' 'FZ' 'ROUG' ;
  173. *titr ' reactions ' ;
  174. *trace vec2 vol1 ;
  175. defo0 = 'DEFO' vol1 depl0 0. 'ROUG' ;
  176. defo1 = 'DEFO' vol1 depl0 1. ;
  177. *titr ' deformees ' ;
  178. *trace ( defo0 'ET' defo1 ) ;
  179. *
  180. 'REPETER' bloc0 ( dim0 - 1 ) ;
  181. i0 = &bloc0 ;
  182. reac0 = ta1 .'REACTIONS'.i0 ;
  183. depl0 = ta1 .'DEPLACEMENTS'.i0 ;
  184. sigm0 = ta1 .'CONTRAINTES'.i0 ;
  185. def0 = ta1 .'DEFORMATIONS_INELASTIQUES'.i0 ;
  186. eps0 = 'EPSI' mod0 depl0 ;
  187. temp0 = ta1 .'TEMPS'.i0 ;
  188. reac0 = 'REDU' reac0 sur2 ;
  189. reac0 = 'EXCO' reac0 'FY' 'SCAL' ;
  190. chp1 = 'MANU' 'CHPO' sur2 1 'SCAL' 1. ;
  191. reac1 = 'XTY' reac0 chp1 ( 'MOTS' 'SCAL' ) ( 'MOTS' 'SCAL' ) ;
  192. depl1 = 'EXTR' depl0 'UY' p21 ;
  193. depl2 = depl2 'ET' ( 'PROG' reac1 ) ;
  194. char2 = char2 'ET' ( 'PROG' depl1 ) ;
  195. 'FIN' bloc0 ;
  196. *
  197. *
  198. opti echo 1 dime 3 elem tri3 ;
  199. *
  200. *
  201. * Maillage
  202. *
  203. epais0 = .0005 ;
  204. rayon0 = .05 ;
  205. l10 = .1 ;
  206. n10 = 1 ;
  207. p10 = rayon0 0. 0. ;
  208. p20 = rayon0 l10 0. ;
  209. p11 = rayon0 0. l10 ;
  210. p12 = rayon0 l10 l10 ;
  211. li1 = d p10 n10 p20 ;
  212. li2 = d p20 n10 p12 ;
  213. li3 = d p12 n10 p11 ;
  214. li4 = d p11 n10 p10 ;
  215. mail1 = 'SURF' ( li1 'ET' li2 'ET' li3 'ET' li4 ) 'PLAN' ;
  216. *titr 'maillage' ;
  217. *trace mail1 ;
  218. *
  219. depmax = .01 ;
  220. *
  221. * Courbe d'ecrouissage
  222. *
  223. beta0 = 1250. ;
  224. sig0 = 410.E6 ;
  225. xm = .5 ;
  226. youn0 = 7.34E10 ;
  227. epsp0 = 'PROG' 0. ;
  228. deb0 = 'PROG' 0. ;
  229. epsmax0 = depmax / l10 ;
  230. pas0 = epsmax0 / 50 ;
  231. epsp1 = 'PROG' 0. 'PAS' pas0 epsmax0 ;
  232. dim00 = 'DIME' epsp1 ;
  233. un = 'PROG' dim00 '*' 1. ;
  234. Y0 = sig0 ;
  235. epsp2 = beta0 * epsp1 ;
  236. epsp3 = epsp2 + un ;
  237. epsp31 = log epsp3 ;
  238. epsp32 = epsp31 * xm ;
  239. epsp4 = exp epsp32 ;
  240. Y1 = Y0 * epsp4 ;
  241. *
  242. epsp1 = epsp0 'ET' epsp1 ;
  243. Y1 = deb0 'ET' Y1 ;
  244. epsp2 = epsp1 + ( Y1 / youn0 ) ;
  245. trac00 = 'EVOL' 'MANU' 'defo' epsp1 'sigm' Y1 ;
  246. *
  247. * Modele de calcul
  248. *
  249. trac0 = 'EVOL' 'MANU' 'defo' epsp2 'sigm' Y1 ;
  250. *'DESS' trac0 ;
  251. mod00 = 'MODE' mail1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
  252. 'PLASTIQUE' 'ISOTROPE' 'COQ3' ;
  253. mat00 = 'MATE' mod00 'YOUN' youn0 'NU' 0.33
  254. 'ECRO' ecro0 ;
  255. car00 = 'CARA' mod00 'EPAI' epais0 ;
  256. *
  257. * Conditions aux limites
  258. *
  259. cl10 = 'BLOQ' li1 'UX' 'RY' ;
  260. cl20 = 'BLOQ' li3 'UX' 'RY' ;
  261. cl30 = 'BLOQ' mail1 'UY' 'UZ' ;
  262. cl00 = cl10 'ET' cl20 'ET' cl30 ;
  263. *
  264. * Chargement
  265. *
  266. chp1 = 'COOR' 3 mail1 ;
  267. chp1 = chp1 * depmax / l10 ;
  268. chp1 = 'NOMC' chp1 'UY' ;
  269. *trace chp1 mail1 ;
  270. chp2 = 'MANU' 'CHPO' mail1 1 'UZ' 0. ;
  271. chp0 = chp1 + chp2 ;
  272. dep10 = 'DEPI' cl30 chp0 ;
  273. ev00 = 'EVOL' 'MANU' temps ( 'PROG' 0. 1000. ) y ( 'PROG' 0. 1. ) ;
  274. cha00 = 'CHAR' 'DIMP' dep10 ev00 ;
  275. *vec1 = 'VECT' dep10 1.E-5 'FX' 'FY' 'FZ' 'ROUG' ;
  276. *titr ' chargement ' ;
  277. *trace vec1 mail1 ;
  278. *
  279. * Temps du calcul
  280. *
  281. dt00 = 50. ;
  282. tfin00 = 1000. ;
  283. *
  284. *
  285. * Resolution par PASAPAS
  286. *---------------------------------------
  287. *
  288. ta10 = 'TABLE' ;
  289. ta10 .'MODELE' = mod00 ;
  290. ta10 .'CARACTERISTIQUES' = mat00 'ET' car00 ;
  291. ta10 .'BLOCAGES_MECANIQUES' = cl00 ;
  292. ta10 .'CHARGEMENT' = cha00 ;
  293. *ta10 .'TEMPS_CALCULES' = ( ( 'PROG' 0. 'PAS' dt00 80. ) 'ET'
  294. *( 'PROG' 85. 'PAS' 5. 90. ) 'ET'
  295. *( 'PROG' 92.5 'PAS' 2.5 tfin00 ) ) ;
  296. ta10 .'TEMPS_CALCULES' = 'PROG' 0. 'PAS' dt00 tfin00 ;
  297. *ta10 .'TEMPS_CALCULES' = ( ( 'PROG' 0. 'PAS' 20. 60. ) 'ET'
  298. *( 'PROG' 62. 'PAS' 2. 70. ) 'ET'
  299. *( 'PROG' 71. 'PAS' dt00 79. ) 'ET'
  300. *( 'PROG' 79.5 'PAS' .5 tfin00 ) ) ;
  301. *
  302. TMASAU=table;
  303. ta10 . 'MES_SAUVEGARDES'=TMASAU;
  304. TMASAU .'DEFTO'=VRAI;
  305. TMASAU .'DEFIN'=VRAI;
  306. PASAPAS ta10 ;
  307. *
  308. *
  309. * Post-traitement
  310. *-----------------------------------------
  311. *
  312. dim10 = 'DIME' ta10 .'TEMPS' ;
  313. depl12 = 'PROG' 0. ;
  314. *
  315. reac0 = ta10 .'REACTIONS'.( dim10 - 1 ) ;
  316. depl0 = ta10 .'DEPLACEMENTS'.( dim10 - 1 ) ;
  317. vec2 = 'VECT' reac0 1.E-2 'FX' 'FY' 'FZ' 'ROUG' ;
  318. *titr ' reactions ' ;
  319. *trace vec2 mail1 ;
  320. defo0 = 'DEFO' mail1 depl0 0. ;
  321. defo1 = 'DEFO' mail1 depl0 1. 'ROUG' ;
  322. *titr ' deformees ' ;
  323. *trace ( defo0 'ET' defo1 ) ;
  324. *
  325. 'REPETER' bloc0 ( dim10 - 1 ) ;
  326. i10 = &bloc0 ;
  327. reac0 = ta10 .'REACTIONS'.i10 ;
  328. depl10 = ta10 .'DEPLACEMENTS'.i10 ;
  329. temp10 = ta10 .'TEMPS'.i10 ;
  330. * depl11 = 'EXTR' depl10 'UY' p11 ;
  331. reac1 = 'REDU' reac0 li3 ;
  332. * list reac1 ;
  333. eps0 = 'EPSI' depl10 mod00 car00 ;
  334. sigm0 = ta10 .'CONTRAINTES'.i10 ;
  335. def0 = ta10 .'DEFORMATIONS_INELASTIQUES'.i10 ;
  336. eps0 = 'RTENS' eps0 mod00 ( 0 1 0 ) ;
  337. sigm0 = 'RTENS' sigm0 mod00 ( 0 1 0 ) ;
  338. def0 = 'RTENS' def0 mod00 ( 0 1 0 ) ;
  339. reac1 = 'EXCO' reac1 'FY' 'SCAL' ;
  340. chp1 = 'MANU' 'CHPO' li3 1 'SCAL' 1 ;
  341. depl11 = 'XTY' reac1 chp1 ( 'MOTS' 'SCAL' ) ( 'MOTS' 'SCAL' ) ;
  342. depl12 = depl12 'ET' ( 'PROG' depl11 ) ;
  343. 'FIN' bloc0 ;
  344. *
  345. *
  346. opti echo 1 dime 3 elem qua8 ;
  347. *
  348. *
  349. * Maillage
  350. *
  351. epais0 = .0005 ;
  352. rayon0 = .05 ;
  353. l10 = .1 ;
  354. n10 = 1 ;
  355. p10 = rayon0 0. 0. ;
  356. p20 = rayon0 l10 0. ;
  357. p11 = rayon0 0. l10 ;
  358. p12 = rayon0 l10 l10 ;
  359. li1 = d p10 n10 p20 ;
  360. li2 = d p20 n10 p12 ;
  361. li3 = d p12 n10 p11 ;
  362. li4 = d p11 n10 p10 ;
  363. mail1 = 'SURF' ( li1 'ET' li2 'ET' li3 'ET' li4 ) 'PLAN' ;
  364. *titr 'maillage' ;
  365. *trace mail1 ;
  366. *
  367. depmax = .01 ;
  368. *
  369. * Courbe d'ecrouissage
  370. *
  371. beta0 = 1250. ;
  372. sig0 = 410.E6 ;
  373. xm = .5 ;
  374. youn0 = 7.34E10 ;
  375. epsp0 = 'PROG' 0. ;
  376. deb0 = 'PROG' 0. ;
  377. epsmax0 = depmax / l10 ;
  378. pas0 = epsmax0 / 50 ;
  379. epsp1 = 'PROG' 0. 'PAS' pas0 epsmax0 ;
  380. dim00 = 'DIME' epsp1 ;
  381. un = 'PROG' dim00 '*' 1. ;
  382. Y0 = sig0 ;
  383. epsp2 = beta0 * epsp1 ;
  384. epsp3 = epsp2 + un ;
  385. epsp31 = log epsp3 ;
  386. epsp32 = epsp31 * xm ;
  387. epsp4 = exp epsp32 ;
  388. Y1 = Y0 * epsp4 ;
  389. *
  390. epsp1 = epsp0 'ET' epsp1 ;
  391. Y1 = deb0 'ET' Y1 ;
  392. epsp2 = epsp1 + ( Y1 / youn0 ) ;
  393. trac00 = 'EVOL' 'MANU' 'defo' epsp1 'sigm' Y1 ;
  394. *
  395. * Modele de calcul
  396. *
  397. trac0 = 'EVOL' 'MANU' 'defo' epsp2 'sigm' Y1 ;
  398. *'DESS' trac0 ;
  399. mod00 = 'MODE' mail1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
  400. 'PLASTIQUE' 'ISOTROPE' 'COQ8' ;
  401. mat00 = 'MATE' mod00 'YOUN' youn0 'NU' 0.33
  402. 'ECRO' ecro0 ;
  403. car00 = 'CARA' mod00 'EPAI' epais0 ;
  404. *
  405. * Conditions aux limites
  406. *
  407. cl10 = 'BLOQ' li1 'RY' ;
  408. cl20 = 'BLOQ' li3 'RY' ;
  409. cl30 = 'BLOQ' mail1 'UX' 'UY' 'UZ' ;
  410. cl00 = cl10 'ET' cl20 'ET' cl30 ;
  411. *
  412. * Chargement
  413. *
  414. chp1 = 'COOR' 3 mail1 ;
  415. chp1 = chp1 * depmax / l10 ;
  416. chp1 = 'NOMC' chp1 'UY' ;
  417. *trace chp1 mail1 ;
  418. chp2 = 'MANU' 'CHPO' mail1 1 'UZ' 0. ;
  419. chp3 = 'MANU' 'CHPO' mail1 1 'UX' 0. ;
  420. chp0 = chp1 + chp2 + chp3 ;
  421. dep10 = 'DEPI' cl30 chp0 ;
  422. ev00 = 'EVOL' 'MANU' temps ( 'PROG' 0. 1000. ) y ( 'PROG' 0. 1. ) ;
  423. cha00 = 'CHAR' 'DIMP' dep10 ev00 ;
  424. *vec1 = 'VECT' dep10 1.E-5 'FX' 'FY' 'FZ' 'ROUG' ;
  425. *titr ' chargement ' ;
  426. *trace vec1 mail1 ;
  427. *
  428. * Temps du calcul
  429. *
  430. dt00 = 50. ;
  431. tfin00 = 1000. ;
  432. *
  433. *
  434. * Resolution par PASAPAS
  435. *---------------------------------------
  436. *
  437. ta10 = 'TABLE' ;
  438. ta10 .'MODELE' = mod00 ;
  439. ta10 .'CARACTERISTIQUES' = mat00 'ET' car00 ;
  440. ta10 .'BLOCAGES_MECANIQUES' = cl00 ;
  441. ta10 .'CHARGEMENT' = cha00 ;
  442. *ta10 .'TEMPS_CALCULES' = ( ( 'PROG' 0. 'PAS' dt00 80. ) 'ET'
  443. *( 'PROG' 85. 'PAS' 5. 90. ) 'ET'
  444. *( 'PROG' 92.5 'PAS' 2.5 tfin00 ) ) ;
  445. ta10 .'TEMPS_CALCULES' = 'PROG' 0. 'PAS' dt00 tfin00 ;
  446. *ta10 .'TEMPS_CALCULES' = ( ( 'PROG' 0. 'PAS' 20. 60. ) 'ET'
  447. *( 'PROG' 62. 'PAS' 2. 70. ) 'ET'
  448. *( 'PROG' 71. 'PAS' dt00 79. ) 'ET'
  449. *( 'PROG' 79.5 'PAS' .5 tfin00 ) ) ;
  450. *
  451. TMASAU=table;
  452. ta10 . 'MES_SAUVEGARDES'=TMASAU;
  453. TMASAU .'DEFTO'=VRAI;
  454. TMASAU .'DEFIN'=VRAI;
  455. PASAPAS ta10 ;
  456. *
  457. *
  458. * Post-traitement
  459. *-----------------------------------------
  460. *
  461. dim10 = 'DIME' ta10 .'TEMPS' ;
  462. depl120 = 'PROG' 0. ;
  463. *
  464. reac0 = ta10 .'REACTIONS'.( dim10 - 1 ) ;
  465. depl0 = ta10 .'DEPLACEMENTS'.( dim10 - 1 ) ;
  466. vec2 = 'VECT' reac0 1.E-2 'FX' 'FY' 'FZ' 'ROUG' ;
  467. *titr ' reactions ' ;
  468. *trace vec2 mail1 ;
  469. defo0 = 'DEFO' mail1 depl0 0. ;
  470. defo1 = 'DEFO' mail1 depl0 1. 'ROUG' ;
  471. *titr ' deformees ' ;
  472. *trace ( defo0 'ET' defo1 ) ;
  473. *
  474. 'REPETER' bloc0 ( dim10 - 1 ) ;
  475. i10 = &bloc0 ;
  476. reac0 = ta10 .'REACTIONS'.i10 ;
  477. depl10 = ta10 .'DEPLACEMENTS'.i10 ;
  478. temp10 = ta10 .'TEMPS'.i10 ;
  479. * depl11 = 'EXTR' depl10 'UY' p11 ;
  480. reac0 = 'REDU' reac0 li3 ;
  481. reac0 = 'EXCO' reac0 'FY' 'SCAL' ;
  482. chp1 = 'MANU' 'CHPO' li3 1 'SCAL' 1. ;
  483. depl11 = 'XTY' reac0 chp1 ( 'MOTS' 'SCAL' ) ( 'MOTS' 'SCAL' ) ;
  484. depl120 = depl120 'ET' ( 'PROG' depl11 ) ;
  485. eps0 = 'EPSI' depl10 mod00 car00 ;
  486. sigm0 = ta10 .'CONTRAINTES'.i10 ;
  487. def0 = ta10 .'DEFORMATIONS_INELASTIQUES'.i10 ;
  488. * sigm0 = 'RTENS' sigm0 mod00 ( 0 1 0 ) ;
  489. * sigm1 = 'CHAN' 'CHPO' sigm0 mod00 ;
  490. * titr ' Contrainte de cisaillement ' ;
  491. * trace ( 'EXCO' sigm1 'SMST' ) mail1 ;
  492. * titr ' Contrainte suivant Y' ;
  493. * trace ( 'EXCO' sigm1 'SMSS' ) mail1 ;
  494. * titr ' Contrainte suivant Z ' ;
  495. * trace ( 'EXCO' sigm1 'SMTT' ) mail1 ;
  496. 'FIN' bloc0 ;
  497. *
  498. *
  499. *
  500. opti echo 1 dime 3 ;
  501. *
  502. * Données du calcul coque
  503. *
  504. * Erreur
  505. *
  506. *
  507. err_e1 = 'PROG' 0. ;
  508. err_e2 = 'PROG' 0. ;
  509. dim10 = 'DIME' char2 ;
  510. *
  511. bool0 = faux ;
  512. 'REPETER' bloc0 ( dim10 - 1 ) ;
  513. i10 = &bloc0 ;
  514. depl1 = 'EXTR' depl2 i10 ;
  515. depl11 = 'EXTR' depl12 i10 ;
  516. depl111 = 'EXTR' depl120 i10 ;
  517. *
  518. 'SI' (depl1 'NEG' 0. ) ;
  519. err_e0 = 'ABS' ( ( depl1 - depl11 ) / depl1 ) ;
  520. err_e0 = err_e0 * 100. ;
  521. err_e00 = 'ABS' ( ( depl1 - depl111 ) / depl1 ) ;
  522. err_e00 = err_e00 * 100. ;
  523. 'SINON' ;
  524. err_e0 = 0. ;
  525. err_e00 = 0. ;
  526. 'FINSI' ;
  527. *
  528. err_e1 = err_e1 'ET' ( 'PROG' err_e0 ) ;
  529. err_e2 = err_e2 'ET' ( 'PROG' err_e00 ) ;
  530. 'SI' ( ( err_e0 '>' 1.E-6 ) 'OU' ( err_e00 '>' 1.E-6 ) ) ;
  531. bool0 = vrai ;
  532. 'FINSI' ;
  533. *
  534. 'FIN' bloc0 ;
  535. *
  536. 'SI' ( bool0 'EGA' vrai ) ;
  537. 'ERRE' 5 ;
  538. 'SINON' ;
  539. 'ERRE' 0 ;
  540. 'FINSI' ;
  541. *
  542. * Traces
  543. *
  544. evo1 = 'EVOL' 'MANU' 'depl' char2 'force' depl2 ;
  545. evo2 = 'EVOL' 'MANU' 'depl' char2 'force' depl12 ;
  546. evo3 = 'EVOL' 'MANU' 'chargement' char2 'erreur_%' err_e1 ;
  547. evo4 = 'EVOL' 'MANU' 'depl' char2 'chargement' depl120 ;
  548. evo5 = 'EVOL' 'MANU' 'chargement' char2 'erreur_%' err_e2 ;
  549. TAB = 'TABLE' ;
  550. TAB. 1 = 'MARQ PLUS ' ;
  551. TAB. 2 = 'MARQ CROI ' ;
  552. TAB. 3 = 'MARQ CARR ' ;
  553. TAB.'TITRE' = 'TABLE' ;
  554. TAB.'TITRE'. 1 = MOT 'MASSIF' ;
  555. TAB.'TITRE'. 2 = MOT 'COQUE' ;
  556. TAB.'TITRE'. 3 = MOT 'EPAISSE' ;
  557. *'DESS' ( evo1 'ET' evo2 'ET' evo4 )
  558. *'TITR' ' Deplacement de l extremite du cylindre'
  559. *'LEGE' TAB ;
  560. *
  561. TAB = 'TABLE' ;
  562. TAB. 1 = 'MARQ PLUS ' ;
  563. TAB. 2 = 'MARQ CROI ' ;
  564. TAB.'TITRE' = 'TABLE' ;
  565. TAB.'TITRE'. 1 = MOT 'MINCE' ;
  566. TAB.'TITRE'. 2 = MOT 'EPAISSE' ;
  567. *'DESS' ( evo3 'ET' evo5 )
  568. *'TITR' 'Erreur sur les deplacements '
  569. *'LEGE' TAB ;
  570. *
  571. 'FIN' ;
  572. *
  573. 'FIN' ;
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  

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