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

Retour à la liste

Numérotation des lignes :

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

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