2. Introduction of cracks#
The introduction of X-FEM cracks into a Code_Aster model is done using the DEFI_FISS_XFEM [U4.82.08] operator. This operator has not undergone any changes/additions following the implementation of the large slips approach with X- FEM. However, it’s important to give short descriptions here for its routines that actually build data structure FISS_XFEM [D4.10.02]. The developer will thus be able to find his way around if he ever wants to modify or enrich these data structures (SD). Throughout this document, the reader will encounter the term « hat routine. » It is a routine that is only used to start calculation operations by calling other routines.
Below is an example of the introduction of a crack, using analytical level-set functions, for an X- FEM analysis. The order catalog (defi_fiss_xfem.capy) evolves quite frequently, so it is recommended to consult it before writing the command file.
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,);
The description of Fortran routines is given below and the call tree is shown in Figure 1.
OP0041 - routine for launching the operator which mainly reads the data entered into the command file and launches the various routines that follow.
XLORIE — routine for reading data concerning the bottom of the crack. The parameters entered by the user under the keywords” RAYON_ENRI “and” NB_COUCHES “are read here in order to fill the SD FISS//”. CARAFOND “with the radius of enrichment around the crack head and the number of layers of elements to be enriched.
XLENRI — reads the list of potentially enriched meshes, a list provided by the user, and creates the SDs: FISS//”. GROUP_MA_ENRI “and FISS//”. GROUP_NO_ENRI “.
XINILS — hat routine to start calculating level-sets. If the level-sets are introduced by analytical functions, the calculation is done directly in this routine and the SDs are filled in: FISS//”. LNNO “and FISS//”. LTNO “
XINLSJ — routine for retrieving levels and joining. It is called in the case where the user has defined the JONCTIONdans DEFI_FISS_XFEM operand. In this case we locally retrieve the normal and tangent set levels of the cracks on which FISSse branches in a fiel_no. These set levels are then used in routine XSTANOpour to calculate the enrichment status of nodes. To keep the global information in order to feed the MODI_MODELE_XFEM operator, we create the FISS//”fields here. JONFISS “and FISS//”. JONCOEF “which contain the list of cracks that FISS plugs into and the associated coefficients.
XLS3D — routine for calculating level-sets if the crack is introduced by surface meshes (3D case).
XLS2D - routine for calculating level-sets if the crack is modeled by line cells (2D case).
XAJULS — routine for readjusting level-sets. The LS values are changed if they are too close to zero to avoid numerical integration errors due to poor conditioning of the stiffness matrix.
XGRALS — routine for starting the calculation of the gradients of the level-sets. We go out with the SD: FISS//”. GRLNNO “and FISS//”. GRLTNO “.
TE0024 — perform the elementary calculation of the gradients of the level-sets (option “GRAD_NEUT_R”).
XENRCH — launch of the calculation of the enrichment and the points of the bottom of the crack.
XMAFIS — routine to find the stitches where the normal level-set changes sign. We leave with the list of cracked stitches.
XSTANO — determines the status (enrichment) of the nodes (HEAVISIDE, CRACK TIP or HEAVISIDE and CRACK TIP). We fill in SD FISS//”. STNO “.
XSTAMA — calculation of the status of the meshes and possible updating of the statuses of the nodes (if enrichment by layer).
XSTAM1 — calculating the status of the meshes according to the status of the nodes.
XPTFON — look for the points at the bottom of the crack.
XORIFF — orientation of the points of the crack bottoms.
XLMAIL — creating and filling SDs: FISS//”. MAILFISS. INDIC “, FISS//”. MAILFISS. HEAV “, FISS//”. MAILFISS. CTIP “, FISS//”. MAILFISS. HECT “, FISS//”. FONDFISS “, FISS//”. FONDMULT “.
XBASLO - creation of SD FISS//”. BASLOC “which contains the local base at the points of the associated crack bottom.

Figure 1. The operator call tree DEFI_FISS_XFEM