Télécharger rupt26.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : rupt26.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4.  
  5. *******************************************************
  6. * Test rupt26.dgibi: Jeux de données *
  7. * --------------------------------- *
  8. *******************************************************
  9.  
  10. *Cas test de validation pour le calcul de J sous plusieurs chargement
  11. *avec les procedures g_theta.procedur et g_calcul.procedur
  12. *
  13. *- chargement avec pression sur levres avec plusieurs types d elements
  14. * sur le maillage de la fissure
  15.  
  16. *Calcul en dimension 3 avec des elements CU20 et PRI15 sur un maillage
  17. *complet symetrique
  18.  
  19.  
  20. * DONNEES GEOMETRIQUES
  21. *--------------------
  22. opti dime 3 elem cu20 echo 0;
  23. zz = 1e-6 ;
  24.  
  25. aa = 2. ; Rsa = 5. ;
  26. *
  27. R = Rsa * aa ;
  28. dda = aa / 40. ;
  29. *
  30. * ----- MAILLAGE
  31. *
  32. pfond = aa 0. 0. ;
  33. np = 4 ; nt = 10 ;
  34. p1 = pfond plus ((np*dda) 0. 0.) ;
  35. p2 = p1 plus (0. 0. (np*dda)) ;
  36. p4 = pfond moin ((np*dda) 0. 0.) ;
  37. p3 = p4 plus (0. 0. (np*dda)) ;
  38. ss1 = (p1 d np pfond d np p4) tran np (0. 0. (np*dda)) ;
  39. p5 = pfond plus ((aa / 2.) 0. 0.) ;
  40. p6 = p5 plus (0. 0. (aa / 2.)) ;
  41. p8 = pfond moin ((aa / 2.) 0. 0.) ;
  42. p7 = p8 plus (0. 0. (aa / 2.)) ;
  43. ll1 = p1 d np p2 d (2*np) p3 d np p4 ;
  44. ll2 = p5 d np p6 d (2*np) p7 d np p8 ;
  45. ss2 = ll1 regl ll2 dini dda dfin (aa/8.) ;
  46.  
  47. dx = R - (1.5 * aa) ;
  48. ss3 = (p5 d np p6) tran (dx 0. 0.) dini (aa/4.) dfin aa ;
  49. ss4 = ss1 et ss2 et ss3 ; elim zz ss4 ;
  50. vv1 = ss4 volu nt rota 90. (0. 0. 0.) (0. 0. 1.) ;
  51.  
  52. pc = 0. 0. 0. ;
  53. p9 = 0. (aa / 2.) 0. ;
  54. nq = 4 ;
  55. ll3 = (p8 c nt pc p9) et (p9 d nq pc d nq p8) ;
  56. ss5 = surf ll3 plane ;
  57. vv2 = ss5 volu tran np (0. 0. (aa / 2.)) ;
  58. elim zz (vv1 et vv2) ;
  59.  
  60. ss6 = (vv1 et vv2) poin plan p6 p7 (0. 1. (aa / 2.)) zz ;
  61. ss7 = (enve (vv1 et vv2)) elem appuye strictement ss6 ;
  62. dz = R - (0.5 * aa) ;
  63. vv3 = ss7 volu tran (0. 0. dz) dini (aa/4.) dfin aa ;
  64.  
  65. vtot = vv1 et vv2 et vv3 ;
  66.  
  67. *---------- Lignes et surfaces nommées
  68. ss0 = vtot poin plan pc p8 p9 zz ;
  69. ss1 = (enve vtot) elem appuye strictement ss0 ;
  70. chx = ss1 coor 1 ; chy = ss1 coor 2 ;
  71. chr = ((chx ** 2) + (chy ** 2)) ** 0.5 ;
  72. chrr = chan cham chr ss1 ;
  73. sulev = chrr elem infe (aa - zz) ;
  74. sulig = diff ss1 sulev ;
  75. ffis = (cont sulev) elem appuye strictement sulig ;
  76.  
  77. ss0 = vtot poin plan pc p8 p7 zz ;
  78. symy = (enve vtot) elem appuye strictement ss0 ;
  79.  
  80. ss0 = vtot poin plan pc p9 (0. 0. 1.) zz ;
  81. symx = (enve vtot) elem appuye strictement ss0 ;
  82.  
  83. ss0 = vtot point plan (0. 0. R) (1. 0. R) (0. 1. R) zz ;
  84. ssup = (enve vtot) elem appuye strictement ss0 ;
  85.  
  86. ******************************************************************
  87.  
  88. *-- Modele mecanique et parametres materiau
  89. EI20 = 197000. ; ALI20 = 15.54E-6 ;
  90. mo2 = MODE vtot MECANIQUE ELASTIQUE ISOTROPE ;
  91. ma2 = MATE mo2 'YOUN' EI20 'NU' 0.3 'ALPH' AlI20 ;
  92. ri1 = RIGI mo2 ma2 ;
  93.  
  94. *--- Conditions aux limites
  95. * Blocages
  96. cd1 = BLOQ symx 'UX' ;
  97. cd2 = BLOQ symy 'UY' ;
  98. cd3 = BLOQ sulig 'UZ' ;
  99. cdl = cd1 ET cd2 ET cd3 ;
  100. *Traction uniaxiale (via un modele de pression)
  101. pp = 100. ;
  102. moph = MODE ssup 'CHARGEMENT' 'PRESSION' 'CONS' 'HAUT' ;
  103. *Pression sur les levres (via un modele de pression)
  104. mopl = MODE sulev 'CHARGEMENT' 'PRESSION' 'CONS' 'LEVRES' ;
  105.  
  106. * Construction des second membres
  107. maph = MATE moph 'PRES' pp ;
  108. effN = BSIG moph maph ;
  109. mapl1 = MATE mopl 'PRES' pp ;
  110. ff0 = BSIG mopl mapl1 ;
  111. zer1 = ZERO mopl 'RIGIDITE' ;
  112. chx chy chz = COOR zer1 ;
  113. chr = (((chx ** 2) + (chy ** 2)) ** 0.5) / aa ;
  114. *ch2 = pp * ((1. - (chr ** 2)) ** 0.5) ;
  115. ch2 = pp * (chr ** 2) ;
  116. mapl2 = MATE mopl 'PRES' ch2 ;
  117. ff2 = BSIG mopl mapl2 ;
  118.  
  119.  
  120. *--- 11 - RESOLUTION
  121. depN dep0 dep2 = RESO (ri1 ET cdl) effN ff0 ff2 ;
  122.  
  123.  
  124. *--- 12 - Calcul de J pour les trois conditions aux limites
  125. *----------------------------------------------------------
  126. EE = EI20 / 910. ; rpa = (3.1416 * aa / 1000.) ** 0.5 ;
  127. * cas 1 : traction seule
  128. SUPTAB = TABLE;
  129. SUPTAB.'MODELE' = mo2 ET moph ;
  130. SUPTAB.'CARACTERISTIQUES' = ma2 ET maph ;
  131. SUPTAB.'BLOCAGES_MECANIQUES' = cdl ;
  132. SUPTAB.'OBJECTIF' = 'J' ;
  133. SUPTAB.'LEVRE_SUPERIEURE'= sulev ;
  134. SUPTAB.'COUCHE' = 4 ;
  135. SUPTAB.'FRONT_FISSURE' = ffis ;
  136. SUPTAB.'SOLUTION_RESO' = depN ;
  137. G_THETA SUPTAB ;
  138. Jc0 = suptab.resultats.global ;
  139. kc0 = (Jc0 * EE) ** 0.5 ;
  140. ic0 = kc0 / rpa / pp ;
  141.  
  142. * cas 2 : pression uniforme sur les levres
  143. SUPTAB.'MODELE' = mo2 ET mopl ;
  144. SUPTAB.'CARACTERISTIQUES' = ma2 ET mapl1 ;
  145. SUPTAB.'SOLUTION_RESO' = dep0 ;
  146. G_THETA SUPTAB ;
  147. Jc1 = suptab.resultats.global ;
  148. kc1 = (Jc1 * EE) ** 0.5 ;
  149. ic1 = kc1 / rpa / pp ;
  150.  
  151. * cas 3 : pression parabolique sur les levres
  152. SUPTAB.'MODELE' = mo2 ET mopl ;
  153. SUPTAB.'CARACTERISTIQUES' = ma2 ET mapl2 ;
  154. SUPTAB.'SOLUTION_RESO' = dep2 ;
  155. G_THETA SUPTAB ;
  156. Jc2 = suptab.resultats.global ;
  157. kc2 = (Jc2 * EE) ** 0.5 ;
  158. ic2 = kc2 / rpa / pp ;
  159.  
  160.  
  161.  
  162.  
  163. ********************
  164. * CALCUL DE L'ERREUR
  165. ********************
  166. **---> Les 2 résultats doivent être identiques
  167. **---> et converger vers la solution d'Irwin : 2/Pi
  168. **---> Le résultat ic2 doit lui converger vers 4/(3.Pi)
  169. err0 = ABS (100. * ((ic0 * pi / 2.) - 1.)) ;
  170. err1 = ABS (100. * ((ic1 * pi / 2.) - 1.)) ;
  171. err2 = ABS (100. * ((ic2 * 3. * pi / 4.) - 1.)) ;
  172.  
  173.  
  174. ****************************************
  175. * AFFICHAGE DES RESULTATS ET DES ERREURS
  176. ****************************************
  177. SAUT 5 'LIGNE' ;
  178.  
  179. mess 'Erreurs en % : ' err0 err1 err2 ;
  180.  
  181. SI (err0 > 0.6) ;
  182. ERRE 'Erreur sur le calcul de Jc0' ;
  183. FINS ;
  184. SI (err1 > 0.6) ;
  185. ERRE 'Erreur sur le calcul de Jc1' ;
  186. FINS ;
  187. SI (err2 > 0.4) ;
  188. ERRE 'Erreur sur le calcul de Jc2' ;
  189. FINS ;
  190.  
  191.  
  192. FIN;
  193.  
  194.  
  195.  

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