REALISATION DU CODE « BRIG3D ET CONNECTION AVEC « SIMBLOC
INTRODUCTION
Le code numérique BRIG3D calcule les déplacements, en trois dimensions, d’un domaine constitué d’un assemblage de blocs qui sont soumis à des sollicitations externes. H a besoin qu’on lui fournisse la géométrie des blocs, c’est à dire toutes les faces et les sommets qui les constituent. Il faut aussi définir les joints, c’est à dire les couples de blocs qui les forment. Le code numérique ne détermine pas les blocs à partir de l’intersection des discontinuités du domaine étudié. Par contre, il accepte les données fournies par le code SIMBLOC (J. XU 1991). BRIG3D peut aussi traiter des cas avec des ancrages actifs ou passifs. BRIG3D est écrit en langage Fortran 77 de manière assez standard pour être transportable sur différents ordinateurs. Il est formé de trois programmes : – RDBRG: pour la lecture des données. – WKBRG: pour le calcul des déplacements des blocs. – RSBRG: pour l’édition et la représentation des résultats.
Lecture des données « RDBRG » :
Les données sont constituées par des groupes. Chaque groupe débute par un code qui indique le type de données à lire (voir Annexe II). Principalement RDBRG est constitué de deux programmes : RDDIR: construction des données d’une manière directe. RDSIM: lecture des données construites par le code SIMBLOC.
Les données géométriques
Les données géométriques concernent l’identification des blocs et des joints. Cette identification peut être directe, pour des cas simples où on peut facilement déterminer les faces et les sommets des blocs, ou indirectement en utilisant le code SIMBLOC.
Préparation des données (RDDIR)
La préparation des données, dans le cas direct, se fait de la manière suivante (fig.7.1) : -> Pour chaque bloc il faut déterminer le nombre de faces qui le constitue, et pour chaque face du bloc, déterminer le nombre et la liste des sommets qui la forment. -> Pour chaque joint il faut déterminer les deux blocs et les deux faces des blocs qui le constituent. Cette façon de préparer les données est simple. Mais ceci demande une parfaite maîtrise de la géométrie du domaine d’étude et une facilité de déterminer la connectivité des blocs et des joints. Dans un massif où on ne connaît que la géométrie ou la distribution des discontinuités, il est difficile d’accéder aux blocs et de déterminer directement leurs connectivités. Mais grâce à des méthodes de calcul géométrique, on peut identifier l’ensemble des blocs délimités par le réseau de discontinuités du massif et déterminer ainsi leurs connectivités et aussi celles des joints. Figure 7.1 : Préparation des données de connectivité des blocs.
Données issues de SIMBLOC
Le code de calcul SIMBLOC, développé par J.XU (J.XU 1991), permet de déterminer et d’identifier tous les blocs du massif rocheux modélisé. Les discontinuités du massifs peuvent être déterministes ou probabilistes. L’utilisation de SIMBLOC fournit alors les résultats suivants : NSOME, NARET, NFACE, NBLOC, NFACN, NBLKN avec : NSOME : nombre total des sommets. NARET : nombre total des arêtes. NFACE : nombre total des faces. NBLOC : nombre total des blocs. NFACN : dimension du tableau des connectivités des faces. NBLKN : dimension du tableau des connectivités des blocs. et : VXCOR[3-NSOME] : tableau des coordonnées des sommets. KARET[2NARET] : tableau des connectivité des arêtes, c’est à dire pour chaque arête les deux sommets qui la limitent. KFACN[NFACE+1] : pointeur du tableau KFACE. Il contient le nombre d’arêtes par face d’une façon cumulative : KFACN(I+1)-1 est le nombre total d’arêtes des faces 1,2,…,I. KFACE[NFACN] : tableau des connectivités des faces, c’est-à-dire pour chaque face les numéros d’arêtes qui la limitent. – 136 – KFACF[NFACE] : tableau contenant les numéros de discontinuités correspondant à chaque face. VFACE[NFACE] : tableau contenant la surface des faces. KBLKN[NBLOC+l] : pointeur du tableau KBLKC. Il contient le nombre de faces par bloc d’une façon cumulative : KBLKN(K+1)-1 est le nombre total des faces des blocs 1,2,…,K. KBLKC[NBLKN] : tableau des connectivités des blocs. D contient pour chaque bloc les numéros des faces qui le limitent. VVOLU[NBLOC] : tableau des volumes des blocs. KJONT[NFAM] : tableau contenant le nombre de discontinuités pour chaque famille. VETEX[3*8] : coordonnées des 8 sommets du domaine d’étude. Une fois les données concernant les blocs introduites, RDBRG se charge de déterminer les joints qui existent entre les différents blocs. Ceci se fait en cherchant les faces communes entre tous les blocs.
Les données mécaniques
Après la détermination des données géométriques des blocs, il faut introduire les caractéristiques mécaniques du matériau constituant les joints. A chaque joint est affecté un type de matériau, et pour chaque type de matériau on introduit des caractéristiques mécaniques, à savoir les paramètres des lois de déformation normale et de déformation tangentielle. Ensuite, il faut introduire les chargements qui sont exercés sur le domaine étudié et les conditions aux limites. Les efforts de chargement peuvent être des forces ponctuelles, des forces de pressions réparties ou des forces de volumes (voir Annexe II). Les forces sont de deux types : les forces initiales et les forces finales. Les forces finales ne sont appliquées qu’après avoir chargé totalement les forces initiales. Par exemple dans un essai de cisaillement sur un joint on applique d’abord l’effort normal (force initiale) et après l’effort tangentiel (force finale). Enfin, il faut fournir les données d’ancrages, à savoir le type d’ancrage : passif ou actif, les extrimités de chaque ancrage, leur type de matériau et les caractéristiques mécaniques des matériaux constituant ces ancrages. RDBRG se charge de déterminer les intersections des ancrages passifs avec les joints et de définir les zones qui seront sollicitées.