Télécharger nafems-le3.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : nafems-le3.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4.  
  5. *** Options ...
  6.  
  7. opti dime 3 mode trid elem seg2 echo 1 ;
  8. graph = 'N' ;
  9.  
  10. *** Paramètres ...
  11.  
  12. rayon = 10. ;
  13.  
  14. nb_div = 2 ;
  15.  
  16. valyoun = 6.825e+7 ;
  17. valnu = 0.3 ;
  18. lepaiss = 0.04 ;
  19.  
  20. *** Points ...
  21.  
  22. dens (pi * rayon / 4 / nb_div) ;
  23.  
  24. x1 = rayon ;
  25. x2 = (rayon * rayon / 2) ** 0.5 ;
  26. x3 = (rayon * rayon / 3) ** 0.5 ;
  27.  
  28. p0 = 0. 0. 0. ;
  29. px = x1 0. 0. ;
  30. py = 0. x1 0. ;
  31. pz = 0. 0. x1 ;
  32.  
  33. pxy = x2 x2 0. ;
  34. pxz = x2 0. x2 ;
  35. pyz = 0. x2 x2 ;
  36.  
  37. pxyz = x3 x3 x3 ;
  38.  
  39. *** Lignes ...
  40.  
  41. lixy = cerc nb_div px p0 pxy ;
  42. lixz = cerc nb_div px p0 pxz ;
  43.  
  44. liyx = cerc nb_div py p0 pxy ;
  45. liyz = cerc nb_div py p0 pyz ;
  46.  
  47. lizx = cerc nb_div pz p0 pxz ;
  48. lizy = cerc nb_div pz p0 pyz ;
  49.  
  50. licxy = cerc nb_div pxyz p0 pxy ;
  51. licxz = cerc nb_div pxyz p0 pxz ;
  52. licyz = cerc nb_div pxyz p0 pyz ;
  53.  
  54. *** Surfaces ...
  55.  
  56. opti elem qua4 ;
  57.  
  58. quartx = dall lixy (inve licxy) licxz (inve lixz) sphe p0 ;
  59. quarty = dall liyz (inve licyz) licxy (inve liyx) sphe p0 ;
  60. quartz = dall lizx (inve licxz) licyz (inve lizy) sphe p0 ;
  61.  
  62. su1 = quartx et quarty et quartz ;
  63.  
  64. si (ega 'O' graph) ;
  65. titr 'Le maillage (un quart de la hemisphere)' ;
  66. trac su1 ;
  67. finsi ;
  68.  
  69. *** Modèle ...
  70.  
  71. mo1 = mode su1 mecanique elastique coq4 ;
  72. ma1 = mate mo1 YOUN valyoun NU valnu EPAI lepaiss ;
  73.  
  74. *** Rigidité et CL ...
  75.  
  76. ri1 = rigi mo1 ma1 ;
  77. cl1 = symt depl rota px p0 pz su1 ;
  78. cl2 = symt depl rota py p0 pz su1 ;
  79. cl3 = bloq uz pz ;
  80.  
  81. rielas = ri1 et cl1 et cl2 et cl3 ;
  82.  
  83. si(ega 'O' graph) ;
  84. titr 'La structure avec ses conditions aux limites' ;
  85. trac rielas ;
  86. finsi ;
  87.  
  88. *** Chargement ...
  89.  
  90. val_forc = 1. ;
  91.  
  92. fo1 = forc fx val_forc px ;
  93. fo2 = forc fy (-1*val_forc) py ;
  94.  
  95. fortot = fo1 et fo2 ;
  96.  
  97. *** Résolution ...
  98.  
  99. de1 = reso rielas fortot ;
  100.  
  101. si( ega 'O' graph) ;
  102. titr 'La structure deformee' ;
  103. vf1 = vect fortot FX FY FZ (rayon / val_forc / 5.) JAUN ;
  104. defo0 = defo su1 de1 0. VERT ;
  105. defo1 = defo su1 de1 vf1 ROUG ;
  106. trac (defo0 et defo1) ;
  107. finsi ;
  108.  
  109. *** Test ...
  110.  
  111. val_ref = 0.0925 ;
  112.  
  113. dx = extr de1 ux px ;
  114. dy = -1 * (extr de1 uy py) ;
  115.  
  116. errx = 100 * (dx - val_ref) / val_ref ;
  117. erry = 100 * (dy - val_ref) / val_ref ;
  118.  
  119. opti echo 0 ;
  120. mess 'Déplacement de référence = ' val_ref ;
  121. mess 'Déplacement en X =' dx ' soit' errx ' % d erreur' ;
  122. mess 'Déplacement en Y =' dy ' soit' erry ' % d erreur' ;
  123. opti echo 1 ;
  124.  
  125. *** Bye ...
  126.  
  127. fin ;
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  

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