Télécharger @solvmec_01.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : @solvmec_01.dgibi
  2. ************************************************************************
  3. * Test du mini solveur mecanique (procedure @SOLVMEC) *
  4. * - eprouvette entaillee en traction *
  5. * - comportement elastique *
  6. * - calcul en grands deplacements *
  7. * - calcul avec acceleration de convegence *
  8. * *
  9. * On compare les resultats a ceux de la procedure PASAPAS *
  10. ************************************************************************
  11.  
  12.  
  13.  
  14. ** Options generales
  15. OPTI 'DIME' 2 'ELEM' 'QUA4' 'MODE' 'PLAN' 'CONT' 'ECHO' 0 ;
  16.  
  17.  
  18. ** Geometrie : barre rectangulaire l x h avec une
  19. * entaille circulaire de largeur le et profondeur pe
  20. l = 1.0 ;
  21. h = 0.1 ;
  22. le = 0.1 * l ;
  23. pe = 0.1 * h ;
  24.  
  25.  
  26. ** Maillage
  27. ne = 51 ;
  28. * barre rectangulaire
  29. p0 = 0. 0. ;
  30. p1 = l 0. ;
  31. lb = DROI ne p0 p1 ;
  32. mai = lb TRAN 3 (0. h) ;
  33. ld = mai COTE 2 ;
  34. lh = mai COTE 3 ;
  35. lg = mai COTE 4 ;
  36. * deplacement des noeuds pour l'entaille circulaire
  37. p2 = ((l - le) / 2.) h ;
  38. p3 = ((l + le) / 2.) h ;
  39. re = (pe / 2.) + (le * le / (8. * pe)) ;
  40. p4 = (l / 2.) (h - pe + re) ;
  41. xh yh = COOR lh ;
  42. pmil = xh POIN 'COMPRIS' (COOR 1 p2) (COOR 1 p3) ;
  43. DEPL pmil 'PROJ' 'CYLI' (0. 1.) 'CERC' p4 p2 ;
  44. cmai = CONT mai ;
  45. *****TRAC mai 'TITR' 'Maillage' ;
  46.  
  47.  
  48. ** Modele et caracteristiques materiau
  49. mo = MODE mai 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE' ;
  50. ma = MATE mo 'YOUN' 1.E9 'NU' 0.3 ;
  51.  
  52.  
  53. ** Blocages
  54. clg = BLOQ 'UX' lg ;
  55. clb = BLOQ 'UY' lb ;
  56. cld = BLOQ 'UX' ld ;
  57. cl = clg ET clb ET cld ;
  58.  
  59.  
  60. ** Chargement : deformation de gonflement imposee sur l'ensemble du maillage
  61. epg = 0.2 ;
  62. eps1 = MANU 'CHML' mo 'EPXX' epg 'EPYY' epg 'EPZZ' epg 'GAXY' 0. 'TYPE' 'DEFORMATIONS' 'STRESSES' ;
  63. feps = BSIG mo (ELAS mo ma eps1) ;
  64. ev1 = EVOL 'MANU' 'Temps' (PROG 0. 1.) 'Coef' (PROG 0. 1.) ;
  65. cha = CHAR 'MECA' feps ev1 ;
  66.  
  67.  
  68. ** Resolutions avec PASAPAS et @SOLVMEC
  69. tab1 = TABL ;
  70. tab1 . 'MODELE' = mo ;
  71. tab1 . 'CARACTERISTIQUES' = ma ;
  72. tab1 . 'BLOCAGES_MECANIQUES' = cl ;
  73. tab1 . 'CHARGEMENT' = cha ;
  74. tab1 . 'TEMPS_CALCULES' = PROG 0.005 'PAS' 0.005 1. ;
  75. tab1 . 'GRANDS_DEPLACEMENTS' = VRAI ;
  76. tab2 = COPI tab1 ;
  77.  
  78. PASAPAS tab1 ;
  79. tpp = TEMP 'HORL' ;
  80.  
  81. @SOLVMEC tab2 ;
  82. tms = TEMP 'HORL' ;
  83.  
  84.  
  85. ** Performances
  86. MESS 'Duree d''execution (ms)' ;
  87. MESS '----------------------' ;
  88. MESS 'PASAPAS :' ' ' tpp ;
  89. MESS '@SOLVMEC :' ' ' tms ;
  90.  
  91.  
  92. ** Post traitement : courbes F (resultante des reactions a gauche) vs Temps
  93. * Sig_min (contrainte XX min) vs Temps
  94. * Sig_max (contrainte XX max) vs Temps
  95. n1 = DIME (tab2 . 'TEMPS') ;
  96. ltp = PROG ;
  97. lsmin1 = PROG ;
  98. lsmin2 = PROG ;
  99. lsmax1 = PROG ;
  100. lsmax2 = PROG ;
  101. lr1 = PROG ;
  102. lr2 = PROG ;
  103. lersmin = PROG ;
  104. lersmax = PROG ;
  105. lerr = PROG ;
  106. REPE b1 n1 ;
  107. * temps
  108. ltp = ltp ET (tab1 . 'TEMPS' . (&b1 - 1)) ;
  109. * contrainte SMXX
  110. s1 = tab1 . 'CONTRAINTES' . (&b1 - 1) ;
  111. s2 = tab2 . 'CONTRAINTES' . (&b1 - 1) ;
  112. smin1 = MINI (EXCO 'SMXX' s1) ;
  113. smin2 = MINI (EXCO 'SMXX' s2) ;
  114. lsmin1 = lsmin1 ET smin1 ;
  115. lsmin2 = lsmin2 ET smin2 ;
  116. smax1 = MAXI (EXCO 'SMXX' s1) ;
  117. smax2 = MAXI (EXCO 'SMXX' s2) ;
  118. lsmax1 = lsmax1 ET smax1 ;
  119. lsmax2 = lsmax2 ET smax2 ;
  120. SI (NEG &b1 1) ;
  121. lersmin = lersmin ET (ABS ((smin1 - smin2) / smin1)) ;
  122. lersmax = lersmax ET (ABS ((smax1 - smax2) / smax1)) ;
  123. FINSI ;
  124. * effort de reaction
  125. r1 = tab1 . 'REACTIONS' . (&b1 - 1) ;
  126. r2 = tab2 . 'REACTIONS' . (&b1 - 1) ;
  127. SI (EGA &b1 1) ;
  128. rr1 = 0. ;
  129. rr2 = 0. ;
  130. SINON ;
  131. rr1 = @TOTAL r1 lg 'FX' ;
  132. rr2 = @TOTAL r2 lg 'FX' ;
  133. lerr = lerr ET (ABS ((rr1 - rr2) / rr1)) ;
  134. FINSI ;
  135. lr1 = lr1 ET rr1 ;
  136. lr2 = lr2 ET rr2 ;
  137. FIN b1 ;
  138. * ecarts relatifs max
  139. ersmin = MAXI 'ABS' lersmin ;
  140. ersmax = MAXI 'ABS' lersmax ;
  141. err = MAXI 'ABS' lerr ;
  142. MESS 'Ecarts relatifs max' ;
  143. MESS '-------------------' ;
  144. MESS 'Contrainte SMXX mini :' ' ' ersmin ;
  145. MESS 'Contrainte SMXX maxi :' ' ' ersmax ;
  146. MESS 'Reaction :' ' ' err ;
  147. * trace des courbes
  148. tleg = TABL ;
  149. tleg . 'TITRE' = TABL ;
  150. tleg . 'TITRE' . 1 = CHAI 'SMXX maxi - Pasapas' ;
  151. tleg . 'TITRE' . 2 = CHAI 'SMXX maxi - Mini solveur' ;
  152. tleg . 'TITRE' . 3 = CHAI 'SMXX mini - Pasapas' ;
  153. tleg . 'TITRE' . 4 = CHAI 'SMXX mini - Mini solveur' ;
  154. tleg . 2 = MOT 'MARQ ROND NOLI' ;
  155. tleg . 4 = MOT 'MARQ ROND NOLI' ;
  156. evsmin1 = EVOL 'MANU' 'Temps' ltp 'SMXX' lsmin1 ;
  157. evsmin2 = EVOL 'VERT' 'MANU' 'Temps' ltp 'SMXX' lsmin2 ;
  158. evsmax1 = EVOL 'MANU' 'Temps' ltp 'SMXX' lsmax1 ;
  159. evsmax2 = EVOL 'ROUG' 'MANU' 'Temps' ltp 'SMXX' lsmax2 ;
  160. *****DESS (evsmax1 ET evsmax2 ET evsmin1 ET evsmin2) 'TITR' 'Contrainte SMXX min et max vs Temps' 'LEGE' tleg 'NO' ;
  161. tleg . 'TITRE' . 1 = CHAI 'Reaction - Pasapas' ;
  162. tleg . 'TITRE' . 2 = CHAI 'Reaction - Mini solveur' ;
  163. evr1 = EVOL 'MANU' 'Temps' ltp 'Reaction' lr1 ;
  164. evr2 = EVOL 'ROUG' 'MANU' 'Temps' ltp 'Reaction' lr2 ;
  165. *****DESS (evr1 ET evr2) 'TITR' 'Force vs temps' 'LEGE' tleg 'NO' ;
  166.  
  167. ** Test et erreur si ecart trop important
  168. SI ((ersmin > 1.E-2) OU (ersmax > 1.E-2) OU (err > 1.E-3)) ;
  169. ERRE 'Ecart trop important entre les resultats de @SOLVMEC et de PASAPAS' ;
  170. FINSI ;
  171.  
  172. FIN ;
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  

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