Télécharger vari-youn-3.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : vari-youn-3.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. **************************************************************
  5. *
  6. * C'est un k-test dont le but est de tester le fonctionnement
  7. * de PASAPAS avec la variation des données matérielles.
  8. *
  9. * Il s'agit d'une barre en traction simple. Son module de Young
  10. * dépend linéairement du paramètre d'évolution (à la fin du
  11. * chargement on descend à 10% de la valeur initiale).
  12. *
  13. * Pour la résolution, on utilise le mécanisme de traitement
  14. * des matériaux variables implanté dans PASAPAS. La variable
  15. * utilisée par cette mécanique porte le nom T, ce chargement
  16. * est donc considéré comme un chargement thermique. Par contre
  17. * on ne fait aucun calcul thermique.
  18. *
  19. **************************************************************
  20.  
  21. *** Options ...
  22.  
  23. opti dime 2 mode plan defo elem seg2 echo 1 ;
  24. * ajout de option epsilon lineaire pour la precision des test!
  25. OPTION epsilon lineaire;
  26. graph = faux ;
  27.  
  28. *** Paramètres ...
  29.  
  30. L = 10. ;
  31. H = 1. ;
  32. S = H * 1. ;
  33.  
  34. E_0 = 2.E+11 ;
  35. * E_1 = (2.0 * E_0) / (0.01 * L) ;
  36. E_1 = (-0.5 * E_0) / (0.1 * L) ;
  37.  
  38. * F = 1.E+10 ;
  39. F = 9.9E+9 ;
  40.  
  41. nbdiv = 1 ;
  42.  
  43. *** Points ...
  44.  
  45. dens (L / nbdiv) ;
  46.  
  47. p1 = 0 0 ;
  48. p2 = 0 H ;
  49.  
  50. *** Ligne ...
  51.  
  52. li1 = p1 d 1 p2 ;
  53.  
  54. *** Surface ...
  55.  
  56. opti elem qua4 ;
  57.  
  58. vectx = L 0 ;
  59. su1 = li1 tran nbdiv vectx ;
  60. pu = su1 poin proc vectx ;
  61.  
  62. titr 'Le maillage du modele' ;
  63. si(graph) ;
  64. trac su1 ;
  65. finsi ;
  66.  
  67. *** Modèle ...
  68.  
  69. listdepl = prog (-0.2 * L) (0.2 * L) ;
  70. listyoun = prog ;
  71. lon = dime listdepl ;
  72. repeter surdpl lon ;
  73. valdep = extr listdepl &surdpl ;
  74. valyou = E_0 + (E_1 * valdep) ;
  75. listyoun = listyoun et (prog valyou) ;
  76. fin surdpl ;
  77. titr 'Module de Young (deplacement)' ;
  78. evyou = evol manu T listdepl YOUN listyoun ;
  79. si(graph) ;
  80. dess evyou ;
  81. finsi ;
  82.  
  83. mo1 = mode su1 mecanique elastique ;
  84. ma1 = mate mo1 NU 0.0 YOUN evyou ALPH 0. ;
  85.  
  86. *** Préparation de la table pour PASAPAS ...
  87.  
  88. tabnl = table ;
  89. * tabnl . GRANDS_DEPLACEMENTS = vrai ;
  90. tabnl . MODELE = mo1 ;
  91. tabnl . CARACTERISTIQUES = ma1 ;
  92. cl1 = (bloq ux li1) et (bloq uy p1) ;
  93. tabnl . BLOCAGES_MECANIQUES = cl1 ;
  94.  
  95. ordmax = 1.8 ;
  96. * ldpl0 = manu CHML mo1 T 1.0 STRESSES ;
  97. evconst = evol manu 't' (prog 0. 1.)
  98. 'f(t)' (prog 0. ordmax) ;
  99. * chavar0 = char T ldpl0 evconst ;
  100. tbabsc = table ;
  101. tbabsc . 0 = 0. ;
  102. tbabsc . 1 = 1.000000001 ;
  103. tbordo = table ;
  104. tbordo . 0 = manu chpo su1 1 T 0. ;
  105. tbordo . 1 = manu chpo su1 1 T ordmax ;
  106. chavar0 = char T tbabsc tbordo ;
  107.  
  108. fobid = forc fx F (cote 3 su1) ;
  109. lr1 = prog 0. 1. ;
  110. lr2 = prog 0. 1. ;
  111. evbid = evol manu 't' lr1 'f(t)' lr2 ;
  112. chabid = char fobid evbid MECA ;
  113. tabnl . CHARGEMENT = chavar0 et chabid ;
  114.  
  115. nb_dt = 5 ;
  116. dt = 1.0 / nb_dt ;
  117. tabnl . TEMPS_CALCULES = prog 0. PAS dt 1. ;
  118.  
  119. *** Le calcul ...
  120.  
  121. pasapas tabnl ;
  122.  
  123. *** Petit post-traitement ...
  124.  
  125. listt = prog ;
  126. listux = prog ;
  127. listuxt = prog ;
  128. listfx = prog ;
  129. nbpas = dime (tabnl . TEMPS) ;
  130. repeter surpas nbpas ;
  131. lindice = &surpas - 1 ;
  132. listt = listt et (prog (tabnl . TEMPS . lindice)) ;
  133. laforc = F * (tabnl . TEMPS . lindice) ;
  134. listfx = listfx et (prog laforc) ;
  135. fauxdepl = ipol (tabnl . TEMPS . lindice) (extr evconst
  136. ABSC) (extr evconst ORDO) ;
  137. mess '-------------------------------------' ;
  138. mess 'fauxdepl = ' fauxdepl ;
  139. E_act = E_0 + (E_1 * fauxdepl) ;
  140. mess 'E_act = ' E_act ;
  141. uxbid = (laforc * L) / (E_act * S) ;
  142. listuxt = listuxt et (prog uxbid) ;
  143. depact = tabnl . DEPLACEMENTS . lindice ;
  144. ledepl = extr depact UX pu ;
  145. listux = listux et (prog ledepl) ;
  146. fin surpas ;
  147.  
  148. titr 'La deformee' ;
  149. defo0 = defo su1 depact 0.0 ;
  150. defo1 = defo su1 depact ROUG ;
  151. si(graph) ;
  152. trac (defo0 et defo1) ;
  153. finsi ;
  154.  
  155. titr 'Courbe de traction provenant de PASAPAS' ;
  156. courbetr = evol manu 'FX' listfx 'UX' listux ;
  157. si(graph) ;
  158. dess courbetr ;
  159. finsi ;
  160.  
  161. titr 'Courbes de traction PASAPAS + théorique' ;
  162. courbteo = evol ROUG manu 'FX' listfx 'UX' listuxt ;
  163. si(graph) ;
  164. dess (courbetr et courbteo) ;
  165. finsi ;
  166.  
  167. *** Vérification de la précision du calcul ...
  168.  
  169. chtit = chai 'Difference entre le depl. fourni par PASAPAS'
  170. ' et le depl. analytique' ;
  171. titr chtit ;
  172. ladiff = courbetr - courbteo ;
  173. ladiff = evol manu (extr ladiff ABSC) (abs (extr ladiff ORDO)) ;
  174. si(graph) ;
  175. dess ladiff ;
  176. finsi ;
  177. precis = maxi (extr ladiff ORDO) ;
  178. mess 'Écart maxi = ' precis ;
  179.  
  180. si(precis > 1.e-7) ;
  181. erre 5 ;
  182. finsi ;
  183.  
  184. *** Bye ...
  185.  
  186. fin ;
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  

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