Introduction des fissures  ========================== L’introduction des fissures X-FEM dans un modèle de Code_Aster se fait à l’aide de l’opérateur DEFI_FISS_XFEM [:external:ref:`U4.82.08 `]. Cet opérateur n'a pas subi de modifications/ajouts suite à l'implémentation de l'approche *grands glissements avec X-FEM* . Toutefois, il est important de donner ici de courtes descriptions pour ses routines qui construisent en fait la structure de données FISS_XFEM [:ref:`D4.10.02 `]. Le développeur pourra ainsi s’y retrouver si jamais il veut modifier ou enrichir ces structures de données (SD). Tout au long de ce document, le lecteur rencontrera l'appellation "routine chapeau". Il s'agit d'une routine qui sert seulement à lancer des opérations de calcul en appelant d’autres routines. Ci-dessous, on présente un exemple d'introduction d'une fissure, par des fonctions level-sets analytiques, pour une analyse X-FEM. Le catalogue de la commande (defi_fiss_xfem.capy) évolue assez fréquemment, donc on recommande sa consultation avant la rédaction du fichier de commande. LSN=FORMULE(NOM_PARA=('X','Y'),VALE='Y-2.5'); LST=FORMULE(NOM_PARA=('X','Y'),VALE='-X-10.'); FISS1=DEFI_FISS_XFEM(MODELE=MODELEIN, DEFI_FISS=_F(FONC_LT=LST,FONC_LN=LSN,), INFO=1,); La description des routines Fortran est donnée ci-dessous et l’arbre d’appel est illustré sur la Figure 1. OP0041 - routine de lancement de l'opérateur qui réalise principalement la lecture des données introduites dans le fichier de commande et le lancement des différentes routines qui suivent. XLORIE – routine pour la lecture de données concernant le fond de fissure. Les paramètres introduits par l'utilisateur sous les mots clés 'RAYON_ENRI' et 'NB_COUCHES' sont lus ici afin de remplir la SD FISS//'.CARAFOND'avec le rayon d'enrichissement autour de la tête de fissure et le nombre de couches d'éléments à enrichir. XLENRI – réalise la lecture de la liste de mailles potentiellement enrichies, liste fournie par l'utilisateur, et crée les SD: FISS//'.GROUP_MA_ENRI' et FISS//'.GROUP_NO_ENRI' . XINILS – routine chapeau pour lancer le calcul des level-sets. Si les level-sets sont introduites par des fonctions analytiques, le calcul se fait directement dans cette routine et on remplit les SD: FISS//'.LNNO' et FISS//'.LTNO' XINLSJ– routine pour la récupération des levels set jonction. Elle est appelée dans le cas où l'utilisateur a défini l'opérande JONCTIONdans DEFI_FISS_XFEM. Dans ce cas on récupère localement les levels set normales et tangentes des fissures sur lesquelles FISSse branche dans un cham_no. Ces levels set sont ensuite utilisées dans la routine XSTANOpour le calcul du statut d'enrichissement des nœuds. Pour conserver l'information globale afin d'alimenter l'opérateur MODI_MODELE_XFEM, on crée ici les champs FISS//'.JONFISS'et FISS//'.JONCOEF'qui contiennent la liste des fissures sur lesquelles FISS se branche et les coefficients associés. XLS3D – routine pour le calcul des level-sets si la fissure est introduite par des mailles surfaciques (cas 3D). XLS2D - routine pour le calcul des level-sets si la fissure est modélisée par des mailles linéiques (cas 2D). XAJULS – routine pour le réajustement des level-sets. Les valeurs des LS sont modifiées si elles sont trop proches de zéro pour éviter les erreurs d'intégration numérique dues au mauvais conditionnement de la matrice de rigidité. XGRALS – routine pour le lancement du calcul des gradients des level-sets. On sort avec les SD: FISS//'.GRLNNO' et FISS//'.GRLTNO'. TE0024 – réalise le calcul élémentaire des gradients des level-sets (option 'GRAD_NEUT_R'). XENRCH – lancement du calcul de l'enrichissement et des points du fond de fissure. XMAFIS – routine pour trouver les mailles où la level-set normale change de signe. On sort avec la liste des mailles fissurées. XSTANO – détermine le statut (enrichissement) des nœuds (HEAVISIDE, CRACK TIP ou HEAVISIDE et CRACK TIP). On remplit la SD FISS//'.STNO' . XSTAMA – calcul du statut des mailles et actualisation éventuelle des statuts des nœuds (si enrichissement par couche). XSTAM1 – calcul du statut des mailles en fonction du statut des nœuds. XPTFON – recherche les points des fonds de fissure. XORIFF – orientation des point des fonds de fissure. XLMAIL – création et remplissage des SD: FISS//'.MAILFISS .INDIC', FISS//'.MAILFISS .HEAV', FISS//'.MAILFISS .CTIP', FISS//'.MAILFISS .HECT', FISS//'.FONDFISS', FISS//'.FONDMULT' . XBASLO - création de la SD FISS//'.BASLOC' qui contient la base locale aux points du fond de fissure associé. .. image:: images/Object_30.png :width: 5.0126in :height: 5.5429in .. _RefSchema_Object_30.png: **Figure 1. L’arbre d’appel de l’opérateur** DEFI_FISS_XFEM