Télécharger test_AMITEX.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : test_AMITEX.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. *23456789123456789123456789123456789123456789123456789123456789123456789
  5. *
  6. * CAS TESTS POUR L'UTILISATION DES PROCEDURES D'APPLICATION DES
  7. * CONDITIONS AUX LIMITES ET DE CALCUL DE COMPORTEMENT MOYEN
  8. *
  9. * CAS CONSIDERES :
  10. * CAS HOMOGENE ANISOTROPE
  11. * CAS "MATRICE/INCLUSION SPHERIQUE" SUR MAILLAGE REGULIER
  12. *
  13. * L. GELEBART, DECEMBRE 2009
  14. *=======================================================================
  15. *
  16. * PARAMETRES
  17. *=======================================================================
  18. NEL0 = 8;
  19. NEL1 = 2;
  20. VISU0 = 1;
  21. * proprietes elastiques de l'inclusion et de la matrice
  22. EI0 = 100.;
  23. EM0 = 400.;
  24. NUI0 = 0.3;
  25. NUM0 = 0.1;
  26. * Position et rayon de l'inclusion
  27. DX0 = 0.3;
  28. DY0 = 0.4;
  29. DZ0 = 0.6;
  30. R0 = 0.25;
  31. E0 = 0.1;
  32. * Chargement
  33. CTAB = TABLE;
  34. CTAB . 1 = 1.; CTAB . 2 = 2.; CTAB . 3 = 3.;
  35. CTAB . 4 = 4.; CTAB . 5 = 5.; CTAB . 6 = 6.;
  36.  
  37. * Tolerance sur les tests
  38. tol0 = 1e-9;
  39.  
  40. *
  41. * GEOMETRIE ET MATERIAUX
  42. *=======================================================================
  43. *
  44. * cas matrice/inclusion sur maillage regulier
  45. *----------------------------------------------
  46. P1 = 0. 0. 0.;
  47. P2 = 1. 0. 0.;
  48. P3 = 1. 1. 0.;
  49. P4 = 0. 1. 0.;
  50. OPTI ELEM SEG2;
  51. P1P2 = DROI P1 P2 NEL0;
  52. P2P3 = DROI P2 P3 NEL0;
  53. P3P4 = DROI P3 P4 NEL0;
  54. P4P1 = DROI P4 P1 NEL0;
  55. OPTI ELEM QUA4;
  56. SURF0 = DALL P1P2 P2P3 P3P4 P4P1;
  57. OPTI DIME 3 ELEM CUB8;;
  58. VOL0 = SURF0 VOLU NEL0 TRANS (0. 0. 1.);
  59. *
  60. MODTOT0 = MODE VOL0 MECANIQUE ELASTIQUE;
  61. UN0 = MANU CHML VOL0 SCAL 1.;
  62. X0 = (COOR 1 VOL0) - DX0;
  63. Y0 = (COOR 2 VOL0) - DY0;
  64. Z0 = (COOR 3 VOL0) - DZ0;
  65. DIST0 = ((X0 * X0 ) + (Y0 * Y0) + (Z0 * Z0)) ** 0.5;
  66. DIST0 = CHAN CHAM DIST0 MODTOT0 RIGIDITE;
  67. INCL0 = MASQUE DIST0 INFERIEUR R0;
  68. MATR0 = MASQUE DIST0 SUPERIEUR R0;
  69. YOUN0 = (EI0 * INCL0) + (EM0 * MATR0);
  70. NU0 = (NUI0 * INCL0) + (NUM0 * MATR0);
  71. MATTOT0 = MATE MODTOT0 YOUN YOUN0 NU NU0;
  72. RIGMAT0 = RIGI MODTOT0 MATTOT0;
  73. *
  74. * cas homogene anisotrope
  75. *-------------------------------------------
  76. P1 = 0. 0. 0.;
  77. P2 = 1. 0. 0.;
  78. P3 = 1. 1. 0.;
  79. P4 = 0. 1. 0.;
  80. OPTI ELEM SEG2;
  81. P1P2 = DROI P1 P2 NEL1;
  82. P2P3 = DROI P2 P3 NEL1;
  83. P3P4 = DROI P3 P4 NEL1;
  84. P4P1 = DROI P4 P1 NEL1;
  85. OPTI ELEM QUA4;
  86. SURF0 = DALL P1P2 P2P3 P3P4 P4P1;
  87. OPTI DIME 3 ELEM CUB8;;
  88. VOL1 = SURF0 VOLU NEL1 TRANS (0. 0. 1.);
  89. *
  90. DIR0 = POIN 1. 0. 0.;
  91. DIR1 = POIN 0. 1. 0.;
  92. MODTOT1 = MODE VOL1 MECANIQUE ELASTIQUE ANISOTROPE;
  93. D110 = 123;
  94. D210 = 45;
  95. D220 = 678;
  96. D310 = 91;
  97. D320 = 23;
  98. D330 = 456;
  99. D410 = 10;
  100. D420 = 11;
  101. D430 = 12;
  102. D440 = 222;
  103. D510 = 2;
  104. D520 = 4;
  105. D530 = 6;
  106. D540 = 8;
  107. D550 = 777;
  108. D610 = 10;
  109. D620 = 14;
  110. D630 = 16;
  111. D640 = 18;
  112. D650 = 13;
  113. D660 = 321;
  114. MATTOT1= MODTOT1 MATE DIRECTION DIR0 DIR1 PARALLELE D11 D110 D21 D210
  115. D22 D220 D31 D310 D32 D320 D33 D330 D41 D410 D42 D420 D43 D430 D44
  116. D440 D51 D510 D52 D520 D53 D530 D54 D540 D55 D550 D61 D610 D62
  117. D620 D63 D630 D64 D640 D65 D650 D66 D660;
  118. K0 = TABLE;
  119. K0 . 1 = TABLE;
  120. K0 . 1 . 1 = D110; K0 . 1 . 2 = D210; K0 . 1 . 3 = D310;
  121. K0 . 1 . 4 = D410; K0 . 1 . 5 = D510; K0 . 1 . 6 = D610;
  122. K0 . 2 = TABLE;
  123. K0 . 2 . 1 = D210; K0 . 2 . 2 = D220; K0 . 2 . 3 = D320;
  124. K0 . 2 . 4 = D420; K0 . 2 . 5 = D520; K0 . 2 . 6 = D620;
  125. K0 . 3 = TABLE;
  126. K0 . 3 . 1 = D310; K0 . 3 . 2 = D320; K0 . 3 . 3 = D330;
  127. K0 . 3 . 4 = D430; K0 . 3 . 5 = D530; K0 . 3 . 6 = D630;
  128. K0 . 4 = TABLE;
  129. K0 . 4 . 1 = D410; K0 . 4 . 2 = D420; K0 . 4 . 3 = D430;
  130. K0 . 4 . 4 = D440; K0 . 4 . 5 = D540; K0 . 4 . 6 = D640;
  131. K0 . 5 = TABLE;
  132. K0 . 5 . 1 = D510; K0 . 5 . 2 = D520; K0 . 5 . 3 = D530;
  133. K0 . 5 . 4 = D540; K0 . 5 . 5 = D550; K0 . 5 . 6 = D650;
  134. K0 . 6 = TABLE;
  135. K0 . 6 . 1 = D610; K0 . 6 . 2 = D620; K0 . 6 . 3 = D630;
  136. K0 . 6 . 4 = D640; K0 . 6 . 5 = D650; K0 . 6 . 6 = D660;
  137.  
  138. RIGMAT1 = RIGI MODTOT1 MATTOT1;
  139. *
  140. * VALIDATION DES CHARGEMENTS MOYENS IMPOSES
  141. * SUR CAS TEST "MATRICE INCLUSION"
  142. *=======================================================================
  143. * Definition des chargements pour differents types de CL
  144. *-------------------------------------------------------
  145. RIGCL1 DEPI1 = @CLIM @CLPC VOL0 CTAB;
  146. RIGCL2 DEPI2 = @CLIM @CLDHC VOL0 CTAB;
  147. RIGCL3 DEPI3 = @CLIM @CLMI1C VOL0 CTAB;
  148. RIGCL4 DEPI4 = @CLIM @CLMI2C VOL0 CTAB;
  149. RIGCL5 DEPI5 = @CLIM @CLCH VOL0 CTAB;
  150. RIGCL6 DEPI6 = @CLIM @CLPD VOL0 CTAB;
  151. RIGCL7 DEPI7 = @CLIM @CLDH VOL0 CTAB;
  152. * Resolution elastique
  153. *--------------------------------------------------------
  154. DEPT = TABLE;
  155. DEPT . 1 = RESOU (RIGCL1 ET RIGMAT0) DEPI1;
  156. DEPT . 2 = RESOU (RIGCL2 ET RIGMAT0) DEPI2;
  157. DEPT . 3 = RESOU (RIGCL3 ET RIGMAT0) DEPI3;
  158. DEPT . 4 = RESOU (RIGCL4 ET RIGMAT0) DEPI4;
  159. DEPT . 5 = RESOU (RIGCL5 ET RIGMAT0) DEPI5;
  160. DEPT . 6 = RESOU (RIGCL6 ET RIGMAT0) DEPI6;
  161. DEPT . 7 = RESOU (RIGCL7 ET RIGMAT0) DEPI7;
  162. * Validation
  163. * pour les chargements en contrainte moyenne imposee
  164. *--------------------------------------------------------
  165. V0 = MESU VOL0;
  166. i = 0;
  167. REPETE BOU0 5;
  168. i = i + 1;
  169. SIG0 = SIGMA MODTOT0 MATTOT0 (DEPT . i) 'LINE';
  170. SXX0 = (INTG SIG0 MODTOT0 SMXX) / V0;
  171. SYY0 = (INTG SIG0 MODTOT0 SMYY) / V0;
  172. SZZ0 = (INTG SIG0 MODTOT0 SMZZ) / V0;
  173. SXY0 = (INTG SIG0 MODTOT0 SMXY) / V0;
  174. SXZ0 = (INTG SIG0 MODTOT0 SMXZ) / V0;
  175. SYZ0 = (INTG SIG0 MODTOT0 SMYZ) / V0;
  176. *MESS SXX0;
  177. *MESS SYY0;
  178. *MESS SZZ0;
  179. *MESS SXY0;
  180. *MESS SXZ0;
  181. *MESS SYZ0;
  182. SI ((ABS (SXX0 - (CTAB . 1))) > tol0);ERRE 5;FINSI;
  183. SI ((ABS (SYY0 - (CTAB . 2))) > tol0);ERRE 5;FINSI;
  184. SI ((ABS (SZZ0 - (CTAB . 3))) > tol0);ERRE 5;FINSI;
  185. SI ((ABS (SXY0 - (CTAB . 4))) > tol0);ERRE 5;FINSI;
  186. SI ((ABS (SXZ0 - (CTAB . 5))) > tol0);ERRE 5;FINSI;
  187. SI ((ABS (SYZ0 - (CTAB . 6))) > tol0);ERRE 5;FINSI;
  188. FIN BOU0;
  189. * Validation
  190. * pour les chargements en deformation moyenne imposee
  191. *--------------------------------------------------------
  192. i = 5;
  193. REPETE BOU0 2;
  194. i = i + 1;
  195. DEF0 = EPSI MODTOT0 MATTOT0 (DEPT . i) 'LINE' ;
  196. EXX0 = (INTG DEF0 MODTOT0 EPXX) / V0;
  197. EYY0 = (INTG DEF0 MODTOT0 EPYY) / V0;
  198. EZZ0 = (INTG DEF0 MODTOT0 EPZZ) / V0;
  199. EXY0 = (INTG DEF0 MODTOT0 GAXY) / (2 * V0);
  200. EXZ0 = (INTG DEF0 MODTOT0 GAXZ) / (2 * V0);
  201. EYZ0 = (INTG DEF0 MODTOT0 GAYZ) / (2 * V0);
  202. *MESS EXX0;
  203. *MESS EYY0;
  204. *MESS EZZ0;
  205. *MESS EXY0;
  206. *MESS EXZ0;
  207. *MESS EYZ0;
  208. SI ((ABS (EXX0 - (CTAB . 1))) > tol0);ERRE 5;FINSI;
  209. SI ((ABS (EYY0 - (CTAB . 2))) > tol0);ERRE 5;FINSI;
  210. SI ((ABS (EZZ0 - (CTAB . 3))) > tol0);ERRE 5;FINSI;
  211. SI ((ABS (EXY0 - (CTAB . 4))) > tol0);ERRE 5;FINSI;
  212. SI ((ABS (EXZ0 - (CTAB . 5))) > tol0);ERRE 5;FINSI;
  213. SI ((ABS (EYZ0 - (CTAB . 6))) > tol0);ERRE 5;FINSI;
  214. FIN BOU0;
  215. *
  216. * VALIDATION DU CALCUL DE COMPOTEMENT MOYEN
  217. * SUR CAS TEST HOMOGENE ANISOTROPE
  218. *=======================================================================
  219. VISU1 = TABLE;
  220. VISU1 . 1 = 0;
  221. VISU1 . 2 = 0;
  222. VISU1 . 3 = 0;
  223. CONV0 = 0;
  224. AMPL0 = 1.;
  225. *
  226. TK = TABLE;
  227. TK . 1 = TABLE;
  228. TK . 2 = TABLE;
  229. TK . 3 = TABLE;
  230. TK . 4 = TABLE;
  231. TK . 5 = TABLE;
  232. TK . 6 = TABLE;
  233. TK . 7 = TABLE;
  234. K C D = @KEFF MODTOT1 MATTOT1 @CLPC AMPL0 CONV0 VISU1;
  235. TK . 1 = K;
  236. K C D = @KEFF MODTOT1 MATTOT1 @CLPD AMPL0 CONV0 VISU1;
  237. TK . 2 = K;
  238. K C D = @KEFF MODTOT1 MATTOT1 @CLDH AMPL0 CONV0 VISU1;
  239. TK . 3 = K;
  240. K C D = @KEFF MODTOT1 MATTOT1 @CLDHC AMPL0 CONV0 VISU1;
  241. TK . 4 = K;
  242. K C D = @KEFF MODTOT1 MATTOT1 @CLCH AMPL0 CONV0 VISU1;
  243. TK . 5 = K;
  244. K C D = @KEFF MODTOT1 MATTOT1 @CLMI1C AMPL0 CONV0 VISU1;
  245. TK . 6 = K;
  246. K C D = @KEFF MODTOT1 MATTOT1 @CLMI2C AMPL0 CONV0 VISU1;
  247. TK . 7 = K;
  248. *
  249. ERR_K = 0;
  250. i=0;
  251. REPETE BOU0 7;
  252. i = i + 1;
  253. j = 0;
  254. REPETE BOUJ0 6;
  255. j = j + 1;
  256. k = 0;
  257. REPETE BOUK0 6;
  258. k = k + 1;
  259. ERR_K = ERR_K + (abs ((K0 . j . k) - (TK . i . j . k)));
  260. FIN BOUK0;
  261. FIN BOUJ0;
  262. MESS 'ERR_K = ' ERR_K;
  263. SI (ERR_K > tol0); ERRE 5; FINSI;
  264. ERR_K = 0;
  265. FIN BOU0;
  266.  
  267. *
  268. * Raouter les comparaison pilotage C et D pour DH et P
  269. *
  270. *
  271. FIN;
  272.  
  273.  
  274.  
  275.  

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