Download inclusions.dgibi

Back to the list

* fichier : inclusions.dgibi
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
*                  Maillage d'un echantillon cubique                   *
*        de particules spheriques en inclusion dans une matrice        *
*----------------------------------------------------------------------*
*                                                                      *
*-------------------- Parametres de la realisation --------------------*
* NBG1     : Nombre de particules.                                     *
* DEXC1    : Distance d'exclusion entre points germes des polyedres.   *
*            Attention, si la distance est trop importante, le nombre  *
*            de polyedres demandes ne pourra pas etre atteint.         *
* DENS1    : Densite (taille) moyenne des elements du maillage.        *
*            Par defaut, vaut 1/5 de la taille moyenne des polyedres.  *
* IGER1    : Germe du generateur de nombres aleatoires.                *
*            Mot-cle 'AUTO' => processus de congruence initialise a 1  *
* ITRAC1   : VRAI => affichage resultats.                              *
NBG1     = 3 ** 3 ;
DEXC1    = 0.33 ;
DENS1    = 0.25 * (('FLOT' NBG1) ** (-1. / 3.)) ;
IGER1    = 1 ;
ITRAC1   = FAUX ;
*----------------------------------------------------------------------*
'OPTI' 'ECHO' 1 ;
VECH1    = 'VALE' 'ECHO' ;
VTRA1    = 'VALE' 'TRAC' ;
*                                                                      *
*--------------------- Maillage d'un cube unite -----------------------*
*                                                                      *
'OPTI' 'DIME' 3 'ELEM' 'TET4' ;
*                                                                      *
O1       = 0. 0. 0. ;
X1       = 1. 0. 0. ;
Y1       = 0. 1. 0. ;
Z1       = 0. 0. 1. ;
*                                                                      *
MCUB1    = ((O1 'DROI' 1 X1) 'TRAN' 1 Y1) 'VOLU' 'TRAN' 1 Z1 ;
ACUB1    = ('ARET' MCUB1) 'COUL' 'VERT' ;
*                                                                      *
*--------------- Tirage des points germes des polyedres ---------------*
*                                                                      *
'SAUT' 1 'LIGN' ;
'MESS' '***** Tirage des points germes des polyedres' ;
MPTS1    = @POINTIR REPU NBG1 SPHE DEXC1 'GERM' IGER1 ;
NBG1     = NBNO MPTS1 ;
*                                                                      *
'SI' ITRAC1 ;
  'TITR' ('CHAI' NBG1 ' germes tires ') ;
  'TRAC' (ACUB1 'ET' MPTS1) ;
'FINS' ;
*                                                                      *
*---------------- Partition de Voronoi du cube unite ------------------*
*                                                                      *
'SAUT' 1 'LIGN' ;
'MESS' '***** Partition du cube unite en cellules de Voronoi ' ;
'TEMP' 'ZERO' ;
TPVORO1   = @P_BOIT2 (@P_VORO MPTS1) ;
'TEMP' ;
*                                                                      *
'SI' ITRAC1 ;
  'TITR' ' Partition du cube unite en cellules de Voronoi ' ;
  'TRAC' (TPVORO1 . 'MAV' 'ET' (MPTS1 'COUL' 'ROUG')) ;
'FINS' ;
*                                                                      *
*--------------------- Maillage des inclusions ------------------------*
*                                                                      *
* On prend pour diametre des inclusions 0,97 fois la dist. d'exclusion *
TAB1     = @INCLUSI TPVORO1 (0.95 * DEXC1) DEXC1 (DENS1) (ITRAC1) ;
*                                                                      *
*----------------------- Affichages / Donnees -------------------------*
*                                                                      *
'SI' ITRAC1 ;
  'TITR' ' Visualisation du maillage de la matrice ' ;
  'TRAC' 'FACE' TAB1 . 'MATR' ;
  'TITR' ' Visualisation du maillage des inclusions ' ;
  'TRAC' 'FACE' TAB1 . 'PART' ;
  'TITR' ' Visualisation du maillage "total"' ;
  'TRAC' 'FACE' TAB1 . 'MAIL' ;
*                                                                      *
* Structure de la table de resultat :                                  *
  PTS1     = MPTS1 'POIN' 1 ;
  'TITR' ' Le maillage de chaque inclusion est indice par son centre ' ;
  'TRAC' 'FACE' (TAB1 . PTS1 . 'PART' 'ET' ACUB1) ;
  'TITR'
  ' Ainsi que la portion de matrice relative a la cellule de Voronoi' ;
  'TRAC' 'FACE' (TAB1 . PTS1 . 'MATR' 'ET' ACUB1)
    'COUP' PTS1 (PTS1 'PLUS' Y1) (PTS1 'PLUS' Z1) ;
*                                                                      *
  MAILG1   = TAB1 . PTS1 . 'MAIL' ;
  PTS2     = TAB1 . PTS1 . 'MPT' 'POIN' 2 ;
  'TITR'
'Les centres des inclusions voisines sont au sous-indice "MPT"' ;
  'TRAC' 'FACE' (MAILG1 'ET' TAB1 . PTS1 . 'MPT'  'ET' ACUB1) ;
  'TITR'
'Ce qui donne acces aux maillages relatifs a ces inclusions voisines' ;
  'TRAC' 'FACE' (('ARET' MAILG1) 'ET' TAB1 . PTS2 . 'MAIL' 'ET' ACUB1) ;
  MAILG2   = TAB1 . PTS2 . 'MAIL' ;
  AG1G2    = 'ARET' (MAILG1 'ET' MAILG2) ;
  'TITR'
'La face a 2 inclusions voisines sont sous-indicees par leurs centres' ;
  'TRAC' 'FACE' (TAB1 . PTS1 . PTS2 . 'MATR' 'ET' ACUB1 'ET' AG1G2) ;
'FINS' ;
*                                                                      *
'FIN' ;
'OPTI' 'ECHO' 1 ;
 

 

© Cast3M 2003 - All rights reserved.
Disclaimer