Télécharger cneq_elem.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : cneq_elem.dgibi
  2.  
  3. ************************************************************************
  4. * Petit cas test pour l'opérateur CNEQ option 'ELEM' *
  5. * *
  6. * Cette option permet d'obtenir les forces équivalentes à une *
  7. * densité volumique d'efforts où le résultat est sous la forme d'un *
  8. * MCHAML aux noeuds du maillage *
  9. * *
  10. * On teste ici que ce MCHAML donne bien les memes forces nodales quand *
  11. * on le transforme en CHPOINT avec sommation, c-a-d est-ce-que : *
  12. * CHAN 'CHPO' (CNEQ 'ELEM' mod f) mod = CNEQ mof d ??? *
  13. * *
  14. * L'exemple utilisé ici est un cas de forces centrifuges dans un *
  15. * cylindre d'acier en rotation *
  16. ************************************************************************
  17.  
  18.  
  19.  
  20. *----------------- P A R M E T R E S G E N E R A U X ----------------*
  21.  
  22. ** Indicateur de tracé
  23. itrac = faux ;
  24. ** Paramètres géométriques
  25. rint = 0.1 ;
  26. rext = 0.6 ;
  27. h = 0.1 ;
  28. ** Vitesse de rotation du cylindre (radians / secondes)
  29. omega = 100. * 2. * pi ;
  30. ** Paramètres du matériau
  31. yo = 200.E9 ;
  32. nu = 0.3 ;
  33. rho = 7800. ;
  34. ** Paramètres du maillage
  35. OPTI 'DENS' ((rext - rint) / 30.) ;
  36.  
  37.  
  38.  
  39. *------------------------ C A S 1 D A X I -------------------------*
  40.  
  41. ** Options de calcul
  42. OPTI 'DIME' 1 'MODE' 'UNID' 'AXIS' 'ELEM' 'SEG2' ;
  43. ** Maillage
  44. p1 = POIN rint ;
  45. p2 = POIN rext ;
  46. mail = DROI p1 p2 ;
  47. ** Modèle et matériau
  48. mo = MODE mail 'MECANIQUE' ;
  49. ma = MATE mo 'YOUN' yo 'NU' nu ;
  50. ** Chargement (avec CNEQ défaut et CNES 'ELEM')
  51. r = COOR mail ;
  52. w = NOMC 'FR' (rho * omega * omega * r) ;
  53. f1 = CNEQ mo w ;
  54. f2 = CNEQ 'ELEM' mo w ;
  55. f2n = CHAN 'CHPO' mo f2 'SOMM' ;
  56. f2n = CHAN 'ATTRIBUT' f2n 'NATURE' 'DISCRET' ;
  57. SI itrac ;
  58. vec = VECT f2n 'FORC' 'ROUG' ;
  59. TRAC vec mail 'TITR' 'Forces nodales imposees (1d axi)' ;
  60. FINSI ;
  61. ** Calcul de l'écart entre les deux
  62. err1a = MAXI 'ABS' (f1 - f2n) ;
  63. ** Résolution du problème mécanique (calcul du déplacement)
  64. ri = RIGI mo ma ;
  65. u = RESO ri f2n ;
  66. e1a = EVOL 'ROUG' 'CHPO' u 'UR' mail ;
  67.  
  68.  
  69.  
  70. *------------------------ C A S 2 D A X I -------------------------*
  71. ** Options de calcul
  72. OPTI 'DIME' 2 'MODE' 'AXIS' 'ELEM' 'QUA4' ;
  73. ** Maillage
  74. l1 = mail ;
  75. mail = l1 TRAN (0. h) ;
  76. l2 = mail COTE 3 ;
  77. con = CONT mail ;
  78. ** Modèle et matériau
  79. mo = MODE mail 'MECANIQUE' ;
  80. ma = MATE mo 'YOUN' yo 'NU' nu ;
  81. ** Chargement (avec CNEQ défaut et CNES 'ELEM')
  82. r z = COOR mail ;
  83. w = (NOMC 'FR' (rho * omega * omega * r)) ET (NOMC 'FZ' (0. * z)) ;
  84. f1 = CNEQ mo w ;
  85. f2 = CNEQ 'ELEM' mo w ;
  86. f2n = CHAN 'CHPO' mo f2 'SOMM' ;
  87. f2n = CHAN 'ATTRIBUT' f2n 'NATURE' 'DISCRET' ;
  88. SI itrac ;
  89. vec = VECT f2n 'FORC' 'VERT' ;
  90. TRAC vec con 'TITR' 'Forces nodales imposees (2d axi)' ;
  91. FINSI ;
  92. ** Calcul de l'écart entre les deux
  93. err2a = MAXI 'ABS' (f1 - f2n) ;
  94. ** Résolution du problème mécanique (calcul du déplacement)
  95. bl = BLOQ 'UZ' (l1 ET l2) ;
  96. ri = RIGI mo ma ;
  97. u = RESO (ri ET bl) f2n ;
  98. e2a = EVOL 'VERT' 'CHPO' u 'UR' l1 ;
  99.  
  100.  
  101.  
  102. *----------------------------- C A S 3 D ----------------------------*
  103. ** Options de calcul
  104. OPTI 'DIME' 3 'ELEM' 'CUB8' ;
  105. ** Maillage
  106. s1 = l1 TRAN (0. 0. h) ;
  107. mail = s1 VOLU 'ROTA' 90. (0. 0. 0.) (0. 0. 1.) ;
  108. s2 = mail FACE 2 ;
  109. are = ARET mail ;
  110. ** Modèle et matériau
  111. mo = MODE mail 'MECANIQUE' ;
  112. ma = MATE mo 'YOUN' yo 'NU' nu ;
  113. ** Chargement (avec CNEQ défaut et CNES 'ELEM')
  114. x y z = COOR mail ;
  115. r = ((x * x) + (y * y)) ** 0.5 ;
  116. theta = ATG y x CHAN 'ATTRIBUT' 'NATURE' 'DIFFUS' ;
  117. w = (NOMC 'FX' (rho * omega * omega * r * (COS theta))) ET
  118. (NOMC 'FY' (rho * omega * omega * r * (SIN theta))) ET
  119. (NOMC 'FZ' (0. * z)) ;
  120. f1 = CNEQ mo w ;
  121. f2 = CNEQ 'ELEM' mo w ;
  122. f2n = CHAN 'CHPO' mo f2 'SOMM' ;
  123. f2n = CHAN 'ATTRIBUT' f2n 'NATURE' 'DISCRET' ;
  124. SI itrac ;
  125. vec = VECT f2n 'FORC' 'JAUN' ;
  126. TRAC vec are 'TITR' 'Forces nodales imposees (3d)' ;
  127. FINSI ;
  128. ** Calcul de l'écart entre les deux
  129. err3 = MAXI 'ABS' (f1 - f2n) ;
  130. ** Résolution du problème mécanique (calcul du déplacement)
  131. pz1 = z POIN 'EGAL' 0. ;
  132. pz2 = z POIN 'EGAL' h ;
  133. bl = (BLOQ 'UX' s2) ET (BLOQ 'UY' s1) ET (BLOQ 'UZ' (pz1 ET pz2)) ;
  134. ri = RIGI mo ma ;
  135. u = RESO (ri ET bl) f2n ;
  136. e3 = EVOL 'JAUN' 'CHPO' u 'UX' l1 ;
  137.  
  138.  
  139.  
  140. *----------------------------- B I L A N -----------------------------*
  141.  
  142. ** Écart max entre les forces (CNEQ) et (CNEQ 'ELEM' + CHAN 'CHPO' 'SOMM')
  143. err = MAXI 'ABS' (PROG err1a err2a err3) ;
  144. MESS 'Ecart max. =' err ;
  145.  
  146. ** Tracé des déplacements Ur dans l'épaisseur du cylindre
  147. SI itrac ;
  148. tl = TABL ;
  149. tl . 1 = 'MARQ ROND NOLI' ;
  150. tl . 2 = 'MARQ CARR NOLI' ;
  151. tl . 3 = 'MARQ LOSA NOLI' ;
  152. tl . 'TITRE' = TABL ;
  153. tl . 'TITRE' . 1 = '1d axi' ;
  154. tl . 'TITRE' . 2 = '2d axi' ;
  155. tl . 'TITRE' . 3 = '3d' ;
  156. DESS (e1a ET e2a ET e3) 'LEGE' tl 'TITR' 'Deplacement radial dans l''epaisseur' ;
  157. FINSI ;
  158.  
  159. ** Test
  160. SI (err > 1.E-12) ;
  161. ERRE 5 ;
  162. FINSI ;
  163.  
  164.  
  165. FIN ;
  166.  
  167.  
  168.  
  169.  
  170.  

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