Télécharger voro3dp.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : voro3dp.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. *----------------------------------------------------------------------*
  5. * voro3d.dgibi est un exemple d'utilisation dans un cas tridimensionel *
  6. * de la procedure MAILVORO de maillage d'agregats cubiques de polyedres*
  7. * de Voronoi ponderes. Cette procedure fait appel a l'operateur VORO. *
  8. *----------------------------------------------------------------------*
  9. * *
  10. * *
  11. * *
  12. *----------------------------------------------------------------------*
  13. * Maillage d'un agregat 3D de polyedres de Voronoi ponderes *
  14. *----------------------------------------------------------------------*
  15. * *
  16. * ITRAC1 : VRAI => affichage resultats. *
  17. *
  18. ITRAC1 = FAUX ;
  19. *----------------------------------------------------------------------*
  20. 'OPTI' 'ECHO' 1 ;
  21. *
  22. 'OPTI' 'DIME' 3 'ELEM' 'TET4' ;
  23. * *
  24. ************************************************************************
  25. * Enveloppe de la partition : contour d'une demi eprouvette *
  26. ************************************************************************
  27. L0 = 0.25; P0 = 0.25; H0 = 1.;
  28. *
  29. CF1 = 1.1; CF2 = 1.3; CF3 = 1.6;
  30. *
  31. O1 = (L0/2) (P0/2) 0. ;
  32. P1 = (L0*0.8) 0. 0. ;
  33. P2 = (L0*0.8) 0. (H0*CF1) ;
  34. P3 = (L0*1.4) 0. (H0*CF2 ) ;
  35. P4 = (L0*1.4) 0. (H0*CF3) ;
  36. L1 = P1 droi 5 P2 ;
  37. L2 = P2 cerc ((L0*1.4) 0. (H0*CF1)) 5 P3 ;
  38. L3 = P3 droi 1 P4 ;
  39. LT = L1 et L2 et L3 ;
  40. S0 = LT rota 12 360. O1 (0. 0. 100.) ;
  41. elim S0 1.E-3 ;
  42. CNTZ0 = (aret S0) elem appu stri (S0 poin plan O1 P1 (0 (P0/3.) 0)
  43. 1.E-3) ;
  44. CNTZ1 = (aret S0) elem appu stri
  45. (S0 poin plan (0 0 (H0*CF3)) P4 (0 (P0/3.) (H0*CF3)) 1.E-3) ;
  46. SZ0 = surf cntZ0 plan ;
  47. SZ1 = surf cntZ1 plan ;
  48. VOL1 = VOLU (S0 ET SZ0 ET SZ1) ;
  49. ENV1 = ENVE VOL1;
  50. ARE1 = ARET ENV1;
  51. * *
  52. *--------------- Tirage des points germes des polyedres ---------------*
  53. * *
  54. LX =
  55. 1.29229E-01 ET 2.43185E-01 ET 1.08087E-01 ET 1.40905E-01 ET
  56. 2.21992E-01 ET 4.28972E-02 ET 2.40722E-01 ET 2.03581E-01 ET
  57. 1.75484E-01 ET 3.00197E-03 ET 5.82634E-02 ET 1.46958E-01 ET
  58. 2.66329E-02 ET 1.69800E-01 ET 1.01338E-01 ET 1.07537E-01 ET
  59. 1.06081E-01 ET 1.18039E-01 ET 8.65682E-02 ET 1.50796E-01 ET
  60. 3.38401E-03 ET 1.18953E-01 ET 2.44429E-01 ET 2.19225E-01 ET
  61. 1.26259E-01 ET 5.08291E-02 ET 1.82052E-01 ET 9.89551E-02 ET
  62. 2.34844E-01 ET 2.47768E-01;
  63. LY=
  64. 1.06323E-01 ET 5.16488E-02 ET 1.19192E-01 ET 6.05779E-02 ET
  65. 1.94001E-01 ET 1.51163E-01 ET 8.01130E-02 ET 1.31412E-01 ET
  66. 1.53177E-01 ET 2.22862E-01 ET 3.24129E-02 ET 3.90001E-02 ET
  67. 4.97612E-02 ET 6.62040E-02 ET 6.93399E-02 ET 1.23212E-01 ET
  68. 2.46797E-01 ET 1.82201E-01 ET 1.39845E-01 ET 5.16273E-02 ET
  69. 2.90715E-03 ET 8.84773E-04 ET 5.92805E-02 ET 1.06027E-01 ET
  70. 1.24217E-02 ET 1.77183E-01 ET 2.03062E-01 ET 1.64567E-01 ET
  71. 1.83832E-01 ET 1.40190E-01;
  72. LZ=
  73. 7.25838E-02 ET 9.04691E-01 ET 1.53265E-01 ET 1.90351E-01 ET
  74. 4.45326E-01 ET 5.44165E-01 ET 6.00586E-01 ET 2.47951E-01 ET
  75. 7.62149E-01 ET 3.32146E-01 ET 9.85533E-01 ET 4.65077E-01 ET
  76. 4.79565E-01 ET 9.72372E-01 ET 5.75787E-01 ET 8.47267E-01 ET
  77. 8.14600E-01 ET 9.90397E-01 ET 2.61158E-01 ET 6.98808E-01 ET
  78. 2.06797E-01 ET 1.02887E-01 ET 8.00636E-01 ET 3.61932E-01 ET
  79. 3.13814E-01 ET 6.84341E-01 ET 5.83510E-01 ET 4.28116E-01 ET
  80. 8.98150E-01 ET 8.91639E-02;
  81. LR =
  82. 2.51883E-02 ET 2.93567E-02 ET 3.00674E-02 ET 4.17002E-02 ET
  83. 4.42619E-02 ET 4.44172E-02 ET 4.74397E-02 ET 4.74953E-02 ET
  84. 4.99674E-02 ET 5.05465E-02 ET 5.08768E-02 ET 5.60364E-02 ET
  85. 5.69667E-02 ET 5.99059E-02 ET 6.03926E-02 ET 6.08188E-02 ET
  86. 6.26956E-02 ET 6.33553E-02 ET 6.46135E-02 ET 6.53108E-02 ET
  87. 6.54857E-02 ET 6.56331E-02 ET 6.59384E-02 ET 6.66768E-02 ET
  88. 7.30662E-02 ET 7.61928E-02 ET 7.83173E-02 ET 7.96506E-02 ET
  89. 8.51113E-02 ET 9.63390E-02;
  90. *
  91. MAIL1 = 'VIDE' 'MAILLAGE'/'POI1';
  92. *
  93. PT1 = 'MANU' 'POI1' ((EXTR LX 1) (EXTR LY 1) (EXTR LZ 1)) ;
  94. R1 = EXTR LR 1;
  95. CHR1 = MANU CHPO PT1 1 'RAYO' R1 NATURE DISCRET ;
  96. MAIL1 = MAIL1 'ET' PT1 ;
  97. *
  98. PX = 0.125 0.125 (H0*1.4);
  99. MAIL1 = MAIL1 ET PX;
  100. CHRX= MANU CHPO (MANU POI1 PX) 1 'RAYO' (MESU L3) NATURE DISCRET ;
  101. CHR1 = CHR1 ET CHRX;
  102. CHR1 = REDU CHR1 MAIL1;
  103. *
  104. REPE B0 ((DIME LX) - 1);
  105. N0 = (&B0 + 1);
  106. PT1 = 'MANU' 'POI1' ((EXTR LX N0) (EXTR LY N0) (EXTR LZ N0)) ;
  107. MAIL1 = MAIL1 'ET' PT1 ;
  108. R1 = EXTR LR N0;
  109. CHRI = MANU CHPO PT1 1 'RAYO' R1 NATURE DISCRET ;
  110. CHR1 = CHR1 'ET' CHRI;
  111. FIN B0;
  112. *
  113. CHR1 = 'REDU' CHR1 MAIL1 ;
  114. * *
  115. *---------------- Partition de Voronoi ponderee ------------------*
  116. * *
  117. 'SAUT' 1 'LIGN' ;
  118. 'MESS' '***** Partition du cube unite en cellules de Voronoi ' ;
  119. 'TEMP' 'ZERO' ;
  120. TPVORO1 = 'VORO' MAIL1 ENV1 CHR1;
  121. 'TEMP' ;
  122. * *
  123. 'SI' ITRAC1 ;
  124. 'TITR' ' Partition du cube unite en cellules de Voronoi ' ;
  125. 'TRAC' (TPVORO1 . 'VISU' 'ET' (MAIL1 'COUL' 'ROUG')) ;
  126. 'FINS' ;
  127. * *
  128. *--------------------- Maillage de la partition -----------------------*
  129. * *
  130. 'SAUT' 1 'LIGN' ;
  131. 'MESS' '***** Maillage de la partition ' ;
  132. TMVORO1 = MAILVORO TPVORO1 ENV1 'COUL';
  133. 'TEMP' ;
  134. * *
  135. *----------------------- Affichages / Donnees -------------------------*
  136. * *
  137. 'SI' ITRAC1 ;
  138. 'TITR' ' Visualisation du maillage ' ;
  139. 'TRAC' 'FACE' TMVORO1 . 'MAIL' ;
  140. * *
  141. * Structures de la table de resultat : *
  142. PTS1 = MAIL1 'POIN' 1 ;
  143. 'TITR' ' Le maillage de chaque polyedre est indice par son germe ' ;
  144. 'TRAC' 'FACE' (TMVORO1 . CELL. PTS1 . 'MAIL' 'ET' ARE1) ;
  145. * *
  146. MAILG1 = TMVORO1 . CELL . PTS1 . 'MAIL' ;
  147. PTS2 = TMVORO1 . CELL . PTS1 . 'VOIS' 'POIN' 1 ;
  148. 'TITR' ' Les germes des voisins sont au sous-indice "VOIS" ' ;
  149. 'TRAC' 'FACE' (MAILG1 'ET' TMVORO1 . CELL .PTS2 . 'MAIL' 'ET' ARE1) ;
  150. 'FINS' ;
  151. * *
  152. 'FIN' ;
  153. 'OPTI' 'ECHO' 1 ;
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  

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