Télécharger fluage_fibre_polynomial_1.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : fluage_fibre_polynomial_1.dgibi
  2. ************************************************************************
  3. * Test du modele de fluage polynomial pour les modeles de section *
  4. * (appeles aussi modeles de poutre a fibre) *
  5. * --> chargement uniaxial en traction *
  6. * --> comparaison a la solution analytique *
  7. ************************************************************************
  8.  
  9.  
  10.  
  11. ** Options generales
  12. OPTI 'DIME' 3 'ELEM' 'QUA4' 'ECHO' 0 ;
  13. itrac = FAUX ;
  14.  
  15.  
  16. ** Parametres geometrie (poutre a section rectangulaire)
  17. a = 0.05 ;
  18. b = 0.02 ;
  19. l = 1. ;
  20. se = a * b ;
  21.  
  22.  
  23. ** Nombres d'elements
  24. nea = 5 ;
  25. neb = 5 ;
  26. nel = 10 ;
  27.  
  28.  
  29. ** Parametres materiau
  30. yo = 1.E8 ;
  31. nu = 0.3 ;
  32. af0 = 1.E-6 ;
  33. af1 = 1.E-12 ;
  34. af2 = 1.6 ;
  35. af3 = 1.E-10 ;
  36. af4 = 0.8 ;
  37. af5 = 2.E-9 ;
  38. af6 = 0.2 ;
  39.  
  40.  
  41. ** Parametres chargement
  42. ftrac = 500. ;
  43. tl = 25. ;
  44.  
  45.  
  46. ** Maillage et modele de section
  47. lig1 = DROI nea ((-0.5 * a) (-0.5 * b) 0.) ((0.5 * a) (-0.5 * b) 0.) ;
  48. s1 = lig1 TRAN neb (0. b 0.) ;
  49. s1 = SURF (CONT s1) 'PLAN' ;
  50. mos = MODE s1 'MECANIQUE' 'ELASTIQUE' 'PLASTIQUE' 'POLYNOMIAL' 'QUAS' 'TRIS' ;
  51. mas = MATE mos 'YOUN' yo 'NU' nu 'AF0' af0 'AF1' af1 'AF2' af2 'AF3' af3 'AF4' af4 'AF5' af5 'AF6' af6 'SMAX' (yo / 1000.) 'ALPY' 0.66 'ALPZ' 0.66 ;
  52.  
  53.  
  54. ** Maillage et modele de poutre TIMO
  55. p0 = 0. 0. 0. ;
  56. p1 = l 0. 0. ;
  57. lf = DROI nel p0 p1 ;
  58. mop = MODE lf 'MECANIQUE' 'ELASTIQUE' 'SECTION' 'PLASTIQUE' 'SECTION' 'TIMO' ;
  59. map = MATE mop 'MODS' mos 'MATS' mas 'VECT' (0. 1. 0.) ;
  60.  
  61.  
  62. ** Conditions aux limites
  63. tl0 = 1.E-5 ;
  64. evcha = EVOL 'MANU' (PROG 0. tl0 tl) (PROG 0. 1. 1.) ;
  65. bl1p = BLOQ 'DEPL' 'ROTA' p0 ;
  66. ftp = FORC (ftrac 0. 0.) p1 ;
  67. chaftp = CHAR 'MECA' ftp evcha ;
  68.  
  69.  
  70. ** Resolution
  71. xpas = tl / 50. ;
  72. ltc = PROG tl0 'PAS' xpas tl ;
  73. tp = TABL ;
  74. tp . 'MODELE' = mop ;
  75. tp . 'CARACTERISTIQUES' = map ;
  76. chmsg0 = ZERO mos 'CONTRAIN' ;
  77. chmvi0 = ZERO mos 'VARINTER' ;
  78. tp . 'VARIABLES_INTERNES' = TABL ;
  79. tp . 'VARIABLES_INTERNES' . 0 = MANU 'CHML' mop 'VONS' chmsg0 'VAIS' chmvi0 'TYPE' 'VARIABLES INTERNES' 'STRESSES' ;
  80. tp . 'BLOCAGES_MECANIQUES' = bl1p ;
  81. tp . 'CHARGEMENT' = chaftp ;
  82. tp . 'TEMPS_CALCULES' = ltc ;
  83. PASAPAS tp ;
  84. itp1 = TEMP 'HORL' ;
  85. MESS 'Temps horloge :' ' ' itp1 ;
  86.  
  87.  
  88. ** Post traitement
  89. n1 = DIME (tp . 'TEMPS') ;
  90. * deplacements de l'extremite
  91. lup = EXTR (EVOL 'TEMP' tp 'DEPLACEMENTS' 'UX' p1) 'ORDO' ;
  92. * force de reaction a l'encastrement
  93. lfp = EXTR (EVOL 'TEMP' tp 'REACTIONS' 'FX' p0) 'ORDO' ;
  94. * defomration inelastique moyenne dans la poutre
  95. ltps = PROG ;
  96. lep = PROG 0. ;
  97. REPE b1 (n1 - 1) ;
  98. tps1 = tp . 'TEMPS' . &b1 ;
  99. ltps = ltps ET tps1 ;
  100. up = tp . 'DEPLACEMENTS' . &b1 ;
  101. tabv = TABL ;
  102. tabv . 'DEPLACEMENTS' = TABL ;
  103. tabv . 'DEPLACEMENTS' . 1 = up ;
  104. tabv . 'VONS' = TABL ;
  105. tabv . 'VONS' . 1 = EXCO (tp . 'VARIABLES_INTERNES' . &b1) 'VONS' ;
  106. tabv . 'VAIS' = TABL ;
  107. tabv . 'VAIS' . 1 = EXCO (tp . 'VARIABLES_INTERNES' . &b1) 'VAIS' ;
  108. mail1 = POUT2MAS mop map 'GAUSS' tabv ;
  109. vips = tabv . 'VAIS_3D' . 1 ;
  110. mobid = MODE mail1 'MECANIQUE' ;
  111. cham1 = CHAN 'CHAM' mobid vips ;
  112. epsep = (INTG mobid cham1 'EPSE') * l / nel / se ;
  113. lep = lep ET epsep ;
  114. FIN b1 ;
  115.  
  116.  
  117. ** Solutions analytiques
  118. sigt = (ABS ftrac) / se ;
  119. let = (af0 + (af1 * (sigt ** af2)) + (af3 * (sigt ** af4)) + (af5 * (sigt ** af6))) * ltps ;
  120. lut = (let + (sigt / yo)) / l ;
  121. lft = PROG 0. (n1 - 1)*(-1. * ftrac) ;
  122. let = (PROG 0.) ET let ;
  123. lut = (PROG 0.) ET lut ;
  124. ltps = (PROG 0.) ET ltps ;
  125. evut = EVOL 'MANU' 'DEFA' ltps lut ;
  126. evft = EVOL 'MANU' 'DEFA' ltps lft ;
  127. evet = EVOL 'MANU' 'DEFA' ltps let ;
  128.  
  129.  
  130. ** Analyse/trace des resultats
  131. tleg = TABL ;
  132. tleg . 2 = MOT 'MARQ ROND NOLI' ;
  133. tleg . 'TITRE' = TABL ;
  134. tleg . 'TITRE' . 1 = 'Soluce analytique' ;
  135. tleg . 'TITRE' . 2 = 'Modele poutre fibre' ;
  136. MESS 'Ecart relatif max.' ;
  137. evup = EVOL 'ROUG' 'MANU' 'Temps' ltps 'Deplacement' lup ;
  138. difu = (MAXI (ABS (lup - lut))) / (MAXI (ABS lut)) ;
  139. MESS '-- deplacement :' difu ;
  140. SI itrac ;
  141. DESS (evut ET evup) 'TITR' 'Deplacement vs. Temps' 'LEGE' tleg ;
  142. FINSI ;
  143. evfp = EVOL 'ROUG' 'MANU' 'Temps' ltps 'Force' lfp ;
  144. diff = (MAXI (ABS (lfp - lft))) / (MAXI (ABS lft)) ;
  145. MESS '-- effort :' diff ;
  146. SI itrac ;
  147. DESS (evft ET evfp) 'TITR' 'Force vs. Temps' 'LEGE' tleg ;
  148. FINSI ;
  149. evep = EVOL 'ROUG' 'MANU' 'TEMPS' ltps 'ESPE' lep ;
  150. dife = (MAXI (ABS (lep - let))) / (MAXI (ABS let)) ;
  151. MESS '-- def. fluage :' dife ;
  152. SI itrac ;
  153. DESS (evet ET evep) 'TITR' 'Deformation non lin. (EPSE) vs Temps' 'LEGE' tleg ;
  154. FINSI ;
  155.  
  156.  
  157. ** Erreur si l'ecart relatif est trop eleve
  158. lerr = PROG difu diff dife ;
  159. errmax = MAXI lerr ;
  160. SI (errmax > 1.E-6) ;
  161. MESS 'Echec du cas test !' ;
  162. ERRE 5 ;
  163. SINON ;
  164. MESS 'Succes du cas test !' ;
  165. FINSI ;
  166.  
  167.  
  168. FIN ;
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  

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