3. General operation#

The RAFF_XFEM operator allows you to create a field in preparation for mesh refinement in the context of cracks represented by the X- FEM method. The idea is to characterize the knots or meshes located in an area around the crack bottom (area of interest). This will make it possible to refine the meshes close to the bottom of the crack later, for example to improve the calculation of the energy return rate.

The field created by RAFF_XFEM can be described as an « error » field (or indicator) a priori.

The indicator created can be of 2 types (TYPE = “DISTANCE” or “ZONE”).

3.1. Distance indicator#

By choosing this type of indicator, the RAFF_XFEM operator creates a field at the "error" nodes a prima facie. This error in each node reflects the minimum distance of the distances to the bottom of the cracks (or to the surface for the interfaces).


Thus, nodes close to the bottoms of X-FEM cracks (or X-FEM surfaces for interfaces) will have a high "error". On the other hand, the farther away the node is, the lower the "error" will be. This criterion is used for the mesh refinement software, used later (see for example sslp317a, b). The knots closest to the bottom of the cracks will be refined in priority.


More precisely, if we note :math:`\mathrm{lsn}` the normal level set and :math:`\mathrm{lst}` the tangent level set, the field at the created node has the formula:

\(\mathrm{erreur}=-r\) where \(r\) is the distance:

  • at the bottom of the crack for cracks: \(r=\sqrt{({\mathrm{lsn}}^{2}+{\mathrm{lst}}^{2})}\)

  • to the interface for the interfaces: \(r=\sqrt{({\mathrm{lsn}}^{2})}\)

The values in the field are therefore all negative. Nodes that are very far away (\(r\) big) will have negative error values that are very far from 0 and nodes that are close (\(r\) small) will have negative error values that are close to 0. All you have to do is tell Lobster (MACR_ADAP_MAIL) to refine the meshes where the value is the greatest (mathematically speaking). To do this, you will need to specify in MACR_ADAP_MAIL:

USAGE_CMP = “RELATIF”

We can either refine a given percentage of cells closest to the bottom (CRIT_RAFF_PE), or give a value of the distance (more precisely the opposite of the distance) below which the cells will be refined (CRIT_RAFF_ABS). For more tips, see the documentation [U2.05.02].

This distance indicator can cause problems that we will not discuss here. This is why a second, more robust indicator has been developed.

3.2. Indicator by zone (binary indicator)#

This is the recommended indicator.

By choosing this indicator, the operator RAFF_XFEM creates a field per mesh (map-type field) of a binary nature. The principle of this indicator is to have 1 value in the area to be refined (zone of interest) and 0 everywhere else. The zone of interest is in 2D a disk around the bottom of the crack and in 3D a torus around the bottom of the crack, characterized by the data of a radius \({R}_{\mathit{raff}}\).

For interfaces, the area of interest is a band around the interface.

More specifically:

The field is initialized to 0.

The field is set to 1 if the mesh contains:

  • the bottom of the crack (for cracks),

  • the interface (for interfaces).

In addition, the field is set to 1 if the mesh has at least one node located at a distance from the background (or from the interface) less than \({R}_{\mathit{raff}}\). This distance is determined in the same way as that used in the distance indicator (see § 3.1).

This indicator is easier to handle than the distance indicator. It is used with the default keywords of MACR_ADAP_MAIL, but exclusively with an absolute value criterion (CRIT_RAFF_ABS). Regardless of the value of the criterion (between 0 and 1), but for reasons of readability, we recommend choosing CRIT_RAFF_ABS = 0.5. Examples of use can be found in the sslv155 [b, c], sslv110f, sslp317c tests. For more tips, see the documentation [U2.05.02].

3.3. Note common to the 2 types of indicator#

It should be noted that the 2 indicators are based on the level sets. At present, the level sets are calculated over the entire mesh, but you can limit the potential enrichment area to only a part of the mesh (keyword GROUP_MA_ENRI in the DEFI_FISS_XFEM command). In the case where the level sets are likely to define a crack outside the zone delimited by GROUP_MA_ENRI [1] _ , the indicator calculated by RAFF_XFEM based on level sets, does not take into account the crack restriction. This means that some knots or certain meshes (outside of GROUP_MA_ENRI) may have high error values without being close to the bottom of the crack. To avoid these nodes causing unnecessary refinement in this area, it is advisable to also limit the refinement area in MACR_ADAP_MAIL, using the GROUP_MA keyword (put the same group of elements as the one entered under GROUP_MA_ENRI).