Télécharger mazars_willam.dgibi

Retour à la liste

Numérotation des lignes :

  1. *fichier : mazars_willam.dgibi
  2. ************************************************************************
  3. * Cas test elementaire pour la loi d'endommagement de Mazars *
  4. * Essai de Willam (traction / cisaillement) *
  5. * *
  6. * Versions du test de Willam decrites dans les *
  7. * references bibliographiques suivantes : *
  8. * - Article d'origine du test *
  9. * [1] Willam, K.; Pramono, E.; Sture, S. Fundamental issues of *
  10. * smeared crack models. In Proc. of the SEM-RILEM Int. conf. on *
  11. * fracture of concrete and rock, TX USA 17-19 June 1987, *
  12. * Shah S.P., Swartz S.E. (eds), 1989, pp. 142-157. *
  13. * - Geometrie, parametres elastiques et courbes de reference LGCNSN iso*
  14. * [2] Ghavamian, S.; Carol, I.; Delaplace A. Discussions over *
  15. * MECA project results. Revue Française de Génie Civil. 7 (2003) *
  16. * pp. 543-581. doi:10.1080/127951119.2003.9692509. *
  17. * - Parametres de chargement *
  18. * [3] Wosatko, A.; Szczecina, M.; Winnicki A. Selected Concrete Models *
  19. * Studied Using Willam's Test. Materials 2020, 13, 4756; *
  20. * doi:10.3390/ma13214756. *
  21. * - Parametres du modele Mazars *
  22. * Communication personnelle jdd L.Jason (2000) *
  23. * *
  24. * Le test est realise avec plusieurs modes de calcul : *
  25. * 1) 3D volumique *
  26. * 2) 2D contraintes planes *
  27. * *
  28. * ITRAC1 : VRAI => affichage resultats *
  29. * IPSC1 : VRAI => affichage resultats dans un PostScript Couleur *
  30. ************************************************************************
  31.  
  32. DIVERS = 'VENV' 'CASTEM_DIVERS' ;
  33. FIC1 = 'CHAI' DIVERS '/mazars_willam_LGCNSNiso_smxx.csv' ;
  34. FIC2 = 'CHAI' DIVERS '/mazars_willam_LGCNSNiso_smyy.csv' ;
  35. FIC3 = 'CHAI' DIVERS '/mazars_willam_LGCNSNiso_smxy.csv' ;
  36.  
  37. ** Options pour les traces
  38. ITRAC1 = FAUX ;
  39. IPSC1 = VRAI ;
  40. SI IPSC1 ;
  41. OPTI 'TRAC' 'PSC' ;
  42. FINSI ;
  43.  
  44. ** Liste des modes de calcul a traiter
  45. lcas = LECT 1 2 ;
  46. *nh145313
  47. *lcas = LECT 1 ; COMM '3D volumique' ;
  48. *lcas = LECT 2 ; COMM '2D contraintes planes' ;
  49.  
  50. ** Parametres geometriques [2] Ghavamian (2003)
  51. long = 0.56 ;
  52. epai = 0.1 ;
  53.  
  54. ** Parametres materiau [2] Ghavamian (2003) sauf commentaire 'LJason' jdd L.Jason (2000)
  55. you = 32.E9 ;
  56. nu = 0.2 ;
  57. ft = 3.E6 ;
  58. epd0 = ft / you ;
  59. at = 0.99 ;
  60. bt = 18000. ; COMM 'LJason';
  61. ac = 1.5 ;
  62. bc = 1550. ;
  63. beta = 1. ;
  64.  
  65. ** Parametres chargement en deformation imposee [3] Wosatko (2020)
  66. * - Phase 1
  67. ep1 = epd0 ;
  68. * - Phase 2
  69. ep2 = 10. * epd0 ;
  70. c2epxx = 0.5 ;
  71. c2epyy = 0.75 ;
  72. c2gaxy = 0.5 ;
  73.  
  74. OPTI ECHO 0 ;
  75. mess 'Parametres' ;
  76. mess '==========';
  77. mess 'Parametre de taille de l element' ;
  78. mess '- H = arete du cube : long (m)' ' ' long ;
  79. mess 'Coef. elastiques' ;
  80. mess '- Module d Young : you (Pa)' you ;
  81. mess '- Coefficient de Poisson : nu' ' ' ' ' ' ' ' ' ' ' ' ' nu ;
  82. mess 'Coef. Mazars' ;
  83. mess '- KTR0 : epd0' ' ' epd0 ;
  84. mess '- ATRA : at' ' ' ' ' ' ' at ;
  85. mess '- BTRA : bt' ' ' ' ' ' ' bt ;
  86. mess '- ACOM : ac' ' ' ' ' ' ' ac ;
  87. mess '- BCOM : bc' ' ' ' ' ' ' bc ;
  88. mess '- BETA : beta' ' ' beta ;
  89. mess 'Coef. chargement Phase 2' ;
  90. mess '- fact.mult. EPXX : c2epxx' ' ' c2epxx ;
  91. mess '- fact.mult. EPYY : c2epyy' ' ' c2epyy ;
  92. mess '- fact.mult. GAXY : c2gaxy' ' ' c2gaxy ;
  93. OPTI ECHO 1 ;
  94. *opti donn 5;
  95.  
  96.  
  97. **************** C A S #1 : 3 D V O L U M I Q U E ****************
  98. SI (EXIS lcas 1) ;
  99.  
  100. ** Options generales
  101. OPTI 'DIME' 3 'MODE' 'TRID' 'ELEM' 'CUB8' ;
  102.  
  103. ** Maillage
  104. p1 = 0. 0. 0. ;
  105. p2 = 0. long 0. ;
  106. l12 = DROI 1 p1 p2 ;
  107. sgauche = l12 TRAN 1 (0. 0. long) ;
  108. mail = sgauche VOLU 'TRAN' 1 (long 0. 0.) ;
  109. *nh145313
  110. cadr1 = COUL ((0. 0.9 0.6) ET (0.75 1. 0.6)) 'BLAN' ;
  111. rep1 = @REPERE (-0.55 -0.55 0.) 'TURQ' ;
  112. SI ITRAC1 ;
  113. TRAC 'QUAL' (cadr1 ET rep1 ET mail ET (sgauche COUL 'VERT')) 'TITR' '[3D V] Maillage' ;
  114. FINSI ;
  115.  
  116. ** Calcul 1
  117. * sur un modele elastique avec le chargement en deformation imposee en 2 pas de calcul
  118. * pour avoir les deplacements a imposer dans le calcul 2 au vrai modele non lineaire
  119.  
  120. ** Modele et caracteristiques materiau elastique
  121. mo1 = MODE mail 'MECANIQUE' ;
  122. ma1 = MATE mo1 'YOUN' you 'NU' nu ;
  123.  
  124. ** Blocages
  125. bl1 = (BLOQ 'UX' sgauche) ET (BLOQ 'UY' 'UZ' p1) ET (BLOQ 'UZ' p2) ;
  126.  
  127. ** Chargement en deformation imposee
  128. * - Phase 1
  129. cheps1 = MANU 'CHML' mo1 'EPXX' (1. * ep1)
  130. 'EPYY' ((-1. * nu) * ep1)
  131. 'EPZZ' ((-1. * nu) * ep1)
  132. 'GAXY' 0.
  133. 'GAXZ' 0.
  134. 'GAYZ' 0.
  135. 'TYPE' 'DEFORMATIONS' 'STRESSES' ;
  136. * - Phase 2
  137. cheps2 = MANU 'CHML' mo1 'EPXX' ((1. * ep1) + (c2epxx * ep2))
  138. 'EPYY' (((-1. * nu) * ep1) + (c2epyy * ep2))
  139. 'EPZZ' ((-1. * nu) * ep1)
  140. 'GAXY' (c2gaxy * 2. * ep2)
  141. 'GAXZ' 0.
  142. 'GAYZ' 0.
  143. 'TYPE' 'DEFORMATIONS' 'STRESSES' ;
  144. ttps1 = TABL ;
  145. ttps1 . 0 = 0. ;
  146. ttps1 . 1 = 0.5 ;
  147. ttps1 . 2 = 1. ;
  148. tcha1 = TABL ;
  149. tcha1 . 0 = 0. * cheps1 ;
  150. tcha1 . 1 = cheps1 ;
  151. tcha1 . 2 = cheps2 ;
  152. cha1 = CHAR 'DEFI' ttps1 tcha1 ;
  153.  
  154. ** Resolution 1 : sur un modele elastique avec le chargement en deformation imposee
  155. * en 2 pas de calcul pour avoir les deplacements a imposer ensuite au vrai modele non lineaire
  156. t1 = TABL ;
  157. t1 . 'MODELE' = mo1 ;
  158. t1 . 'CARACTERISTIQUES' = ma1 ;
  159. t1 . 'BLOCAGES_MECANIQUES' = bl1 ;
  160. t1 . 'CHARGEMENT' = cha1 ;
  161. t1 . 'TEMPS_CALCULES' = PROG 0. 'PAS' 0.5 1. ;
  162. PASAPAS t1 ;
  163.  
  164. ** Calcul 2
  165. * la cinematique issue du résultat du calcul 1 est imposee au modele non lineaire
  166.  
  167. ** Modele et caracteristiques materiau non lineaire
  168. mo2 = MODE mail 'MECANIQUE' 'ELASTIQUE' 'ENDOMMAGEMENT' 'MAZARS' ;
  169. ma2 = MATE mo2 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta ;
  170.  
  171. ** Blocages 2
  172. bl2 = BLOQ 'DEPL' mail ;
  173.  
  174. ** Chargement 2 en deplacement imposee
  175. t1 . 'DIMP' = TABL ;
  176. t1 . 'DIMP' . 0 = DEPI bl2 (t1 . 'DEPLACEMENTS' . 0) ;
  177. t1 . 'DIMP' . 1 = DEPI bl2 (t1 . 'DEPLACEMENTS' . 1) ;
  178. t1 . 'DIMP' . 2 = DEPI bl2 (t1 . 'DEPLACEMENTS' . 2) ;
  179. cha2 = CHAR 'DIMP' (t1 . 'TEMPS') (t1 . 'DIMP') ;
  180.  
  181. ** Resolution 2 : la cinematique résultat de la Resolution 1
  182. * est imposee au modele non lineaire
  183. t2 = TABL ;
  184. t2 . 'MODELE' = mo2 ;
  185. t2 . 'CARACTERISTIQUES' = ma2 ;
  186. t2 . 'BLOCAGES_MECANIQUES' = bl2 ;
  187. t2 . 'CHARGEMENT' = cha2 ;
  188. t2 . 'TEMPS_CALCULES' = PROG 0. 'PAS' 0.01 0.5 'PAS' 0.002 1. ;
  189. t2 . 'MOVA' = MOT 'D' ;
  190. t2 . 'MES_SAUVEGARDES' = TABL ;
  191. t2 . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
  192. PASAPAS t2 ;
  193.  
  194. ** Post traitement
  195. * courbes : endommagement/contraintes/deformations aux points de Gauss vs temps
  196. * contraintes/deformations principales vs temps
  197. * angles des directions principales vs temps
  198. tt = t2 . 'TEMPS' ;
  199. tu = t2 . 'DEPLACEMENTS' ;
  200. *nh145313
  201. * def0 = DEFO mail (tu . 0) 0. ;
  202. def0 = DEFO (cadr1 ET rep1 ET mail) (tu . 0) 0. ;
  203. * evolutions temporelles a tous les points de Gauss de l'endommagement, des contraintes et des deformations
  204. ng = 8 ;
  205. tleg = TABL ;
  206. tleg . 1 = MOT 'MARQ CARR NOLI' ;
  207. tleg . 2 = MOT 'MARQ LOSA NOLI' ;
  208. tleg . 3 = MOT 'MARQ ROND NOLI' ;
  209. tleg . 4 = MOT 'MARQ ETOI NOLI' ;
  210. tleg . 5 = MOT 'MARQ TRID NOLI' ;
  211. tleg . 6 = MOT 'MARQ TRIU NOLI' ;
  212. tleg . 7 = MOT 'MARQ TRIL NOLI' ;
  213. tleg . 8 = MOT 'MARQ TRIR NOLI' ;
  214. tleg . 'TITRE' = TABL ;
  215. REPE b ng ;
  216. tleg . 'TITRE' . &b = CHAI 'Calc_Pt_Gauss' ' ' &b ;
  217. FIN b ;
  218. * endommagement
  219. evd = VIDE 'EVOLUTIO' ;
  220. REPE b ng ;
  221. evd = evd ET (EVOL 'VIOL' 'TEMP' t2 'VARIABLES_INTERNES' 'D' 1 1 &b) ;
  222. FIN b ;
  223. SI ITRAC1 ;
  224. DESS evd 'LEGE' tleg 'TITR' '[3D V] D vs Temps' ;
  225. FINSI ;
  226. * contraintes
  227. evsmxx = VIDE 'EVOLUTIO' ;
  228. REPE b ng ;
  229. evsmxx = evsmxx ET (EVOL 'BLEU' 'TEMP' t2 'CONTRAINTES' 'SMXX' 1 1 &b) ;
  230. FIN b ;
  231. SI ITRAC1 ;
  232. DESS evsmxx 'LEGE' tleg 'TITR' '[3D V] SMXX vs Temps' ;
  233. FINSI ;
  234. evsmyy = VIDE 'EVOLUTIO' ;
  235. REPE b ng ;
  236. evsmyy = evsmyy ET (EVOL 'VERT' 'TEMP' t2 'CONTRAINTES' 'SMYY' 1 1 &b) ;
  237. FIN b ;
  238. SI ITRAC1 ;
  239. DESS evsmyy 'LEGE' tleg 'TITR' '[3D V] SMYY vs Temps' ;
  240. FINSI ;
  241. evsmxy = VIDE 'EVOLUTIO' ;
  242. REPE b ng ;
  243. evsmxy = evsmxy ET (EVOL 'ROUG' 'TEMP' t2 'CONTRAINTES' 'SMXY' 1 1 &b) ;
  244. FIN b ;
  245. SI ITRAC1 ;
  246. DESS evsmxy 'LEGE' tleg 'TITR' '[3D V] SMXY vs Temps' ;
  247. FINSI ;
  248. * deformations
  249. evepxx = VIDE 'EVOLUTIO' ;
  250. REPE b ng ;
  251. evepxx = evepxx ET (EVOL 'BLEU' 'TEMP' t2 'DEFORMATIONS' 'EPXX' 1 1 &b) ;
  252. FIN b ;
  253. SI ITRAC1 ;
  254. DESS evepxx 'LEGE' tleg 'TITR' '[3D V] EPXX vs Temps' ;
  255. FINSI ;
  256. evepyy = VIDE 'EVOLUTIO' ;
  257. REPE b ng ;
  258. evepyy = evepyy ET (EVOL 'VERT' 'TEMP' t2 'DEFORMATIONS' 'EPYY' 1 1 &b) ;
  259. FIN b ;
  260. SI ITRAC1 ;
  261. DESS evepyy 'LEGE' tleg 'TITR' '[3D V] EPYY vs Temps' ;
  262. FINSI ;
  263. evepxy = VIDE 'EVOLUTIO' ;
  264. REPE b ng ;
  265. evepxy = evepxy ET (EVOL 'ROUG' 'TEMP' t2 'DEFORMATIONS' 'GAXY' 1 1 &b) ;
  266. FIN b ;
  267. SI ITRAC1 ;
  268. DESS evepxy 'LEGE' tleg 'TITR' '[3D V] GAXY vs Temps' ;
  269. FINSI ;
  270. * contraintes principales
  271. tprin = TABL 'PASAPAS' ;
  272. tprin . 'TEMPS' = t2 . 'TEMPS' ;
  273. tprin . 'CONTRAINTES' = TABL ;
  274. REPE b1 (DIME tt) ;
  275. tprin . 'CONTRAINTES' . (&b1 - 1) = PRIN mo2 (t2 . 'CONTRAINTES' . (&b1 - 1)) ;
  276. FIN b1 ;
  277. * angle direction principale 1
  278. evcos11 = VIDE 'EVOLUTIO' ;
  279. REPE b ng ;
  280. evcos11 = evcos11 ET (EVOL 'ORAN' 'TEMP' tprin 'CONTRAINTES' 'COX1' 1 1 &b) ;
  281. FIN b ;
  282. evang11 = ACOS evcos11 ;
  283. SI ITRAC1 ;
  284. DESS evang11 'LEGE' tleg 'TITR' '[3D V] Angle X ^ SI11 vs Temps' ;
  285. FINSI ;
  286.  
  287. * courbe Contraintes vs Deformation EPXX
  288. evxx = EVOL 'BLEU' 'MANU' 'EPXX' (EXTR evepxx 'ORDO') 'CONTRAINTE' (EXTR evsmxx 'ORDO') ;
  289. evyy = EVOL 'VERT' 'MANU' 'EPXX' (EXTR evepxx 'ORDO') 'CONTRAINTE' (EXTR evsmyy 'ORDO') ;
  290. evxy = EVOL 'ROUG' 'MANU' 'EPXX' (EXTR evepxx 'ORDO') 'CONTRAINTE' (EXTR evsmxy 'ORDO') ;
  291. tleg = TABL ;
  292. tleg . 'TITRE' = TABL ;
  293. tleg . 'TITRE' . 1 = 'Calc_SMXX' ;
  294. tleg . 'TITRE' . 2 = 'Calc_SMYY' ;
  295. tleg . 'TITRE' . 3 = 'Calc_SMXY' ;
  296. * resultats de reference [2] Ghavamian (2003) LGCNSNiso
  297. evref = VIDE 'EVOLUTIO' ;
  298. tref = LIRE 'CSV' FIC1 'DEBU' 2 'SEPA' ',' ;
  299. evref = evref ET (EVOL 'BLEU' 'MANU' 'EPXX' (tref . 1) 'CONTRAINTE' (tref . 2)) ;
  300. tref = LIRE 'CSV' FIC2 'DEBU' 2 'SEPA' ',' ;
  301. evref = evref ET (EVOL 'VERT' 'MANU' 'EPXX' (tref . 1) 'CONTRAINTE' (tref . 2)) ;
  302. tref = LIRE 'CSV' FIC3 'DEBU' 2 'SEPA' ',' ;
  303. evref = evref ET (EVOL 'ROUG' 'MANU' 'EPXX' (tref . 1) 'CONTRAINTE' (tref . 2)) ;
  304. tleg . 4 = MOT 'TIRR' ;
  305. tleg . 'TITRE' . 4 = 'Ref_SMXX' ;
  306. tleg . 5 = MOT 'TIRR' ;
  307. tleg . 'TITRE' . 5 = 'Ref_SMYY' ;
  308. tleg . 6 = MOT 'TIRR' ;
  309. tleg . 'TITRE' . 6 = 'Ref_SMXY' ;
  310. SI ITRAC1 ;
  311. DESS (evxx et evyy et evxy et evref) 'LEGE' tleg 'TITR' '[3D V] Contraintes vs Deformation' ;
  312. FINSI ;
  313.  
  314. * comparaison calcul / reference sur l'aire sous la courbe Contraintes vs Deformation EPXX
  315. OPTI ECHO 0 ;
  316. SAUT 1 LIGN ;
  317. MESS ' **************** C A S #1 : 3 D V O L U M I Q U E ****************';
  318. SAUT 1 LIGN ;
  319. tbid = TABL ;
  320. tbid . 'TITRE' = TABL ;
  321. tbid . 1 = 'MARQ PLUS' ;
  322. tbid . 'TITRE' . 1 = 'Cal.init.' ;
  323. tbid . 2 = 'MARQ ETOI' ;
  324. tbid . 'TITRE' . 2 = ' Ref.' ;
  325. tbid . 3 = 'MARQ CROI' ;
  326. tbid . 'TITRE' . 3 = 'Cal.lim.' ;
  327. REPE b2 (DIME evref) ;
  328. evri = EXTR evref 'COUR' &b2 ;
  329. xmri = EXTR (EXTR evri 'ABSC') (DIME (EXTR evri 'ABSC')) ;
  330. SI (&b2 EGA 1) ;
  331. evcal = evxx ;
  332. FINSI ;
  333. SI (&b2 EGA 2) ;
  334. evcal = evyy ;
  335. FINSI ;
  336. SI (&b2 EGA 3) ;
  337. evcal = evxy ;
  338. FINSI ;
  339. ymcal = IPOL xmri evcal ;
  340. xcal2 = PROG ;
  341. ycal2 = PROG ;
  342. REPE b3 (DIME (EXTR evcal 'ABSC')) ;
  343. xx = EXTR (EXTR evcal 'ABSC') &b3 ;
  344. yy = EXTR (EXTR evcal 'ORDO') &b3 ;
  345. SI (xx >EG xmri) ;
  346. QUIT b3 ;
  347. FINSI ;
  348. xcal2 = xcal2 ET (PROG xx) ;
  349. ycal2 = ycal2 ET (PROG yy) ;
  350. FIN b3 ;
  351. xcal2 = xcal2 ET (PROG xmri) ;
  352. ycal2 = ycal2 ET (PROG ymcal) ;
  353. evcal2 = EVOL MANU 'EPZZ' xcal2 'CONTRAINTE' ycal2 ;
  354. ivref = INTG evri ;
  355. ivcal = INTG evcal2 ;
  356. ec1 = ivcal - ivref ;
  357. er1 = ec1 / ivref ;
  358. tit0 = CHAI (tleg . 'TITRE' . &b2) ' Aire courb.ref' ivref ' Aire courb.cal' ivcal ' Ec.Rel.' er1;
  359. SI ITRAC1 ;
  360. DESS (evcal et evri et evcal2) 'TITR' tit0 'LEGE' tbid ;
  361. FINSI ;
  362. MESS ' Courbe :' (tleg . 'TITRE' . &b2) ' vs EPXX, Ecart relatif entre Calcul et Reference :' er1 ;
  363. SAUT 1 LIGN ;
  364. FIN b2 ;
  365. OPTI ECHO 1 ;
  366.  
  367. * deformee et vecteurs principaux
  368. REPE b1 (DIME tt) ;
  369. tps1 = tt . (&b1 - 1) ;
  370. * trace de la deformee (pour controle visuel)
  371. *nh145313
  372. * def1 = DEFO mail (tu . (&b1 - 1)) 1000. 'ROUG' ;
  373. def1 = DEFO mail (tu . (&b1 - 1)) 500. 'ROUG' ;
  374. tit1 = CHAI '[3D V] Deformee au temps' ' ' tps1 ;
  375. SI ITRAC1 ;
  376. * TRAC (def0 ET def1) 'TITR' tit1 ;
  377. FINSI ;
  378. FIN b1 ;
  379. SI ITRAC1 ;
  380. TRAC (def0 ET def1) 'TITR' tit1 ;
  381. FINSI ;
  382. REPE b1 (DIME tt) ;
  383. tps1 = tt . (&b1 - 1) ;
  384. * trace des vecteurs contraintes principales
  385. vecs = VECT (tprin . 'CONTRAINTES' . (&b1 - 1)) mo2 1.E-7 ;
  386. tit1 = CHAI '[3D V] Directions principales au temps' ' ' tps1 ;
  387. SI ITRAC1 ;
  388. * TRAC vecs (cadr1 ET rep1 ET mail) 'TITR' tit1 ;
  389. SI (tps1 EGA 5.52E-1) ;
  390. TRAC vecs (cadr1 ET rep1 ET mail) 'TITR' tit1 ;
  391. FINSI ;
  392. FINSI ;
  393. FIN b1 ;
  394. SI ITRAC1 ;
  395. * TRAC vecs (cadr1 ET rep1 ET mail) 'TITR' tit1 ;
  396. FINSI ;
  397. FINSI ;
  398.  
  399.  
  400.  
  401.  
  402.  
  403. ******* C A S #2 : 2 D C O N T R A I N T E S P L A N E S ********
  404. SI (EXIS lcas 2) ;
  405.  
  406. ** Options generales
  407. OPTI 'DIME' 2 'MODE' 'PLAN' 'CONT' 'ELEM' 'QUA4' ;
  408.  
  409. ** Maillage
  410. p1 = 0. 0. ;
  411. p2 = 0. long ;
  412. sgauche = DROI 1 p1 p2 ;
  413. mail = sgauche TRAN 1 (long 0.) ;
  414. p3 = mail POIN 'PROC' (long long) ;
  415. *nh145313
  416. cadr1 = COUL ((0. 1.05) ET (0.75 1.05)) 'BLAN' ;
  417. rep1 = @REPERE (-0.2 -0.2) (PROG 0.5 0.5) 'TURQ' ;
  418. SI ITRAC1 ;
  419. TRAC 'QUAL' (cadr1 ET rep1 ET mail ET (sgauche COUL 'VERT')) 'TITR' '[2D Plan cont.] Maillage' ;
  420. FINSI ;
  421.  
  422. ** Calcul 1
  423. * sur un modele elastique avec le chargement en deformation imposee en 2 pas de calcul
  424. * pour avoir les deplacements a imposer dans le calcul 2 au vrai modele non lineaire
  425.  
  426. ** Modele et caracteristiques materiau elastique
  427. mo1 = MODE mail 'MECANIQUE' ;
  428. ma1 = MATE mo1 'YOUN' you 'NU' nu 'DIM3' epai ;
  429.  
  430. ** Blocages
  431. bl1 = (BLOQ 'UX' sgauche) ET (BLOQ 'UY' p1) ;
  432.  
  433. ** Chargement en deformation imposee
  434. * - Phase 1
  435. cheps1 = MANU 'CHML' mo1 'EPXX' (1. * ep1)
  436. 'EPYY' ((-1. * nu) * ep1)
  437. 'EPZZ' 0.
  438. 'GAXY' 0.
  439. 'TYPE' 'DEFORMATIONS' 'STRESSES' ;
  440. * - Phase 2
  441. cheps2 = MANU 'CHML' mo1 'EPXX' ((1. * ep1) + (c2epxx * ep2))
  442. 'EPYY' (((-1. * nu) * ep1) + (c2epyy * ep2))
  443. 'EPZZ' 0.
  444. 'GAXY' (c2gaxy * 2. * ep2)
  445. 'TYPE' 'DEFORMATIONS' 'STRESSES' ;
  446. ttps1 = TABL ;
  447. ttps1 . 0 = 0. ;
  448. ttps1 . 1 = 0.5 ;
  449. ttps1 . 2 = 1. ;
  450. tcha1 = TABL ;
  451. tcha1 . 0 = 0. * cheps1 ;
  452. tcha1 . 1 = cheps1 ;
  453. tcha1 . 2 = cheps2 ;
  454. cha1 = CHAR 'DEFI' ttps1 tcha1 ;
  455.  
  456. ** Resolution 1 : sur un modele elastique avec le chargement en deformation imposee
  457. * en 2 pas de calcul pour avoir les deplacements a imposer ensuite au vrai modele non lineaire
  458. t1 = TABL ;
  459. t1 . 'MODELE' = mo1 ;
  460. t1 . 'CARACTERISTIQUES' = ma1 ;
  461. t1 . 'BLOCAGES_MECANIQUES' = bl1 ;
  462. t1 . 'CHARGEMENT' = cha1 ;
  463. t1 . 'TEMPS_CALCULES' = PROG 0. 'PAS' 0.5 1. ;
  464. PASAPAS t1 ;
  465.  
  466. ** Calcul 2
  467. * la cinematique issue du résultat du calcul 1 est imposee au modele non lineaire
  468.  
  469. ** Modele et caracteristiques materiau non lineaire
  470. mo2 = MODE mail 'MECANIQUE' 'ELASTIQUE' 'ENDOMMAGEMENT' 'MAZARS' ;
  471. ma2 = MATE mo2 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta ;
  472.  
  473. ** Blocages 2
  474. bl2 = BLOQ 'DEPL' mail ;
  475.  
  476. ** Chargement 2 en deplacement imposee
  477. t1 . 'DIMP' = TABL ;
  478. t1 . 'DIMP' . 0 = DEPI bl2 (t1 . 'DEPLACEMENTS' . 0) ;
  479. t1 . 'DIMP' . 1 = DEPI bl2 (t1 . 'DEPLACEMENTS' . 1) ;
  480. t1 . 'DIMP' . 2 = DEPI bl2 (t1 . 'DEPLACEMENTS' . 2) ;
  481. cha2 = CHAR 'DIMP' (t1 . 'TEMPS') (t1 . 'DIMP') ;
  482.  
  483. ** Resolution 2 : la cinematique résultat de la Resolution 1
  484. * est imposee au modele non lineaire
  485. t2 = TABL ;
  486. t2 . 'MODELE' = mo2 ;
  487. t2 . 'CARACTERISTIQUES' = ma2 ;
  488. t2 . 'BLOCAGES_MECANIQUES' = bl2 ;
  489. t2 . 'CHARGEMENT' = cha2 ;
  490. t2 . 'TEMPS_CALCULES' = PROG 0. 'PAS' 0.01 0.5 'PAS' 0.002 1. ;
  491. t2 . 'MOVA' = MOT 'D' ;
  492. t2 . 'MES_SAUVEGARDES' = TABL ;
  493. t2 . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
  494. PASAPAS t2 ;
  495.  
  496. ** Post traitement
  497. * courbes : endommagement/contraintes/deformations aux points de Gauss vs temps
  498. * contraintes/deformations principales vs temps
  499. * angles des directions principales vs temps
  500. tt = t2 . 'TEMPS' ;
  501. tu = t2 . 'DEPLACEMENTS' ;
  502. *nh145313
  503. * def0 = DEFO mail (tu . 0) 0. ;
  504. def0 = DEFO (cadr1 ET rep1 ET mail) (tu . 0) 0. ;
  505. * evolutions temporelles a tous les points de Gauss de l'endommagement, des contraintes et des deformations
  506. ng = 4 ;
  507. tleg = TABL ;
  508. tleg . 1 = MOT 'MARQ CARR NOLI' ;
  509. tleg . 2 = MOT 'MARQ LOSA NOLI' ;
  510. tleg . 3 = MOT 'MARQ ROND NOLI' ;
  511. tleg . 4 = MOT 'MARQ ETOI NOLI' ;
  512. tleg . 'TITRE' = TABL ;
  513. REPE b ng ;
  514. tleg . 'TITRE' . &b = CHAI 'Calc_Pt_Gauss' ' ' &b ;
  515. FIN b ;
  516. * endommagement
  517. evd = VIDE 'EVOLUTIO' ;
  518. REPE b ng ;
  519. evd = evd ET (EVOL 'VIOL' 'TEMP' t2 'VARIABLES_INTERNES' 'D' 1 1 &b) ;
  520. FIN b ;
  521. SI ITRAC1 ;
  522. DESS evd 'LEGE' tleg 'TITR' '[2D Plan cont.] D vs Temps' ;
  523. FINSI ;
  524. * contraintes
  525. evsmxx = VIDE 'EVOLUTIO' ;
  526. REPE b ng ;
  527. evsmxx = evsmxx ET (EVOL 'BLEU' 'TEMP' t2 'CONTRAINTES' 'SMXX' 1 1 &b) ;
  528. FIN b ;
  529. SI ITRAC1 ;
  530. DESS evsmxx 'LEGE' tleg 'TITR' '[2D Plan cont.] SMXX vs Temps' ;
  531. FINSI ;
  532. evsmyy = VIDE 'EVOLUTIO' ;
  533. REPE b ng ;
  534. evsmyy = evsmyy ET (EVOL 'VERT' 'TEMP' t2 'CONTRAINTES' 'SMYY' 1 1 &b) ;
  535. FIN b ;
  536. SI ITRAC1 ;
  537. DESS evsmyy 'LEGE' tleg 'TITR' '[2D Plan cont.] SMYY vs Temps' ;
  538. FINSI ;
  539. evsmxy = VIDE 'EVOLUTIO' ;
  540. REPE b ng ;
  541. evsmxy = evsmxy ET (EVOL 'ROUG' 'TEMP' t2 'CONTRAINTES' 'SMXY' 1 1 &b) ;
  542. FIN b ;
  543. SI ITRAC1 ;
  544. DESS evsmxy 'LEGE' tleg 'TITR' '[2D Plan cont.] SMXY vs Temps' ;
  545. FINSI ;
  546. * deformations
  547. evepxx = VIDE 'EVOLUTIO' ;
  548. REPE b ng ;
  549. evepxx = evepxx ET (EVOL 'BLEU' 'TEMP' t2 'DEFORMATIONS' 'EPXX' 1 1 &b) ;
  550. FIN b ;
  551. SI ITRAC1 ;
  552. DESS evepxx 'LEGE' tleg 'TITR' '[2D Plan cont.] EPXX vs Temps' ;
  553. FINSI ;
  554. evepyy = VIDE 'EVOLUTIO' ;
  555. REPE b ng ;
  556. evepyy = evepyy ET (EVOL 'VERT' 'TEMP' t2 'DEFORMATIONS' 'EPYY' 1 1 &b) ;
  557. FIN b ;
  558. SI ITRAC1 ;
  559. DESS evepyy 'LEGE' tleg 'TITR' '[2D Plan cont.] EPYY vs Temps' ;
  560. FINSI ;
  561. evepxy = VIDE 'EVOLUTIO' ;
  562. REPE b ng ;
  563. evepxy = evepxy ET (EVOL 'ROUG' 'TEMP' t2 'DEFORMATIONS' 'GAXY' 1 1 &b) ;
  564. FIN b ;
  565. SI ITRAC1 ;
  566. DESS evepxy 'LEGE' tleg 'TITR' '[2D Plan cont.] GAXY vs Temps' ;
  567. FINSI ;
  568. * contraintes principales
  569. tprin = TABL 'PASAPAS' ;
  570. tprin . 'TEMPS' = t2 . 'TEMPS' ;
  571. tprin . 'CONTRAINTES' = TABL ;
  572. REPE b1 (DIME tt) ;
  573. tprin . 'CONTRAINTES' . (&b1 - 1) = PRIN mo2 (t2 . 'CONTRAINTES' . (&b1 - 1)) ;
  574. FIN b1 ;
  575. * angle direction principale 1
  576. evcos11 = VIDE 'EVOLUTIO' ;
  577. REPE b ng ;
  578. evcos11 = evcos11 ET (EVOL 'ORAN' 'TEMP' tprin 'CONTRAINTES' 'COX1' 1 1 &b) ;
  579. FIN b ;
  580. evang11 = ACOS evcos11 ;
  581. SI ITRAC1 ;
  582. DESS evang11 'LEGE' tleg 'TITR' '[2D Plan cont.] Angle X ^ SI11 vs Temps' ;
  583. FINSI ;
  584.  
  585. * courbe Contraintes vs Deformation EPXX
  586. evxx = EVOL 'BLEU' 'MANU' 'EPXX' (EXTR evepxx 'ORDO') 'CONTRAINTE' (EXTR evsmxx 'ORDO') ;
  587. evyy = EVOL 'VERT' 'MANU' 'EPXX' (EXTR evepxx 'ORDO') 'CONTRAINTE' (EXTR evsmyy 'ORDO') ;
  588. evxy = EVOL 'ROUG' 'MANU' 'EPXX' (EXTR evepxx 'ORDO') 'CONTRAINTE' (EXTR evsmxy 'ORDO') ;
  589. tleg = TABL ;
  590. tleg . 'TITRE' = TABL ;
  591. tleg . 'TITRE' . 1 = 'Calc_SMXX' ;
  592. tleg . 'TITRE' . 2 = 'Calc_SMYY' ;
  593. tleg . 'TITRE' . 3 = 'Calc_SMXY' ;
  594. * resultats de reference [2] Ghavamian (2003) LGCNSNiso
  595. evref = VIDE 'EVOLUTIO' ;
  596. tref = LIRE 'CSV' FIC1 'DEBU' 2 'SEPA' ',' ;
  597. evref = evref ET (EVOL 'BLEU' 'MANU' 'EPXX' (tref . 1) 'CONTRAINTE' (tref . 2)) ;
  598. tref = LIRE 'CSV' FIC2 'DEBU' 2 'SEPA' ',' ;
  599. evref = evref ET (EVOL 'VERT' 'MANU' 'EPXX' (tref . 1) 'CONTRAINTE' (tref . 2)) ;
  600. tref = LIRE 'CSV' FIC3 'DEBU' 2 'SEPA' ',' ;
  601. evref = evref ET (EVOL 'ROUG' 'MANU' 'EPXX' (tref . 1) 'CONTRAINTE' (tref . 2)) ;
  602. tleg . 4 = MOT 'TIRR' ;
  603. tleg . 'TITRE' . 4 = 'Ref_SMXX' ;
  604. tleg . 5 = MOT 'TIRR' ;
  605. tleg . 'TITRE' . 5 = 'Ref_SMYY' ;
  606. tleg . 6 = MOT 'TIRR' ;
  607. tleg . 'TITRE' . 6 = 'Ref_SMXY' ;
  608. SI ITRAC1 ;
  609. DESS (evxx et evyy et evxy et evref) 'LEGE' tleg 'TITR' '[2D Plan cont.] Contraintes vs Deformation' ;
  610. FINSI ;
  611.  
  612. * comparaison calcul / reference sur l'aire sous la courbe Contraintes vs Deformation EPXX
  613. OPTI ECHO 0 ;
  614. SAUT 1 LIGN ;
  615. MESS ' ******* C A S #2 : 2 D C O N T R A I N T E S P L A N E S ********';
  616. SAUT 1 LIGN ;
  617. tbid = TABL ;
  618. tbid . 'TITRE' = TABL ;
  619. tbid . 1 = 'MARQ PLUS' ;
  620. tbid . 'TITRE' . 1 = 'Cal.init.' ;
  621. tbid . 2 = 'MARQ ETOI' ;
  622. tbid . 'TITRE' . 2 = ' Ref.' ;
  623. tbid . 3 = 'MARQ CROI' ;
  624. tbid . 'TITRE' . 3 = 'Cal.lim.' ;
  625. REPE b2 (DIME evref) ;
  626. evri = EXTR evref 'COUR' &b2 ;
  627. xmri = EXTR (EXTR evri 'ABSC') (DIME (EXTR evri 'ABSC')) ;
  628. SI (&b2 EGA 1) ;
  629. evcal = evxx ;
  630. FINSI ;
  631. SI (&b2 EGA 2) ;
  632. evcal = evyy ;
  633. FINSI ;
  634. SI (&b2 EGA 3) ;
  635. evcal = evxy ;
  636. FINSI ;
  637. ymcal = IPOL xmri evcal ;
  638. xcal2 = PROG ;
  639. ycal2 = PROG ;
  640. REPE b3 (DIME (EXTR evcal 'ABSC')) ;
  641. xx = EXTR (EXTR evcal 'ABSC') &b3 ;
  642. yy = EXTR (EXTR evcal 'ORDO') &b3 ;
  643. SI (xx >EG xmri) ;
  644. QUIT b3 ;
  645. FINSI ;
  646. xcal2 = xcal2 ET (PROG xx) ;
  647. ycal2 = ycal2 ET (PROG yy) ;
  648. FIN b3 ;
  649. xcal2 = xcal2 ET (PROG xmri) ;
  650. ycal2 = ycal2 ET (PROG ymcal) ;
  651. evcal2 = EVOL MANU 'EPZZ' xcal2 'CONTRAINTE' ycal2 ;
  652. ivref = INTG evri ;
  653. ivcal = INTG evcal2 ;
  654. ec1 = ivcal - ivref ;
  655. er1 = ec1 / ivref ;
  656. tit0 = CHAI (tleg . 'TITRE' . &b2) ' Aire courb.ref' ivref ' Aire courb.cal' ivcal ' Ec.Rel.' er1;
  657. SI ITRAC1 ;
  658. DESS (evcal et evri et evcal2) 'TITR' tit0 'LEGE' tbid ;
  659. FINSI ;
  660. MESS ' Courbe :' (tleg . 'TITRE' . &b2) ' vs EPXX, Ecart relatif entre Calcul et Reference :' er1 ;
  661. SAUT 1 LIGN ;
  662. FIN b2 ;
  663. OPTI ECHO 1 ;
  664.  
  665. * deformee et vecteurs principaux
  666. REPE b1 (DIME tt) ;
  667. tps1 = tt . (&b1 - 1) ;
  668. * trace de la deformee (pour controle visuel)
  669. *nh145313
  670. * def1 = DEFO mail (tu . (&b1 - 1)) 1000. 'ROUG' ;
  671. def1 = DEFO mail (tu . (&b1 - 1)) 500. 'ROUG' ;
  672. tit1 = CHAI '[2D Plan cont.] Deformee au temps' ' ' tps1 ;
  673. SI ITRAC1 ;
  674. * TRAC (def0 ET def1) 'TITR' tit1 ;
  675. FINSI ;
  676. FIN b1 ;
  677. SI ITRAC1 ;
  678. TRAC (def0 ET def1) 'TITR' tit1 ;
  679. FINSI ;
  680. REPE b1 (DIME tt) ;
  681. tps1 = tt . (&b1 - 1) ;
  682. * trace des vecteurs contraintes principales
  683. vecs = VECT (tprin . 'CONTRAINTES' . (&b1 - 1)) mo2 1.E-7 ;
  684. tit1 = CHAI '[2D Plan cont.] Directions principales au temps' ' ' tps1 ;
  685. SI ITRAC1 ;
  686. * TRAC vecs (rep1 ET mail) 'TITR' tit1 ;
  687. SI (tps1 EGA 5.52E-1) ;
  688. TRAC vecs (rep1 ET mail) 'TITR' tit1 ;
  689. FINSI ;
  690. FINSI ;
  691. FIN b1 ;
  692. SI ITRAC1 ;
  693. * TRAC vecs (rep1 ET mail) 'TITR' tit1 ;
  694. FINSI ;
  695. FINSI ;
  696.  
  697.  
  698.  
  699.  
  700.  
  701. FIN ;
  702.  
  703.  
  704.  

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