# Méthode de fast marching pour la propagation de fissures 3D dans Code ster

Matthieu Le Cren, Patrick Massin

► To cite this version:

Matthieu Le Cren, Patrick Massin. Méthode de fast marching pour la propagation de fissures 3D dans Code ster. 12e Colloque national en calcul des structures, CSMA, May 2015, Giens, France. hal-01516620

HAL Id: hal-01516620

https://hal.science/hal-01516620v1

Submitted on 2 May 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC0 1.0 - Universal - International License
# Méthode de fast marching pour la propagation de fissures 3D dans Code_aster

M. Le Cren<fnref n="1" />, P. Massin<fnref n="2" />

**Résumé** — Dans le cadre de la méthode X-FEM, l'avantage de pouvoir représenter la fissure indépendamment du maillage repose sur l'utilisation de courbes de niveau. La simulation de la propagation est liée à la réactualisation de ces courbes de niveau. Nous proposons ici une méthode de propagation basée sur la fast marching, applicable à un maillage régulier. Nous étudions son extension à tous types de mailles.

**Mots clés** — X-FEM, levet set, propagation.

## 1 Introduction

La méthode des éléments finis étendus (X-FEM) [1] couplée avec une représentation de la fissure par des level sets s'est révélée intéressante pour simuler la propagation de fissures. L'avantage principal de la combinaison de ces deux outils est la possibilité d'introduire la fissure indépendamment du maillage. La fissure est représentée par deux fonctions level sets orthogonales entre elles et il suffit de mettre à jour ces fonctions pour simuler la propagation de la fissure. Il existe dans Code_Aster plusieurs méthodes permettant de réactualiser les level sets : des méthodes basées sur la résolution d'équations différentielles de type Hamilton Jacobi [2] ou des méthodes basées sur une approche géométrique [3]. Nous proposons ici une nouvelle méthode de propagation basée sur la fast marching [4] que nous souhaitons évaluer et étendre à tous types de mailles.

## 2 Propagation des level sets

Pour simuler la propagation de fissure dans Code_Aster, deux levels sets sont nécessaires : une level set normale (lsn) et une level set tangente (lst). L'iso-zéro de lsn définit la surface de la fissure et l'intersection de lsn = 0 et lst = 0 définit le fond de fissure. Après la propagation, la géométrie de la fissure change et il faut donc faire évoluer les level sets pour décrire cette nouvelle configuration. À la suite de cette évolution, les level sets n'ont plus leurs propriétés d'orthogonalité et de fonction distance signée qui les caractérisent. Nous devons procéder à différentes phases pour que les level sets retrouvent ces propriétés :

* réinitialisation de la level set normale;

* réothorgonalisation de la levet set tangente par rapport à la level set normale;

* réinitialisation de la level set tangente.

L'ordre de ces étapes est important car dans le cas d'une fissure non plane, il n'est pas possible de vérifier en même temps la condition d'orthogonalité et de gradient unitaire sauf en fond de fissure. On privilégie la notion de fonction distance signée à celle d'orthogonalité, afin de pouvoir avoir accès à la distance au fond de fissure. Cette information est importante pour définir les fonctions singulières d'enrichissement dans le cadre X-FEM [5].

## 3 Fast Marching Method

Nous allons présenter la fast marching method et montrer son intérêt dans la propagation de fissure. La Fast Marching Method a été introduite par James Sethian en 1996, l'idée générale dérive du forma-

<footnote n="1">¹ LaMSID, UMR EDF-CNRS-CEA 8193, matthieu.le-cren@edf.fr</footnote>

<footnote n="2">² LaMSID, UMR EDF-CNRS-CEA 8193, patrick.massin@edf.fr</footnote>
lisme levet set pour la propagation de front [4].

La méthode s'appuie en effet sur une technique de propagation de front, l'information de distance étant propagée de proche en proche jusqu'à couvrir l'ensemble du domaine de calcul.

## 3.1 Le principe de la méthode

On a vu précédemment qu'après la phase de propagation d'une level set, il fallait réinitialiser celle-ci afin de conserver une fonction distance signée. En d'autres termes, si l'on suppose que la fonction $\Phi(x,t) = \Phi_0(x)$ vérifie pour chaque noeud du maillage la propriété d'une fonction distance signée donnée par $|| \nabla \Phi || = 1$, la fonction level set à $t > 0$ n'a plus cette propriété. Il faut donc mettre en place un processus de réinitialisation permettant à $\Phi$ de redevenir une fonction distance signée.

Nous proposons ici une méthode de fast-marching, qui résout l'équation Eikonale de la forme :

$$ 
\begin{aligned}
|| \nabla \Phi(x) || &= F(x), x \in \Omega \\
\Phi(x) &= 0, x \in \partial \Omega
\end{aligned}
 $$

Avec $\Phi \in \mathbb{R}^n, n \in \{2,3\}$ et $F$ une fonction à valeurs positives.

Le principe de la méthode fast-marching consiste à propager de proche en proche la donnée de la distance des points depuis les valeurs les plus faibles, c'est-à-dire proches de l'interface, aux zones les plus lointaines. Pour la propagation des levels sets, on utilise les valeurs autour de l'iso-zéro de la level set pour propager l'information. Deux appels à la méthode sont nécessaires pour traiter tous les noeuds du maillage : le premier appel traitera les points de la level set à valeur positive et le second les points à valeur négative.

Pour cela, la méthode répartit les noeuds du maillage en trois catégories :

* Frozen points : région du maillage où les points ont déjà été calculés;

* Narrow band : région proche des points déjà calculés;

* Far away : ensemble des points restants.

La méthode de fast marching peut se passer de l'étape de réorthogonalisation car une fois la réinitialisation de la level set normale effectuée, on peut initialiser les valeurs de la level set tangente sur son ancienne iso-zéro de manière exacte, part l'approche géométrique [3]. On pourra donc utiliser ces valeurs exactes comme condition initiale de la méthode pour propager cette information sur l'ancienne iso-zéro de la level set tangente au domaine tout entier.

## 3.2 Discrétisation du problème

Dans la phase de réinitialisation d'une level set on cherche à résoudre numériquement un cas particulier de l'équation eikonale, c'est-à-dire $F = 1$. $\phi$ étant la fonction level set on a :

$$ || \nabla \Phi || = 1 \qquad (1) $$

En discrétisant cette équation par différence finie upwind, avec $\Delta_x, \Delta_y$ et $\Delta_z$ les pas d'espace en $x, y$ et $z$ respectivement, on obtient un trinôme du $2^{nd}$ degré qui approxime l'équation (1) sous la forme :

$$ P(\Phi_{i,j,k}) = 0 \qquad (2) $$

avec :

$$ P(\Phi_{i,j,k}) = \left( \frac{\Phi_{i,j,k} - \phi_1}{\Delta_x} \right)^2 + \left( \frac{\Phi_{i,j,k} - \phi_2}{\Delta_y} \right)^2 + \left( \frac{\Phi_{i,j,k} - \phi_3}{\Delta_z} \right)^2 - 1 $$

et :

$$ \Phi_1 = \min(\Phi_{i-1,j,k}, \Phi_{i+1,j,k}) $$

$$ \Phi_2 = \min(\Phi_{i,j-1,k}, \Phi_{i,j+1,k}) $$

$$ \Phi_3 = \min(\Phi_{i,j,k-1}, \Phi_{i,j,k+1}) $$
La distance augmente lorsque nous nous éloignons de l'interface, ce qui implique que seule la plus grande racine du trinôme est envisageable :

$$ \Phi_{i,j,k} = \frac{\alpha + \gamma}{\beta} \qquad (3) $$

avec :

$$ \alpha = \phi_1 \Delta_y^2 \Delta_z^2 + \phi_2 \Delta_x^2 \Delta_z^2 + \phi_3 \Delta_x^2 \Delta_y^2 $$

$$ \beta = \Delta_y^2 \Delta_z^2 + \Delta_x^2 \Delta_z^2 + \Delta_x^2 \Delta_y^2 $$

$$ \gamma = \sqrt{\alpha^2 - \beta (\phi_1^2 \Delta_y^2 \Delta_z^2 + \phi_2^2 \Delta_x^2 \Delta_z^2 + \phi_3^2 \Delta_x^2 \Delta_y^2)} $$

### 3.3 Propagation de fissure en 3D hors-plan

Une éprouvette pré-fissurée en flexion 3 points est modélisée comme sur la figure 2. La fissure est initialement inclinée par rapport à la direction de chargement, ce qui signifie qu'une torsion considérable de la surface de la fissure est observée. La fissure affiche une charge en mode mixte I + II + III avec un front de propagation qui se déverse pour retrouver une solution en mode I.

<figure><img src="image_2.png" /><figcaption>FIGURE 1 – Modélisation de la stucture.</figcaption></figure>

Une étude expérimentale cf. [6] a été réalisée pour prédire le comportement de la fissure et pouvoir faire des comparaisons avec les simulations numériques.

<figure><img src="image_3.png" /><figcaption>FIGURE 2 – Etude expérimentale avec représentation de la surface de la fissure.</figcaption></figure>

On utilise une grille auxiliaire [7] constituée de mailles hexaédriques pour appliquer la méthode. Le logiciel de raffinement Homard<fnref n="1" /> est utilisé avec Code_Aster pour calculer au mieux la position du fond de fissure.

<figure><img src="image_4.png" /><figcaption>FIGURE 3 – Représentation de la level set normale</figcaption></figure>

<footnote n="1">1. Le logiciel Homard est un logiciel libre qui fait partie de l'ensemble des moyens logiciels mis à disposition avec Code_Aster</footnote>
La figure 3 représente la level set normale qui est la surface de la fissure. L'utilisation d'un tore de calcul est adoptée pour limiter la zone de réinitialisation des level sets. Ce tore est localisé autour du fond de fissure, ce qui implique que les valeurs de la level set normale au-delà de ce tore ne seront pas réactualisées.

<figure><img src="image_5.png" /></figure>

<figure><img src="image_6.png" /><figcaption>FIGURE 4 – Localisation du fond de fissure pour chaque pas de propagation</figcaption></figure>

# 4 Conclusion et perspectives

La fast marching method s'avère être efficace pour propager une fissure dans Code_Aster. Le point contraignant de celle-ci est le besoin d'utiliser une grille auxiliaire si le maillage n'est pas régulier. Des travaux existants proposent des méthodes permettant d'utiliser la fast marching sur des maillages irréguliers [8]. Nous étudions actuellement une extension qui permet d'utiliser une méthode de fast marching sur tous types de mailles et ainsi s'affranchir de l'utilisation de la grille auxiliaire.

# Références

[1] N. MOES, J. DOLBOW, and T. BELYTSCHKO. A finite element method for crack growth without remeshing. *International Journal for Numerical Methods in Engineering*, 46 :135-150, 1999.

[2] A. GRAVOUIL, N. MOES, and T. BELYTSCHKO. Non-planar 3D crack growth by the extended finite element and level sets - Part II : Level set update. *International Journal for Numerical Methods in Engineering*, 53 :2569-2586, 2002.

[3] D. COLOMBO. An implicit geometrical approach to level sets update for 3D non planar XFEM crack propagation. *submitted to Computer Methods in Applied Mechanics and Engineering*, 39-50 :237-240, 2012.

[4] J.A. SETHIAN. A fast marching level set method for monotonically advancing. *Proc.Natl.Acad.Sci.USA*, 93 :1591-1595, 1996.

[5] N. MOES, A. GRAVOUIL, and T. BELYTSCHKO. Non-planar 3D crack growth by the extended finite element and level sets - Part I : Mechanical model. *International Journal for Numerical Methods in Engineering*, 53 :2549-2568, 2002.

[6] V. LAZARUS, F.G. BUCHHOLZ, M. FULLAND, and J. WIEBESIEK. Comparison of predictions by mode II or mode III criteria on crack front twisting in three of four bending experiments. *International Journal of Fracture*, 153 :141-151, 2008.

[7] B. PRABEL, A. COMBESCURE, A. GRAVOUIL, and S. MARIE. Level set X-FEM non matching meshes : application to dynamic crack propagation in elastic-plastic media. *International Journal for Numerical Methods in Engineering*, 69 :1553-1569, 20067.

[8] R. KIMMEL and J. SETHIAN. Computing geodesics path on manifolds. *Proceedings of National Academy of Sciences*, 95 :8431-8435, 1998.