Télécharger inclusions.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : inclusions.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. *----------------------------------------------------------------------*
  5. *----------------------------------------------------------------------*
  6. * Maillage d'un echantillon cubique *
  7. * de particules spheriques en inclusion dans une matrice *
  8. *----------------------------------------------------------------------*
  9. * *
  10. *-------------------- Parametres de la realisation --------------------*
  11. * NBG1 : Nombre de particules. *
  12. * DEXC1 : Distance d'exclusion entre points germes des polyedres. *
  13. * Attention, si la distance est trop importante, le nombre *
  14. * de polyedres demandes ne pourra pas etre atteint. *
  15. * DENS1 : Densite (taille) moyenne des elements du maillage. *
  16. * Par defaut, vaut 1/5 de la taille moyenne des polyedres. *
  17. * IGER1 : Germe du generateur de nombres aleatoires. *
  18. * Mot-cle 'AUTO' => processus de congruence initialise a 1 *
  19. * ITRAC1 : VRAI => affichage resultats. *
  20. NBG1 = 3 ** 3 ;
  21. DEXC1 = 0.33 ;
  22. DENS1 = 0.25 * (('FLOT' NBG1) ** (-1. / 3.)) ;
  23. IGER1 = 1 ;
  24. ITRAC1 = FAUX ;
  25. *----------------------------------------------------------------------*
  26. 'OPTI' 'ECHO' 1 ;
  27. VECH1 = 'VALE' 'ECHO' ;
  28. VTRA1 = 'VALE' 'TRAC' ;
  29. * *
  30. *--------------------- Maillage d'un cube unite -----------------------*
  31. * *
  32. 'OPTI' 'DIME' 3 'ELEM' 'TET4' ;
  33. * *
  34. O1 = 0. 0. 0. ;
  35. X1 = 1. 0. 0. ;
  36. Y1 = 0. 1. 0. ;
  37. Z1 = 0. 0. 1. ;
  38. * *
  39. MCUB1 = ((O1 'DROI' 1 X1) 'TRAN' 1 Y1) 'VOLU' 'TRAN' 1 Z1 ;
  40. ACUB1 = ('ARET' MCUB1) 'COUL' 'VERT' ;
  41. * *
  42. *--------------- Tirage des points germes des polyedres ---------------*
  43. * *
  44. 'SAUT' 1 'LIGN' ;
  45. 'MESS' '***** Tirage des points germes des polyedres' ;
  46. MPTS1 = @POINTIR REPU NBG1 SPHE DEXC1 'GERM' IGER1 ;
  47. NBG1 = NBNO MPTS1 ;
  48. * *
  49. 'SI' ITRAC1 ;
  50. 'TITR' ('CHAI' NBG1 ' germes tires ') ;
  51. 'TRAC' (ACUB1 'ET' MPTS1) ;
  52. 'FINS' ;
  53. * *
  54. *---------------- Partition de Voronoi du cube unite ------------------*
  55. * *
  56. 'SAUT' 1 'LIGN' ;
  57. 'MESS' '***** Partition du cube unite en cellules de Voronoi ' ;
  58. 'TEMP' 'ZERO' ;
  59. TPVORO1 = @P_BOIT2 (@P_VORO MPTS1) ;
  60. 'TEMP' ;
  61. * *
  62. 'SI' ITRAC1 ;
  63. 'TITR' ' Partition du cube unite en cellules de Voronoi ' ;
  64. 'TRAC' (TPVORO1 . 'MAV' 'ET' (MPTS1 'COUL' 'ROUG')) ;
  65. 'FINS' ;
  66. * *
  67. *--------------------- Maillage des inclusions ------------------------*
  68. * *
  69. * On prend pour diametre des inclusions 0,97 fois la dist. d'exclusion *
  70. TAB1 = @INCLUSI TPVORO1 (0.95 * DEXC1) DEXC1 (DENS1) (ITRAC1) ;
  71. * *
  72. *----------------------- Affichages / Donnees -------------------------*
  73. * *
  74. 'SI' ITRAC1 ;
  75. 'TITR' ' Visualisation du maillage de la matrice ' ;
  76. 'TRAC' 'FACE' TAB1 . 'MATR' ;
  77. 'TITR' ' Visualisation du maillage des inclusions ' ;
  78. 'TRAC' 'FACE' TAB1 . 'PART' ;
  79. 'TITR' ' Visualisation du maillage "total"' ;
  80. 'TRAC' 'FACE' TAB1 . 'MAIL' ;
  81. * *
  82. * Structure de la table de resultat : *
  83. PTS1 = MPTS1 'POIN' 1 ;
  84. 'TITR' ' Le maillage de chaque inclusion est indice par son centre ' ;
  85. 'TRAC' 'FACE' (TAB1 . PTS1 . 'PART' 'ET' ACUB1) ;
  86. 'TITR'
  87. ' Ainsi que la portion de matrice relative a la cellule de Voronoi' ;
  88. 'TRAC' 'FACE' (TAB1 . PTS1 . 'MATR' 'ET' ACUB1)
  89. 'COUP' PTS1 (PTS1 'PLUS' Y1) (PTS1 'PLUS' Z1) ;
  90. * *
  91. MAILG1 = TAB1 . PTS1 . 'MAIL' ;
  92. PTS2 = TAB1 . PTS1 . 'MPT' 'POIN' 2 ;
  93. 'TITR'
  94. 'Les centres des inclusions voisines sont au sous-indice "MPT"' ;
  95. 'TRAC' 'FACE' (MAILG1 'ET' TAB1 . PTS1 . 'MPT' 'ET' ACUB1) ;
  96. 'TITR'
  97. 'Ce qui donne acces aux maillages relatifs a ces inclusions voisines' ;
  98. 'TRAC' 'FACE' (('ARET' MAILG1) 'ET' TAB1 . PTS2 . 'MAIL' 'ET' ACUB1) ;
  99. MAILG2 = TAB1 . PTS2 . 'MAIL' ;
  100. AG1G2 = 'ARET' (MAILG1 'ET' MAILG2) ;
  101. 'TITR'
  102. 'La face a 2 inclusions voisines sont sous-indicees par leurs centres' ;
  103. 'TRAC' 'FACE' (TAB1 . PTS1 . PTS2 . 'MATR' 'ET' ACUB1 'ET' AG1G2) ;
  104. 'FINS' ;
  105. * *
  106. 'FIN' ;
  107. 'OPTI' 'ECHO' 1 ;
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  

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