J Cma 2011 03 014

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

Comput. Methods Appl. Mech. Engrg.

200 (2011) 2160–2180

Contents lists available at ScienceDirect

Comput. Methods Appl. Mech. Engrg.


journal homepage: www.elsevier.com/locate/cma

Fast and robust level set update for 3D non-planar X-FEM crack
propagation modelling
Daniele Colombo a,b,⇑, Patrick Massin b
a
School of Mechanical, Aerospace and Manufacturing Engineering, The University of Manchester, Manchester, UK
b
EDF R&D – LaMSID Laboratoire de Mécanique des Structures Industrielles Durables, UMR EDF-CNRS-CEA 2832, 1 avenue du général de Gaulle, 92141 Clamart, France

a r t i c l e i n f o a b s t r a c t

Article history: In the X-FEM framework, the need to represent a discontinuity independently of the structural mesh
Received 27 September 2010 relies on the level set technique. Hence crack propagation can be simulated by an update of two distinct
Received in revised form 19 February 2011 level sets, the evolution of which is described by differential equations. The aim of this paper is to analyse
Accepted 28 March 2011
the resolution of these equations in order to formulate a robust and fast numerical process allowing 3D
Available online 1 April 2011
crack propagation simulations even in presence of high kink angles occurring in mixed mode propaga-
tion. The numerical integration is accomplished by means of a robust finite difference upwind scheme
Keywords:
applied to an auxiliary regular grid. An alternative level set update equation and a fast localisation of
X-FEM
Crack propagation
the integration domain, specifically developed for crack propagation problems, are formulated and
Level sets proposed in the paper in order to gain in stability, robustness and performance.
Upwind Ó 2011 Elsevier B.V. All rights reserved.
Finite difference scheme
Localisation

1. Introduction to update efficiently the level sets, some of which deal with partial
differential equations describing mathematically the problem of
In the last decade the eXtended Finite Element Method (X-FEM) the evolution of the level sets [2–4] while others deal with geomet-
[12,13] coupled with a level set [15] representation of the crack rical evolutions and non-differential equations [14,5]. A compari-
[1,2,7] has shown to be a powerful and efficient tool for crack prop- son between some of these methods for a 2D case can be found
agation simulations. The most appealing aspect of the X-FEM tech- in [5].
nique is its capability to introduce a crack in a finite element model In the present paper the update of the level sets related to a 3D
independently of the mesh thanks to the fact that the crack is not propagation is analysed in detail in order to formulate a robust and
meshed. Then the discontinuity in the displacement field across fast numerical procedure for 3D crack propagation simulations
the crack surface and the singularity of the stress field at the crack even in presence of high kink angles when mode change occurs.
front are introduced in the finite element model through a local The methodology proposed in [2] is adopted as the starting point
enrichment of the shape functions of the elements surrounding because of its generality. The entire update process is composed
the crack [13]. By its nature, the X-FEM technique requires there- of several steps. After the extension of the crack propagation veloc-
fore that the crack front and surface are represented somehow ity from the crack front to the whole domain, the level set func-
independently of the mesh of the structure. The level set method tions are first updated in order to accommodate the propagation.
is commonly used for such purpose thanks to its generality and Then, being no more signed distance functions and no more
efficiency. It represents the crack independently of the mesh by orthogonal, the level sets are processed further by a reinitialisation
means of two signed distance functions, the normal and tangential and reorthogonalisation step. All these steps are entirely based on
level sets, which are orthogonal. The crack propagation can be Hamilton–Jacobi type partial differential equations [2]. In presence
therefore comfortably managed by updating the values of the of a kink the integration of these equations reveals to be
two level set functions without modifying anything in the mesh. problematic.
Several techniques have been proposed and successfully applied Considering the level set update step, in case of mixed mode
crack propagation at high kink angles, instabilities may appear
during the integration of the update equation. Moreover, if an
⇑ Corresponding author at: School of Mechanical, Aerospace and Manufacturing
Engineering, The University of Manchester, Manchester, UK. Tel.: +44 (0) 161 275
explicit integration scheme is used to integrate the equation in
4306. presence of high kink angles, a lot of integration steps are neces-
E-mail address: daniele.colombo@manchester.ac.uk (D. Colombo). sary to integrate over a given time interval due to the existing limit

0045-7825/$ - see front matter Ó 2011 Elsevier B.V. All rights reserved.
doi:10.1016/j.cma.2011.03.014
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2161

on the integration step size (CFL condition), and therefore really un ðx; tÞ ¼ 0;
ð1Þ
poor performance is obtained. This problem can be avoided if im- ut ðx; tÞ ¼ 0;
plicit integration schemes are used, at the cost of a higher com-
plexity of the software. Recently a one iteration solution, based where x represents the vector defining the position of one point in
on the fast marching method, has been proposed in [18] or [25]. the domain and t represents the time. For each point in the domain,
However, as reported in one of these papers, the solution can be af- the normal level set un gives the normal distance between the point
fected by errors in regions near the boundaries. In order to over- and the surface defined by the union of the crack surface and its
come these problems, an alternative update equation is proposed tangential extension ahead of the front. Similarly, the tangential
here. Being an explicit polynomial equation, neither integration level set ut gives the normal distance between the point and the
schemes nor iterative resolution algorithms are necessary to calcu- surface obtained extruding the crack front normally to the crack
late the solution and excellent performance and stability can be surface. By definition, the normal level set is zero for the points
obtained while keeping the complexity of the software at a mini- lying on the crack surface. The crack front is given by the intersec-
mum. For similar reasons, the partial differential equations (PDEs) tion of the iso-zero surface of the normal level set and the iso-zero
describing the extension of the crack propagation velocity from the surface of the tangential level set. The sign of the normal level set is
crack front to the whole domain are substituted for an alternative used to distinguish arbitrarily the two sub-domains into which the
geometrical method. Thanks to this approach, a smooth velocity crack surface and its extension divide the domain. In the same way,
field is obtained in a short calculation time even in presence of high a negative sign of the tangential level set is used to assess the points
kink angles. lying inside the existing crack, which are the points in the sub-
Concerning the numerical resolution of the reinitialization and domain defined by the normal extrusion of the crack surface.
reorthogonalisation equations, inspired by the work of Prabel and The analytical expression of the two level set functions is
co-workers [10], an upwind finite difference scheme applied to generally unknown, except when the shape of the crack front
an auxiliary regular grid is adopted. Its performance and robust- is simple, for example a straight line, a circle or an ellipse. This is
ness is greater than the one of the simplex method [9], originally usually the case at the beginning of a crack propagation simulation,
adopted in [2], whose advantage is given by the fact that it can when the crack is introduced in the model with an assumption on
be applied to unstructured meshes. The use of the auxiliary grid re- its shape and dimension. In any case, the changes in the level set
quires however a supplementary projection phase in order to pro- functions during the propagation steps cannot be usually tracked
ject the updated level sets on the structural mesh for X-FEM using analytical expressions and the equations of evolution
calculations. The application of the upwind scheme reveals to be described in Section 2.1 must be used.
problematic in some points on the calculation domain boundaries The level sets allow to easily locate the crack front in the mesh.
and the boundary conditions chosen to overcome this problem This operation is not only dedicated to the X-FEM approach, for
show to be critical for the stability of the scheme. An algorithm which the elements cut by the iso-zero surface of the normal level
injecting the correct values of the level sets at the problematic set need to be located in order to correctly select the nodes to be
boundary points during the application of the upwind scheme is enriched, but also for the post-processing operations required for
formulated in this paper. However, consequently to the enforced the calculation of the stress intensity factors along the front and
boundary conditions, a performance degradation of the scheme for the determination of the crack propagation direction at each
can be experienced if the calculation domain extends too far from point of the front. This task can be accomplished by searching for
the crack front. This could also lead to robustness degradation. In the elements for which the sign of the level sets differs at their
order to overcome these issues, a fast localisation of the calculation nodes [1,6,7]. Thanks to the X-FEM framework, the crack front
domain around the crack front is formulated in details. A simple can be located anywhere in the structure and its shape does not
and fast way to move this domain between propagations, in order need to conform to the shape of the elements and to the location
to follow the crack front, is also presented. Thanks to this approach of the nodes. Once the elements cut by the crack front are located,
the robustness of the upwind scheme is enormously increased the exact position of the crack front can be calculated in each ele-
and the computational time for all the phases, not only the one ment. The shape functions of the element are used as usual to
where the upwind scheme is applied is strongly decreased. interpolate the nodal values of the level sets inside the element
The capabilities of the alternative level set update scheme for- [1]. In the case of linear elements, the representation of the crack
mulated in the paper are shown by some numerical test cases in is piecewise linear and a discrete number of points is usually used
the last part of the paper. This scheme has been implemented by to describe the geometry of the crack front in a piecewise linear
the authors in the free finite element software Code_Aster devel- way. Geometrically speaking, each point represents the intersec-
oped by Electricité De France R&D and freely available on the tion of the crack front, described by the intersection curve of the
web site of the project [11]. All the numerical examples shown two level set iso-zero surfaces (Eq. (1)), with the faces of the
in the paper have been obtained using this software. elements of the finite element model. Consequently the calculation
The paper is organised as follow. After a brief review of the basic of the stress intensity factors and the determination of the crack
principles of the level set theory and of their equations of evolution propagation direction and velocity are performed numerically at
in Section 2, the problems plaguing the integration of PDEs in pres- each point of this discrete group of points representing the front
ence of a kink are outlined in Section 3. In Section 4 an alternative [1].
formulation of the whole update process is presented. In Section 5
the evolution of the space approximation of the X-FEM discretiza- 2.1. Equations of evolution of the level sets
tion as the crack propagates is discussed. Finally, in Section 6 some
numerical test cases are shown. The level set update process is composed by four phases [2].
First the two level sets are independently updated to accommodate
the propagation:
2. Level set representation of a crack @u
þ kruk  V nu ¼ 0; ð2Þ
@t
The level set method describes the crack geometry by using two
signed distance functions, called normal and tangential level set, of where Vnu is the component of the crack propagation velocity
the form [2]: vector normal to the level set and t is the physical time. After the
2162 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

update, the level sets loose their signed distance function property Table 1
and they are no more orthogonal to each other. Therefore the level Values of vector u and constant c of Eq. (6) at each calculation phase.

sets are reinitialised and reorthogonalised, which corresponds to Phase u c


the steady-state solution of the following equation with respect to Reinitialisation of un or ut (uls = un or uls c = sign(uls)
u¼ signðuls Þ kr
ruls k
a virtual time s: uls = ut, respectively)
Reorthogonalization of ut with respect to u ¼ signðuls Þ kr un c=0
ru k
 Reinitialisation of the normal level set (krunk = 1): un(uls = ut) n

@ un
¼ signðun Þ  ðkrun k  1Þ: ð3Þ
@s
V n  ut
V n ¼ Hðut Þ ; ð8Þ
 Reorthogonalisation of the tangential level set to the normal V t  Dt
level set (run  rut = 0): where H(ut) is the Heaviside function and Dt is the time interval
@ ut run simulated in the actual propagation step.
¼ signðun Þ  rut : ð4Þ
@s krun k
3. Numerical problems related to the integration of the
 Reinitialisation of the tangential level set (krutk = 1): equations of level set evolution in presence of a kink
@ ut
¼ signðut Þ  ðkrut k  1Þ: ð5Þ The update methodology briefly reviewed in the previous para-
@s
graph should not be applied in case of a kink [2]. Effectively, in
The order in which these different phases are performed is presence of high propagation angles, several problems are encoun-
important since it is not possible to represent a curved crack by le- tered when Eqs. (2)–(7) are integrated, which cause the whole
vel sets satisfying at the same time Eqs. (3)–(5) everywhere (but update process to fail. In particular, the resolution of Eq. (2) is pla-
Eqs. (3)–(5) will be satisfied on the crack front as seen on Fig. 1). gued by a problem of accuracy and by numerical instabilities,
In order to obtain easily the distance to the crack front, the process whilst the integration of the remaining equations is affected by a
ends for each level set by its reinitialisation. performance and robustness problem.
With simple manipulations, Eqs. (3)–(5) can be rewritten in the
following form, which is formally a wave propagation equation: 3.1. Problems affecting the integration of the update Eq. (2)

@ uls
þ u  ruls ¼ c; ð6Þ The integration of Eq. (2) is difficult in presence of a high kink
@s angle due to the presence of a discontinuity in the gradient of
where the expressions of vector u and of constant c depend on the the level set iso-surfaces at the crack tip. Moreover, Eq. (2) is pla-
particular phase (see Table 1). gued by a low accuracy of the predicted position of the new crack
In order to apply Eq. (2), the crack propagation velocity must be front position which increases with the kink angle, as shown in the
propagated from the crack front, where it is calculated by means of example of Fig. 2, where three propagations of an initially straight
a propagation law, to the whole domain by searching for the stea- crack are calculated. For each propagation step, a displacement of
dy-state solution of the following equations with respect to the vir- the crack front of 2 mm and a kink angle of 30° are imposed. The
tual time s: expected piecewise linear path of the crack, calculated by hand,
is shown in the figure as the black continuous line. The path
@V t rut obtained by integrating Eq. (2) through the use of a second order
þ signðut Þ  rV t ¼ 0;
@s krut k Runge–Kutta scheme is shown by the grey dashed line. When
@V t run
þ signðun Þ  rV t ¼ 0;
@s krun k
ð7Þ
@V n run
þ signðun Þ  rV n ¼ 0;
@s krun k
@V n rut
þ signðut Þ  rV n ¼ 0;
@s krut k

where Vn and Vt are the norm of the velocity vector normal to un


and ut, respectively. After the extension, Vn is modified further for
the points ahead of the crack front [2]:

Fig. 1. Antagonism between reinitialisation and reorthogonalisation phases. (a) The


tangential level set has undergone the reinitialisation phase and therefore its iso-
surfaces are parallel to ut = 0. (b) The tangential level set has undergone the Fig. 2. Propagation of a 2D initially straight crack. Comparison between the
reorthogonalisation phase and therefore at each point its iso-surfaces are normal to propagation path obtained by integrating equation (2) and the correct one for three
the normal level set iso-surfaces. imposed propagations of Da = 2 mm and a kink angle of 30°.
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2163

comparing the calculated crack tip position after each propagation This problem was pointed out and corrected for a 2D case in [5].
step with respect to the expected position, it is evident that the If the proposed correction is extended to the 3D case, the following
solution of Eq. (2) is inaccurate. The error affecting this solution vector equations can be written:
cumulates through the propagation steps. @ un ðtÞ
þ run ðtÞ  V N ¼ 0;
@t ð9Þ
@ ut ðtÞ
þ rut ðtÞ  V T ¼ 0;
@t
where VN and VT refer to the propagation velocity vector respec-
tively normal and tangential to the crack surface at the beginning
of the integration step. As shown in Fig. 3, the correct solution is
found when using Eq. (9).
However, even the use of these equations cannot avoid the
appearance of instabilities in the solution in case of a high kink
angle. This is probably caused by the presence of non-smooth level
set iso-surfaces and strong discontinuities in the level set
gradients. An example is given in Fig. 4 for a 3D mixed mode
propagation case. A twisted propagation is imposed to the crack
front, which means that all the points of the crack front CD advance
of the same quantity with a normal displacement equal to zero for
the central point and equal in absolute value but of opposite sign
for points C and D. For all the other points a linear interpolation
of the normal displacement is adopted. In Fig. 5a the configuration
of the iso-zero surface is shown. The imposed angle of twist at
points C and D is 60°. The level sets have been updated only in
the cylindrical sub-domain shown in the figure and built around
Fig. 3. Comparison between the correct crack path and the numerical ones
obtained by means of the original level set update Eq. (2) and the vector Eq. (9).
the crack front CD in order to speed up the calculation, as ex-
The path obtained by the vector equations is in excellent agreement with the plained in details later at Section 4.3. The level set outside this cyl-
correct path. inder is not changed and the values before the propagation are
therefore preserved, which explains the discontinuity in the iso-
zero surface across the cylindrical domain. In Fig. 5b the correct
configuration is shown and in Fig. 5c the configuration obtained
by integrating Eq. (2) is reported for comparison. A Runge–Kutta
scheme of order 2 has been used to integrate the equation. The
instability is located in the upper part of the update tore, starting
from the borders of the update domain. In order to exclude that
the cause of this behaviour is related to the integration scheme
and to the mesh adopted in the calculation, several other solutions
have been calculated using finer meshes, smaller time integration
steps and a higher order Runge–Kutta scheme (4th order). In all
Fig. 4. SEB specimen with an initial planar centred crack inclined with respect to cases, the same wrong solution of Fig. 5c was obtained. As a conse-
the plane of symmetry of the specimen. The crack front is given by the segment quence, the convergence of the following reinitialisation and reor-
connecting points C and D. thogonalisation phases cannot be achieved.

Fig. 5. (a) Iso-zero surface of the normal level set after an imposed propagation with a twist of 60° for the SEB specimen of Fig. 4. The initial straight crack front is coincident
with segment CD. The update has been carried out only in the cylindrical domain shown in the figure built around the initial crack front (see Section 4.3 for details). (b)
Correct configuration of the iso-surfaces of the normal level set. (c) Iso-surfaces of the normal level set obtained by integrating Eq. (2). The instability is clearly visible. A
consequence of this instability is the non-convergence of the reinitialisation and reorthogonalisation phases.
2164 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

3.2. Problems affecting the integration of the reinitialisation and In Code_Aster [11] a value of 107 for R is used to check
reorthogonalisation equations convergence.

The integration of Eqs. (3)–(5) can be carried out efficiently by 3.2.2. Performance and stability issues with the upwind discretization
means of the simplex method by Barth and Sethian [9], as in [2]. The upwind derivative of the level set (Eq. (11)) at a particular
The most appealing feature of the simplex method is that it can point is calculated using the value of the level set at the neighbour-
be applied directly to triangular (2D case) or tetrahedral (3D case) ing points in the positive or negative direction of each axis of the
meshes. Considering the fact that the meshes used to create finite local base. The upwind direction to be used is given by the direc-
element models of real structures are unstructured and irregular tion of the projection of vector u on the axes of the local basis,
and that any element can be split into triangular or tetrahedral which is completely independent of the domain geometry (see
elements without any particular effort, the simplex method can Table 1). As a consequence, the upwind derivative cannot be
be directly applied to any structural mesh. calculated at all the points on the domain boundaries where the
In spite of this great advantage, in this paper an upwind scheme necessary neighbouring point is missing, as shown in the example
is adopted, as originally done in [10] for a 2D case or as in [18] for in Fig. 6.
simple 3D situations in association with the fast marching method. In order to solve this kind of problems at the boundary, the
The reason for this choice is that, on the basis of author’s imple- ghost point technique is usually used in fluid-dynamics (e.g.
mentation of the two algorithms, the performance and stability [21]), for which the information is somehow extrapolated to the
of the upwind scheme has revealed to be superior to the one of missing point outside the domain using the information inside
the simplex method [11]. However, even the upwind scheme the domain. This is usually accomplished through an extrapolation
exhibits stability and performance problems when simulating process of a quantity, like the pressure or the velocity, based on the
propagations at high kink angles. physical meaning of the wave propagation being simulated. In the
case of level set propagation, the extrapolation process could be
3.2.1. First order upwind scheme formulation for a 3D case based probably only on the continuity of the level set iso-surfaces.
The upwind scheme we chose is a first order finite difference However, finding a way to do that is not straightforward, especially
scheme that can be applied only to a regular grid of points, which in 3D cases. Moreover, the upwind scheme uses only the informa-
means that the nodes of unstructured and irregular meshes used to tion coming from the upwind direction and therefore the extrapo-
model real structures cannot be used as grid points. As done in lation process must use only the information coming from that
[10], an auxiliary regular grid of points can be adopted for the rep- direction, independently of the complexity of the adopted extrap-
resentation of the level sets. This grid is completely independent of olation scheme. In failing to respect this constraint one would
the structural mesh and it extends only in the region where the cause oscillations of the solution during the integration of the
crack propagation occurs. All the calculations on the level sets equations and the convergence would not be obtained: if a down-
are performed on this grid and the new calculated values are pro- wind point was used, there would be some backward information
jected on the structural mesh in order to introduce the crack in the going in the upwind direction causing upwind and downwind
X-FEM model, to solve the cracked model and to carry out the information mixing at the neighbouring points of the problematic
stress intensity factor computations. Eqs. (3)–(5) are solved only point on the boundary, with disastrous results.
on the grid. In order to guarantee a generic and robust solution to the prob-
Given the local base (j1, j2, j3) of the grid, the upwind discretiza- lem, the extrapolation should therefore be avoided. The best way
tion of Eq. (6) at a grid point xk at the nth iteration can be written to solve the problem is probably to impose directly the solution
as: at the problematic points on the boundary: if, during the integra-
! tion process, a point on the boundary is detected where the up-
X
3
unþ1 n
unji ðxk Þ  Di unls ðxk Þ  c ; wind derivative cannot be calculated by means of Eq. (11), the
ls ðxk Þ ¼ uls ðxk Þ  Ds  ð10Þ
i¼1 point is excluded from the integration domain and the correct
value of the level sets is imposed directly by means of the signed
where the upwind derivative Di unls ðxk Þ has the following expression:
distance function definition of the level set.
8 un ðx Þun ðx Þ
 !n < lsðx kx ls Þjk;i if unj ðxk Þ > 0;
@ uls  n k k;i i i
’ D u ðx Þ , ð11Þ
@ji xk
i ls k
: unls ðxk;iþ Þunls ðxk Þ if un ðx Þ < 0:
ðx x Þj ji k
k;iþ k i

In the previous equation xk,i and xk,i+ are the neighbouring


points of point xk in the negative and positive direction of axis ji,
respectively.
The upwind scheme is explicit and conditionally stable. Consid-
ering that kuk = 1 by definition (Table 1), the critical integration
time step is given by the following CFL condition:
 
h
DsCFL ¼ min ¼ minðhÞ; ð12Þ
kuk

where h is the smallest distance between the points of the grid.


The residual error used to check if a steady-state solution of Fig. 6. Example of problematic boundary grid points for the upwind scheme. A 2D
Eq. (6) has been achieved is calculated only in a small domain cracked plate is represented. The dashed line represents the tangential extension of
around the crack front: the crack surface. Vector u of Eq. (6) is shown. The grid used for the integration is
shown and the grid points at the boundary are highlighted by coloured dots. Grid
vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
 2ffi
uP points represented by white dots can be successfully updated by the upwind
u x 2X unþ1 ðx k Þ  u n
ðx k Þ
R¼t k P loc ls ls scheme, whereas this is not possible for the points represented by grey and black
2
ð13Þ dots because the neighbouring points necessary for the calculation of the upwind
xk 2Xloc ðuls ðxk ÞÞ
n
derivative are outside the grid.
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2165

Even if on one hand the injection of the correct level set value at 4. Alternative level set update formulation in presence of high
some points on the boundary allows to avoid instabilities of the kink angles
upwind scheme, on the other hand it causes a deterioration of
the scheme performance, especially in presence of high king an- In order to address all the problems shown above, an alternative
gles. As a matter of fact precise estimates of the level set functions formulation of the whole level set update process is proposed in
far from the iso-zero surfaces will require an unnecessary high the next paragraphs. First, a polynomial explicit equation replacing
number of iterations to have convergence everywhere in a domain Eq. (2) is formulated in Section 4.1 for the level set update step
extending far away from the iso-zero surfaces. Therefore the con- allowing to completely avoid the appearance of the instability
vergence is checked only in a small domain around the crack tip, and to enormously increase the performance of the step. Then in
where the level set configuration is of paramount importance. Section 4.2 a geometric approach is proposed for the velocity
The injection of the correct level set value at a point far from the extension phase. The differential equations (7) are replaced by
level set iso-zero surface creates a distortion of the level set iso- polynomial equations, allowing to obtain a smooth velocity field
surfaces at the points close to the one where the correct value in a short time even in presence of high kink angles. In Section 4.3
has been injected since the convergence has not been achieved a domain localisation technique is formulated in order to eliminate
yet. The presence of these distorted iso-surfaces causes the conver- the performance degradation issue affecting the upwind scheme
gence of the upwind scheme to fail in the following propagation applied to the reinitialisation and reorthogonalisation steps. In
step. addition, an increase of the performance of the integration process
An example is shown in Fig. 7a. A kink angle of 60° is imposed to is achieved not only for these two steps, where the upwind scheme
all the points of a straight front of an initially planar crack. The cor- is applied, but also for the previous update step. Finally, in Sec-
rect configuration of the iso-zero surfaces of the normal level set, tion 4.4 an algorithm for the calculation of the level set value to
obtained with 300 upwind iterations, is shown in Fig. 7b. The solu- be injected in the upwind scheme at the problematic points on
tion obtained checking the convergence only in a small domain the boundary is presented.
around the crack front is shown in Fig. 7c. This solution has been
achieved in 60 upwind iterations only. At the surface point A in 4.1. Alternative equations for a fast and robust level set update step
Fig. 7c the correct value of the level set has been imposed at the
first iteration of the upwind scheme to correct the approximations An alternative approach allowing to overcome the instability is-
made during the calculation of the gradient of the level set since sue discussed in Section 3.1 can be formulated looking at the phys-
vector u of Eqs. 10 and 11 (Fig. 7a) was not parallel to the plate ical meaning of Eq. (9). The velocity field obtained by means of Eq.
plane, as expected, but it pointed slightly inward the plate. At (7) is shown in Fig. 8a and b in the tangent-normal plane (tp, np) at
the inner point B in Fig. 7c the level set has been calculated by a generic point P of a 3D crack front (Fig. 9).
means of 60 upwind iterations, which are not enough to achieve Looking at the tangential velocity field (Fig. 8a), it can be said
the convergence at the point, obtained only with 300 iterations that the tangential velocity Vt at the crack tip point P is assigned
(Fig. 7b). As a consequence, a distortion of the level set iso-surface to all the points of the tangential level set ut. Point P moves to
at point A is present. point P0 and its displacement is equal to Vt  Dttot. Therefore the
These distortions can be avoided only if the convergence is value of tangential level set at point P0 becomes zero while the
achieved in the whole domain, which requires an excessively high one at point P decreases of the quantity Vt  Dttot and becomes
number of iterations and consequently an excessively high compu- Vt  Dttot. All the points on the iso-zero of the tangential level
tational time: in the example of Fig. 7, the computational time set undergo the same displacement and the same change of the
needed to obtain convergence in the whole domain (300 iterations) level set value.
was five times greater than the one needed to obtain convergence A different scheme is applied to the normal level set (Fig. 8b). A
in the small domain built around the crack tip. linear variation of the normal velocity Vn is adopted for the points

Fig. 7. (a) Example of a 3D planar crack in a plate subjected to an imposed kink angle of 60°. (b) Configuration of the normal level set iso-surfaces after the propagation
obtained by means of 300 upwind iterations. (c) Configuration of the normal level set iso-surfaces obtained by means of 60 upwind iterations while checking the convergence
only in a sub-domain Xloc built around the crack front. The distance with respect to the iso-zero of the normal and tangential level sets have been imposed as boundary
conditions on the nodes of the free surfaces of the plate consequently to the approximation in the calculation of the upwind derivatives.
2166 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

Fig. 8. Velocity field resulting from the extension of the crack propagation speed from the crack front to the whole domain. (a) Velocity field associated to the displacement of
the iso-zero of the tangential level set. (b) Velocity field associated to the displacement of the iso-zero of the normal level set.

8
< VM
N ¼ 0 for ut ðMÞ 6 0;
ut ðMÞ
: VM P
N ¼ V N  V N D t for ut ðMÞ > 0; ð15Þ
T tot

VM P
T ¼ VT;

3. Calculation of the normal and tangential propagation velocity


vectors at point M using the correct reference system, as dis-
cussed above:
(
VM
N ¼ 0;
for ut ðMÞ 6 0 :
VM M
T ¼ V T  rut ;
( ð16Þ
Fig. 9. Local base at a generic point P of a 3D crack front. VM M
N ¼ V N  nP ;
for ut ðMÞ > 0 :
VM M
T ¼ V T  tP:

of the iso-zero of the normal level set ahead of the crack tip while it
is set to zero for the points of the crack surface (Eq. (10)). Here, It should be noted that for each level set, the change of the level
point P0 undergoes a displacement equal to Vn  Dttot and moves set value at a given point of the domain is only determined by
to point Q. Therefore the normal level set at point Q decreases of the component of the associated velocity field normal to the le-
the same quantity. In a similar way, the other points undergo a dis- vel set iso-surface at that point, as stated by Eq. (9). From the
placement which depends on their distance from the crack front discussion above it can be therefore concluded that the change
(point P). This is automatically accounted for by the velocity field of the level set value at a generic point M can be calculated as
assigned to the normal level set (Eq. (8)). follows:
For a point M not belonging to level sets iso-zero surfaces,
velocity vectors can be calculated from the normal and tangential Dun ¼ ðV M
N  run Þ  Dt tot ;
crack propagation velocity vectors at its projection point P on the ð17Þ
Dut ¼ ðV M
T  rut Þ  Dt tot :
crack front (point P of Fig. 8a and b). The determination of point
P will be discussed in the next paragraph and its details are not
important now for the discussion. For a point M, one can therefore The use of Eq. (17) as an alternative to Eq. (9) is advantageous
proceed as follow: both in terms of stability and performance. In fact these equations
are explicit polynomial equations and no numerical integration is
1. Calculation of the normal and tangential propagation velocity needed, which means that the solution can be calculated immedi-
components at its projected point P: ately and in a really short time. This is strongly evident especially if
an explicit integration scheme, like the Runge–Kutta scheme, is
V PN ¼ V P  nP ; adopted to integrate Eq. (9). In fact, a high value of the normal
ð14Þ
V PT ¼ V P  t P ; velocity at the crack front, increased further by the linear extrapo-
lation used to compute the normal velocity (Eq. (8)), is needed to
where VP is the crack propagation velocity vector at point P and correctly update the level sets in presence of a high kink angle,
(tP, nP) are respectively, the tangential and normal axis to the which causes the critical time step associated to the numerical
existing crack surface at the same point (Fig. 9). scheme to decrease, due to the CFL condition, and the number of
2. Calculation of the tangential propagation velocity at point M iterations of the numerical scheme to increase, resulting in a
assuming it is equal to the one at the projection point P. On decrease of its performance. On the contrary, the computational
the contrary, a linear extrapolation is used for the calculation time associated to the use of Eq. (17) is independent of the kink an-
of the norm of the normal propagation velocity if ut(M) > 0 gle, depending only on the number of points where the calculation
while the norm is set to zero for ut(M) 6 0 since we consider is carried out. As already stated, the adoption of the localisation
we do not have any modification on the normal level set to a domain technique, described later in Section 4.3, allows to reduce
crack already existing: the number of points in the domain and to increase further the
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2167

Fig. 10. Frontal and perspective views of a 90° propagation of an initial 3D plane crack in a plate. The initial crack front is straight. The same crack front displacement and kink
angle have been imposed to all the points of the crack front.

performance of the calculation of Eq. (17). The use of an implicit can be calculated when the velocity vector and the local base at
integration scheme would avoid the performance degradation its projected point P on the crack front are provided. Therefore
affecting the explicit schemes but its performance would be surely the alternative solution must be capable of correctly calculating
worst than the one obtained by using Eq. (17). the projection of the point on the crack front, the local base
The use of these equations also allows to eliminate the instabil- at the projected point and finally the propagation velocity vector
ity problem associated to high kink angles described above at the same point.
(Fig. 5c). The robustness of these equations has been tested by Before going into the details, it is worth mentioning that the
imposing kink and twist angles up to 90°. An example is shown geometrical approach proposed in this paper relies strongly on
in Fig. 10, where a 90° propagation angle has been imposed to each the way the crack front is represented in the numerical model.
point of a straight front of a 3D plane crack. Another example is From the point of view of their numerical representation, the level
shown in Fig. 11, where a twisted propagation has been imposed sets are calculated and stored only at a discrete number of points
to an initially straight front (segment AC) of a 3D plane crack: given by the grid nodes. Consequently, the crack front is repre-
the propagation angle is zero at the central point B of the front sented in a piecewise linear way by connecting the intersection
and it is equal to ±90° at its two ends A and C. As for the case points between the faces of the cells and the crack front, defined
depicted in Fig. 5a, the update of the level set has been carried as the intersection of the two iso-zero surfaces of un and ut
out only inside a cylindrical sub-domain built around the crack (Fig. 12).
front, as detailed later in Section 4.3.
In order to check the validity of the proposed equations, differ- 4.2.1. Calculation of the local base at a point on the crack front
ent test cases have been carried out and the solutions obtained by The calculation of the local base at a point on the crack front
means of Eqs. 9 and 17 have been compared by superposing the carried out by means of the level sets gradients, as done in [2], does
iso-surfaces of the calculated level sets. As expected, no differences not guarantee the orthogonality of the calculated axes. At a point P
have been observed. on the crack front, the two axes would be calculated as follows:

4.2. Alternative geometric approach for the velocity extension step

Eq. (7) are similar to Eqs. (3)–(5) and therefore similar problems
are found during the integration. In order to overcome all the dif-
ficulties related to the presence of a high kink angle and in order to
obtain a smooth extended velocity field, an alternative geometric
approach can be used.
From the discussion of the update step in the previous para-
graph, it is clear that the velocity vectors at a generic point M

Fig. 11. Iso-zero surface of the normal level set for a 90° twist of a planar 3D crack. Fig. 12. Numerical representation of the crack front. The level sets are stored at the
The initial crack front AC is straight. The displacement of the crack front normal to nodes of the element only (grey points numbered from 1 to 8). The intersection
the crack surface is imposed to obtain a ±90° deviation of the crack front at points A points I and J between the crack front and the faces of the element are calculated by
and C and no deviation at the central point B. For the other points of the front, a interpolation from the nodal values of the level sets. The crack front inside the
linear interpolation of the imposed displacement is adopted. element is represented by the grey segment connecting points I and J.
2168 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

run ðPÞ mal velocity are amplified by the linear variation imposed to its
nP ¼ ;
krun ðPÞk norm during the extension phase (Eq. (8)). The orthogonalization
ð18Þ
rut ðPÞ can be simply carried out by calculating the cross product between
tP ¼ : the tangent and normal vector and then the cross product between
krut ðPÞk
the resulting vector and the normal vector again.
The level sets and their gradients being known only at the nodes In order to determine the correct rotation that allows to
of the elements of the domain, the gradients at point P must be cal- transform the base at point I into the base at point P, the rotation
culated by interpolation using the shape functions of the elements. transforming the base at point I into the base at point J (Fig. 13)
If the element has s nodes, the interpolation can be written as must be first determined. We will refer to this rotation as the par-
follows: ent rotation. Euler’s rotation theorem ensures that the parent rota-
X
s tion is unique and that it is univocally identified by the Euler
run ðPÞ ¼ Ni ðPÞ  run ðxi Þ; rotation axis and the Euler rotation angle [8], which can be evalu-
i¼1 ated as follows:
ð19Þ
Xs
rut ðPÞ ¼ Ni ðPÞ  rut ðxi Þ;
i¼1
1. The third axis of the base at points I and J is calculated by a cross
product:
where Ni is the ith shape function of the element and xi is the vector 
giving the coordinates of its ith node. The two gradients at point P cal- bI ¼ t I ^ nI ;
ð20Þ
culated by means of Eq. (19) are not guaranteed to be orthogonal. The bJ ¼ t J ^ nJ :
level set orthogonalisation equation (4) ensures that the gradients
run and rut are orthogonal at the nodes of the elements, where
2. The Euler’s rotation matrix of the parent rotation can be calcu-
the reorthogonalisation is carried out. However the orthogonality is
lated as follows:
not conserved by Eq. (19), with the exception of a 2D crack, a 3D 2 3
planar crack or a 3D crack obtained as an extrusion of a 2D crack. tJ  tI nJ  t I bJ  t I
In order to overcome this problem, a rigid rotation can be used 6 7
RE ¼ 4 t J  nI n J  nI bJ  nI 5: ð21Þ
to calculate the local base at point P. In fact, if the local bases at t J  bI nJ  bI bJ  bI
points I and J are known, the rigid rotation transforming one base
into the other one can be determined. Since a smooth transition of
the base can be expected when passing from point I to point J, the Each column of the matrix represents one of the three unit
base at point P can be obtained by the same rigid rotation but using vectors of the base (tj, nj, bj) at point J expressed in the base at
a lower rotation angle, which depends on the position of point P on point I.
segment IJ (Fig. 13). 3. The Euler angle of the parent rotation can be calculated from the
Eq. (19) can be used to calculate the local base at point I (the elements of the Euler rotation matrix RE:
same holds for point J). The two calculated axes will not be orthog-  
R11 þ R22 þ R33  1
onal but the error is expected to be small with respect to the error #E ¼ acos : ð22Þ
2
that would be obtained using the same equations at point P be-
cause only the shape functions of nodes 1–4 contribute to the 4. The Euler axis e = [e1, e2, e3]T of the parent rotation can be finally
interpolation for point I, whilst for point P the shape functions of calculated as:
all the eight nodes of the element contribute (Fig. 12). Even if the 8
>
> e1 ¼ R2sin
23 R32
;
expected error is low, it is better to correct the direction of the < #E
R31 R13
two calculated vectors at point I in order to have orthogonality. e2 ¼ 2sin #E ; ð23Þ
>
>
The correction can be applied by fixing one of the two vectors :
e3 ¼ R2sin
12 R21
#E
:
and by modifying the other vector to be orthogonal to the first
one. Since the correct update of the normal level set is essential
The parent rotation is now fully described. The rigid rotation
to correctly describe the deviation angle of the crack, the normal
transforming the base at point I into the base at point P can be
direction should be chosen as the fixed one. This choice is also
expressed using the same Euler axis but with an Euler angle uP
determined by the fact that little errors in the calculus of the nor-
which is lower than uE proportionally to the position of point P
on the crack front segment:
~
kIPk
s¼ : ð24Þ
k~
IJk
The calculation can be carried out as follows:

1. Calculation of the rotation angle:


#P ¼ smin  #E : ð25Þ

2. Calculation of the Euler’s rotation matrix:


TP ¼ cosð#P Þ  I þ ð1 þ cosð#P ÞÞ  e  eT  sinð#P Þ  ; ð26Þ
where I is the identity matrix and  is the following matrix cal-
culated from the components of the Euler axis e (Eq. (23)):
Fig. 13. If the local base is known at crack front points I and J, the local base at point 2 3
0 e3 e2
P can be calculated by rigid rotation. The rotation angle is expected to be lower than
6 7
the angle of the rotation transforming the base at point I into the base at point J.  ¼ 4 e3 0 e1 5: ð27Þ
The value of the angle is proportional to the parametric position of point P on
e2 e1 0
segment IJ.
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2169

3. Calculation of the tangential and normal axes at point P by rota- kV P k ¼ ðkV J k  kV I kÞ  s þ kV I k;


ð31Þ
tion of the axes at point I. Attention must be paid to the fact that #P ¼ ð#J  #I Þ  s þ #I ;
the rotation matrix TP refers to the base at point I (the subscript
(tI, nI, bI) will be used in the notation): where s is the parametric position of point P on the crack segment IJ
( (Eq. (24)).
t PðtI ;nI ;bI Þ ¼ TP  ½100T ; The velocity vector at point P can finally be calculated by means
ð28Þ
nPðtI ;nI ;bI Þ ¼ TP  ½010T ; of the local base at the point:
V P ¼ kV P k  cosð#P Þ  t P þ kV P k  sinð#P Þ  nP : ð32Þ
which gives:
2 3 4.2.3. Smooth projection of a point M on the crack front
cosð#P Þ þ ð1  cosð#P ÞÞ  e21
6 7 The final ingredient in the alternative geometric approach to
t PðtI ;nI ;bI Þ ¼ 4 ð1  cosð#P ÞÞ  e1  e2  sinð#P Þ  e3 5; velocity extension is the calculation of point P, projection of point
ð1  cosð#P ÞÞ  e1  e3 þ sinð#P Þ  e2 M on the crack front. Even if the projection step is carried out
2 3 ð29Þ
ð1  cosð#P ÞÞ  e1  e2 þ sinð#P Þ  e3 before the calculation of the local base and of the velocity vector
6 7 at the projected point, it relies on the way the local base is calcu-
nPðtI ;nI ;bI Þ ¼4 cosð#P Þ þ ð1  cosð#P ÞÞ  e22 5
lated. This is why it is presented at the end.
ð1  cosð#P ÞÞ  e2  e3  sinð#P Þ  e1 :
Since all the calculations of the propagation velocity are based
4. Finally, the tangential and normal axes can be expressed in the on the local base at the projected point P, also the determination
global base used for the representation of the crack front. If the of this point must be calculated using the local base. The smooth
ith component of these axes is indicated using the notation tP(tI, transition between the two bases at the end points of the crack
nI, bI)(i) and nP(tI, nI, bI)(i), respectively, it can be written: segment IJ given by the rigid rotation discussed in Section 4.2.1
allows continuous projections throughout the whole domain. On
(
t P ¼ tPðtI ;nI ;bI Þ ð1Þ  t I þ tPðtI ;nI ;bI Þ ð2Þ  nI þ t PðtI ;nI ;bI Þ ð3Þ  bI ; the contrary, the use of an orthogonal projection of the points
on the crack segments would give discontinuous projections be-
nP ¼ nPðtI ;nI ;bI Þ ð1Þ  t I þ nPðtI ;nI ;bI Þ ð2Þ  nI þ nPðtI ;nI ;bI Þ ð3Þ  bI :
cause the direction of projection would be discontinuous between
ð30Þ the crack front segments since it would be taken coincident with
the normal to each segment. Moreover, in general this direction
4.2.2. Calculation of the propagation velocity vector at a point on the
does not lie in the (nP, tP) plane given by the local base at the
crack front
projection point P, as supposed in all the equations described
By means of a propagation law and criterion, the X-FEM frame-
previously in the paper.
work allows to calculate the crack propagation velocity and direc-
When using the local base at point P for the projection, a non-
tion at the points defining the piecewise linear representation of
linear problem must be solved since the local base is known only
the crack front [1,2]. In Fig. 14 the modulus of the propagation
if point P is known. An iterative research of the solution can be
velocity and the propagation direction are known at point I and J.
adopted taking the orthogonally projected point as the starting
The propagation velocity vector is always contained in the (n, t)
point. For a given point M, point P obtained by orthogonal projec-
plane of the local base. Once the local base at point P has been cal-
tion on the crack front is first checked: point P is the projection of
culated as shown in the previous paragraph, the propagation angle
point M only if it lies in the (nP, tP) plane of the local base at point P,
and velocity can be calculated straightforwardly by a linear inter-
which means that the absolute value of its distance d to this plane
polation along the crack segment IJ:
is lower than a small tolerance (Fig. 15). If this condition is not met,
another point must be searched for. The new candidate point can
be selected by moving point P by a short distance towards the
end of the crack front segment (towards point I in Fig. 15) included
in one of the two half-spaces defined by the (nP, tP) plane and

Fig. 14. Crack velocity vectors and propagation angles are known only at the end
point of each crack front segment. In the figure, they are known only at points I and Fig. 15. If the distance d of point M to the (tP, nP) plane is not zero, point P is not the
J. The velocity vector is always contained in the (t, n) plane. If the local base is correct projection of point M on the crack front. Being point M on the left of the
known at point P inside the crack front segment, velocity modulus and propagation plane, the correct projected point is on the left of the plane and it can be searched
angle at point P can be calculated by interpolation of the corresponding values at for iteratively by moving point P towards point I. This can be done simply by
points I and J. decreasing the value of s.
2170 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

containing point M. The correct displacement direction can be cho- represents the new crack front position after the propagation.
sen simply by assessing the relative position of point M with re- The values of the crack advancement and the propagation angle,
spect to the plane (nP, tP) obtained as the scalar product between that is the position of point P0 with respect to point P, change with
the normal to the plane (binormal unit vector of the local base at the position of point P on the actual crack front. The new crack sur-
point P) and vector PM ~ (Fig. 15). The position of point P is then face given by the dashed segment PP0 must be correctly repre-
modified by changing the value of s (Eq. (24)). Thanks to its sim- sented on the structural mesh and therefore the values of the
plicity, a bisection method has been used by the authors for all level sets at the points of the grid surrounding the segment must
the numerical examples shown at the end of the paper. In spite be included in the projection domain. The fastest way to select
of the linear convergence of the method, the solution can be calcu- these nodes is to select all the nodes inside circle 1 of Fig. 16, which
lated in very few iterations when the orthogonal projection of is centred on the actual crack position (point P) and has a radius
point M on the crack front is chosen as the first trial point, since equal to the crack advancement.
it is always close to the correct projected point. After the propagation of the crack, the stress intensity factors
and the crack propagation direction will be computed on the struc-
4.3. Localization of the integration domain around the crack front tural mesh using the values of the stresses and strains in an area
around the new crack front (point P0 ). Moreover the nodes inside
The adoption of a small domain extended only in the region a second area around the new crack front are interested by the
around the crack front allows to increase the performance and sta- X-FEM enrichment [1,2]. All the nodes inside these two areas can
bility of the upwind scheme and to reduce the number of points in- be included in a circular domain, marked as circle 2 in Fig. 16,
volved in the calculations with respect to the case in which the whose centre is point P0 . Considering that this point can be located
whole mesh of the structure is considered. Therefore the perfor- at any position on circumference 1, depending on the propagation
mance of both the update and velocity extension steps already angle which varies with the position of point P on the crack front,
described is also increased. the domain that include circle 1 and all the possible positions of
Another important advantage of the domain localisation is circle 2 is defined by circle 3. As a rule of thumb, we usually take
given by the performance increase of the level set projection from radius 1 equal to the crack advancement in the step, which should
the auxiliary grid, where the update calculation is performed, to not be lower than the length of one element edge, and radius 2
the structural mesh, where the new crack configuration is needed equal to 2–4 times the same length.
to correctly build the X-FEM model: if the projection is limited to The localised domain Xloc is taken coincident with circle 3 of
the nodes effectively used by the X-FEM enrichment and fracture Fig. 16. The nodes inside this domain can be selected considering
mechanics calculations, the calculation time needed to perform their distance to the crack front, which was already computed for
the projection can be drastically reduced, especially in 3D cases. the points of the auxiliary grid during the velocity extension phase
Some localisation techniques of the level set method can be (Section 4.2.3). However, this distance must be calculated also for
found in the literature (e.g. [3,4]). However they only deal with the nodes of the structural mesh exactly in the same way than for
one level set and their extension to two level sets is not straightfor- the auxiliary grid points, thanks to the fact that the representation
ward, especially when the reorthogonalisation phase exists for of the crack front is independent of the auxiliary grid.
which the modification of the tangential level set is also deter- In Fig. 17 the level sets iso-surfaces are shown on the structural
mined by the gradient of the normal level set. Moreover, for some mesh before and after the crack propagation for the case shown in
of these techniques, keeping track of the position of the crack front Fig. 16. The level sets are updated only inside the localised domain
with respect to the boundary of the domain is excessively complex, by projection of the updated values on the auxiliary grid. As it can
requiring for example the creation of particular data structures and be seen, the level set iso-surfaces are discontinuous after the pro-
dedicated algorithms. Another example can be found in [25], but in jection, but this is not a problem since they are continuous, orthog-
the scheme proposed here the bandwidth chosen will just depend onal and signed distance functions around the new crack front
on geometrical considerations and none on the grid size, time step inside the localised domain, which contains the area used to per-
size and maximum tip speed. form all the X-FEM and fracture mechanics calculations. Outside
the localised domain the values of the level sets before the propa-
4.3.1. Construction of the domain restriction gation are preserved, as well as the existing crack surface, which is
The localised domain Xloc is shown in Fig. 16 at a point P on the continuous across the boundary of the localised domain thanks to
crack front in the (tp, np) plane (Fig. 9). The continuous line repre- the fact that the normal level set is not modified by the propaga-
sents the existing crack surface. The actual crack front position is tion for all the points where the tangential level set is negative
represented by point P. The propagation to be simulated is repre- (Eq. (16)).
sented by the dashed line connecting point P to point P0 , which The performance of the proposed solution is really good. In the
3D numerical experiments that were carried out, the whole projec-
tion process, including the selection of the nodes and elements and
the calculation of the distances to build the localised domain, is
really fast, being less than 1% of the time needed to complete a
propagation step. The other phases of a propagation step, that is
the update of the level sets, the resolution of the cracked FE model
and the calculation of the stress intensity factors and of the crack
propagation direction, require 19%, 75%, and 5% of the total time,
respectively.
A final remark needs to be made. Only the level set values are
projected on the structural mesh. The gradient of the level sets
are not projected and they are calculated directly on the structural
mesh using the projected values of the level sets. This is a good
practice due to the fact that a differentiation is involved, which is
Fig. 16. Definition of the localised domain at a point P on the crack front. Point P0 known to degrade the accuracy of the gradients of the field which
represents the new position of point P after the propagation. undergoes the differentiation.
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2171

Fig. 17. (a) Level set iso-surfaces on the structural mesh before the crack propagation for the crack of Fig. 16. The localised domain Xloc is shown. (b) level set iso-surfaces
after the crack propagation. The level sets have been projected onto the structural mesh only in the area inside the localised domain Xloc. As a consequence, the iso-surfaces
are discontinuous across the boundaries of Xloc.

Fig. 18. Propagation angle imposed to an initially plane crack with a quarter-disk shape. The imposed angle profile simulates the twist of the propagation plane like the one in
Fig. 11 due to external loading conditions with the exception that some irregularities have been superposed to a theoretical linear profile. These irregularities simulate the
presence of an error in the calculation of the propagation angle, which is always the case in real simulations.

Fig. 19. (a) Iso-zero surface of the normal level set after the propagation with the imposed propagation angle profile of Fig. 18. The plane of the initial crack is shown. Little
differences in the propagation angle between consecutive points on the crack front lead to amplified level set displacements at the points far away from the crack front. (b)
The same iso-surface obtained with a restriction of the domain where the level sets are updated.

4.3.2. Efficiency of domain restriction methods agation angle between adjacent points on the crack front cause
One of the reasons of the enhancement of the robustness of the great deformations of the iso-surface at points far from the crack
upwind algorithm associated to domain restriction is given by front. This behaviour is caused by the amplification effect of the
the fact that domain restriction allows to limit the amplification linear interpolation used for the normal propagation velocity field
of the normal level set iso-surfaces deformation for the points far on the displacement of the normal level set (Eq. (15)). The
away from the crack front. An example is shown in Fig. 18, where consequence of such an amplified deformation of the level set is
a quarter of an initially circular crack front is forced to propagate in the possibility of non-convergence of the reothogonalisation and
mixed mode and to change locally its propagation direction due to reinitialisation phases in the following propagation step. If the
the propagation angle profile shown in the left part of figure. domain where the update of the level set is carried out is restricted
In Fig. 19a the iso-zero surface of the normal level set after the to a sub-domain of the auxiliary grid, such negative effects can be
imposed propagation is shown. Little differences in the crack prop- obviously limited, as shown in Fig. 19b.
2172 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

The localisation of the calculation domain allows to enhance the are included. The problem to be solved is that the level set at these
robustness of the upwind scheme also in all the cases in which the new points is not up-to-date. The situation is shown in Fig. 21a.
crack propagates with a highly curved path, as in the example Given a point P1 of the crack front, a first propagation is calculated
depicted in Fig. 20a. In this example a plate containing a rigid using the localised domain X1loc . The new crack front position is
circular inclusion at its centre is subjected to a cyclic horizontal then given by point P2. In order to simulate the following propaga-
traction. An initial vertical crack at its lower edge propagates in a tion, a new localised domain X2loc is selected. In this domain, the le-
straight way at the beginning and then follows a path parallel to vel sets have been updated only for the points in common with the
the profile of the inclusion. This configuration reveals to be prob- previous domain X1loc (grey shaded area in Fig. 21a). For the other
lematic for the convergence of the upwind scheme if the localisa- points, the level set value has not changed since the beginning of
tion of the calculation domain is not used. This is due to the fact the propagation simulation. If the update calculations were carried
that the convergence of the reinitialisation and reorthogonalisation out on such a configuration, computational problems would arise
phases is verified only in a domain built around the crack front and due to the high level set gradients at the boundary between the
that the level sets at the points ahead of the crack front and not in- grey shaded area and the white one of Fig. 21a, leading to a wrong
cluded in the domain where convergence is checked fail to cor- level set update which makes the convergence of the reinitialisa-
rectly follow the highly curved propagation of the crack front tion and reorthogonalisation phases difficult.
after some propagation steps (see the normal level set iso-surfaces Consequently the level set update values must be correctly esti-
in the upper left part of Fig. 20b). mated for all the new points added to X2loc (white area of Fig. 21a).
This can be done in a very fast way using the signed distance func-
4.3.3. Simple and fast localisation of the integration domain as the tion definition of the level sets. Considering that the local base at
crack propagates point P2 is known, the two level sets at point M can be calculated
What makes the localisation a non-trivial task is the fact that as follows (Fig. 21b):
the localised domain changes at each propagation step because it !
follows the crack front. This means that at each propagation step, un ðMÞ ¼ MP2 n2 ;
some grid points of the previous localised domain are excluded ! ð33Þ
from the new localised domain being built, while new grid points ut ðMÞ ¼ MP2 t 2 :

Fig. 20. (a) A 2D example of a crack propagation around a rigid inclusion in the centre of a plate. (b) Normal level set iso-surfaces on the auxiliary grid used to calculate crack
propagation. It is obvious that the level set iso-surfaces ahead of the crack tip (upper-left part of the grid) have not been correctly updated.

Fig. 21. (a) Propagation of a point P1 on the crack front. The new position after the propagation is given by point P2. The localised domain used for the level set update is X1loc .
When propagation is evaluated at point P2, a new localised domain ðX2loc Þ is used. For this domain, the level set is up-to-date only at the points in common with X1loc (grey
area). For all the other points, the updated values of the level sets must be estimated. (b) Local base at point P2 used for the update of the level set values at the points outside
the grey area of domain X2loc .
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2173

The sign of the level set is automatically accounted for by these domain is kept constant throughout the propagation steps. Since
equations. Even if some errors are made at this step, the correct the radius of the localised domains X1loc and X2loc is calculated as ex-
solutions will be recovered by the reinitialisation phases. It is plained in Section 4.3.1, we can see that this construction is purely
worth noting that for each point M, its projection P2 on the crack geometric and does not depend on the grid size, time step size or
! maximum tip speed as in [25].
front, the distance vector MP2 and the local base used in Eq. (33)
It is worth mentioning that the values of R1 and R2 are theoret-
have been already calculated during the level set update. Therefore
ical values and attention must be paid when selecting the nodes
the number of operations needed to calculate the level set at each
and the elements of the grid and of the structural mesh which
point M is really low, since the calculations are limited to scalar
are inside the two localised domains X1loc and X2loc because usually
products with negligible computational time. This allows to greatly
some elements are partially inside the theoretical circle of radius
speed up the level set update. For example, in the case shown in
R1 or R2. Also these elements must be selected in order to correctly
Fig. 19a and b, the calculation time needed to update the level
carry out the projection of the level sets on the structural mesh and
set adopting the domain localisation is about 35% the time needed
to correctly calculate their gradients by means of the element
in the case in which the localisation is not adopted.
shape functions for all the nodes inside the localised domain. The
Eq. (33) are valid only if point M is inside the half plane defined
simplest way to accomplish this task is firstly to select all the
by the crack front and the direction of propagation given by the
nodes within a distance from the crack front given by the radius
oriented segment P1P2 because the local base at point P2 is valid
of the sub-domain (R1 or R2) and then to select all the elements
only for such points. An area in which point M must be located
containing these nodes. In such a way all the elements partially in-
can be therefore defined (grey area of Fig. 22), which means that
cluded in the localised domain are taken. The list of the nodes
a limiting value on the sub-domain radius exists (see Fig. 22):
forming the domain must be then updated to include all the nodes
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi of the selected elements.
R2 6 Da2 þ R21 ; ð34Þ
4.4. Boundary conditions for the upwind scheme
where R1 and R2 are the radius of X1loc and X2loc , respectively and Da
is the crack front displacement at the previous propagation step. As described in Section 3.2.2, when the upwind derivative can-
This condition is always satisfied if the radius of the localised not be calculated at a point on the boundary, the point is excluded
from the upwind iterations and the solution there is calculated
directly by means of the signed distance function definition of
the level set. In the case of reinitialisation steps, only one level
set is involved in the update (Eqs. (3) and (5)) and therefore the
value to be imposed at the point is its distance from the iso-zero
surface of the level set being updated. In the reorthogonalisation
step, the tangential level set is modified to be orthogonal to the
normal level set by propagating normally the tangential level set
values at the points on the iso-zero surface of the normal level
set (Eq. (4)). In this case the value to be imposed at the problematic
point on the boundary is the tangential level set value at its
projected point on the iso-zero surface of the normal level set.
In both cases the fundamental step in the calculation of the
boundary condition value is the determination of the projection
of the problematic point on the iso-zero surface. Since the level
set is stored only at the points of the auxiliary grid cells used by
the upwind scheme, the iso-zero surface is represented by a set
Fig. 22. The grey shaded area represents the region of validity of Eq. (33). Point M of
of point obtained by interpolation on the edges of the cells where
Fig. 21b must be inside this area. This condition limits the maximum value of the the level set changes its sign [1,6,7]. An example is shown in
radius of domain X2loc . The greatest domain that can be adopted for a given X1loc is Fig. 23a: the level set is known only at the eight points of the cell
shown in the figure. and its sign changes along the edges 1–5, 2–6, 3–7 and 4–8,

Fig. 23. (a) Calculation of intersection points (A, B, C and D) between the iso-zero surface of the generic level set and a cell of the grid. The position of these points on each
edge is calculated by interpolation from the level set values at the points defining the edges. (b) Representation of the iso-zero surface of the level set in the cell of the grid.
The surface is represented by two triangles formed by the intersection points A, B, C and D.
2174 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

Fig. 24. Projection of a point M on one of the triangles used to represent the iso-zero surface of the level set. (a) The projection point M0 is inside the triangle. (b) The
projection point M0 is outside the triangle. It is therefore re-projected normally to the triangle edge BC and point M00 is taken as the projection point of point M.

revealing the existence of an intersection point between each of P3 as the projection point. The normal distance calculated by the
these edges and the level set iso-zero. Points A, B, C and D can be !
algorithm for point M3 would be d ¼ k M3 P3 k. However it is evi-
located by linear interpolation of the level set along each edge. !
For each cell the iso-zero surface can be reconstructed from these dent that in this case the correct distance is d ¼ k M3 P k and the
points by triangulation (Fig. 23b) and the problem of the determi- projection algorithm would fail to calculate the normal level set.
nation of the projection point on the surface reduces to the projec- In order to correctly manage this case, the algorithm must check
tion of the point on a triangle and to the determination of the best if the projected point P⁄ is inside the domain. If so, it continues
triangle of the triangulated surface containing the projected point. the calculations. Otherwise point P⁄ is accepted as the projected
Once the projected point has been determined, the boundary point. The verification on the position of point P⁄ can be done in
condition to be enforced at the point on the boundary in the level a simple and fast way by checking if the edge of the triangle to
set reinitialisation step is simply the distance between this point which point P3 belongs is shared by other triangles. If this is not
and the projected one, while for the reorthogonalisation step it is the case, the projected point P⁄ is outside the domain and it must
the tangential level set value at the projected point, which can be be considered as the projected point instead of point P3.
obtained by interpolation from the values at the nodes of the cell
to which the projected point belongs.

4.4.1. Projection algorithm


In order to correctly project a point M on the boundary of the
calculation domain on the level set iso-zero surface even in pres-
ence of a kink, the following algorithm can be adopted (Fig. 24):

1. Calculation of the normal projection M0 of point M on the plane


of each triangle defining the iso-zero surface of the normal level
set.
2. For each projected point M0 , verification of whether or not it is
inside the triangle.
2.1. If it is inside the triangle or if it is coincident with one of
its vertexes (Fig. 24a), point P, projection of point M, is
assumed coincident with M0 .
2.2. If it is outside the triangle (Fig. 24b), re-projection of point
M0 normally on the edge of the triangle. Point M00 is
obtained. Point P, projection of point M, is assumed coin-
cident with M00 , !
3. Calculation of the distance d ¼ k MP k.
4. Calculation of the tangential level set at point P by linear inter-
polation from the values at the vertexes of the triangle.
5. Among all the projected points P, one for each triangle, selection
of the one for which the distance d is the lowest. The normal
level set at point M is assumed to be equal to d, whilst the tan-
gential level set is assumed to be equal to the tangential level
set of the selected point P.
Points M for which the projection point P is outside the domain Fig. 25. Propagation of a crack at a high kink angle. Points M1, M2 and M3 are
must be further processed. An example is given by point M3 in supposed to be problematic points for the upwind scheme and therefore boundary
Fig. 25. This point lies on the free left surface of the plate and its conditions must be enforced there by means of the projection algorithm shown in
Fig. 24. Points M1 and M2 are correctly processed, even in presence of the kink. This
projected point P⁄ is outside the domain so that the algorithm of is not the case for point M3, for which the projection is outside the calculation
projection re-projects it on one edge of the triangle, giving point domain and for which a specific procedure is needed.
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2175

On the contrary, considering point M1 lying on the left free sur- evaluated for a reference load applied to the FE model with the
face, its projected point P1 is inside one of the triangles represent- G-theta method [29], used in commercial software [30] and avail-
ing the iso-zero surface of the normal level set. Therefore its able in Code_Aster [11,22]. This method is based on the introduc-
! tion of a virtual displacement field h which represents the virtual
normal level set is correctly calculated as d ¼ k M1 P1 k. The situa-
kinematics of the crack. A combination of G-theta evaluated for
tion is different for point M2, lying on the upper free surface, for
the solution displacement and for asymptotic auxiliary solutions
which there are no triangles containing the projected point due
leads to the interaction integrals most commonly used in the liter-
to the presence of the kink. This is also the case when the crack sur-
ature to extract the individual values of the stress intensity factors
face is not planar or characterised by small irregularities resulting,
[1]. Note that the virtual displacement field h we choose has been
for example, from numerical errors on the calculation of the ver-
modified with respect to [1] to take into account curved crack
texes of the triangles. The re-projection of the projected point on
fronts such as in [5]. The value of the energy release rate obtained
the edges of the triangles, as described above (step 2.2), allows to
from the FE model is used to calculate an equivalent stress inten-
manage correctly this particular situation: the final projected point
! sity factor based on a plane strain condition which corresponds
is P2 and the normal distance is calculated as d ¼ k M2 P2 k. This is to the way propagation law coefficients were obtained experimen-
the most natural definition of the normal distance in the case of tally [24]:
a strong discontinuity in the surface normal.
rffiffiffiffiffiffiffiffiffiffiffiffiffiffi
The details of the implementation of the projection algorithm GE
will not be given here, depending on the particular triangle repre- K eq ¼ ; ð35Þ
1  m2
sentation of the iso-surface chosen in the software. A bit more
complicated algorithm has been implemented in Code_Aster [11] where G is the energy release rate and E and t are Young’s modulus
in order to obtain a better performance of the software. The inter- and Poisson’s ratio of the material respectively. From this expres-
ested reader is referred to the technical documentation of the sion the equivalent stress intensity factor range DKeq associated to
software. the fatigue load cycle can be evaluated as follows:
rffiffiffiffiffiffiffiffiffiffiffiffiffiffi
5. Evolution of the space approximation of the extended finite E
pffiffiffiffiffiffiffiffiffiffi pffiffiffiffiffiffiffiffiffi
element discretization as the crack propagates DK eq ¼  Gmax  Gmin ; ð36Þ
1m 2

When one uses X-FEM for crack propagation in statics or where Gmax and Gmin are the energy release rates associated respec-
dynamics for crack growth analyses, the mesh is fixed but the basis tively to the maximum and minimum values of the load in a fatigue
of the shape functions varies as the crack grows. In dynamics cycle.
Réthoré et al. [28] have shown that when the crack propagates The equivalent stress intensity factor range is finally used in
new degrees of freedom corresponding to a singular enrichment conjunction with a Paris law to calculate the crack advancement
are necessary ahead of the crack tip and that they need to be set at each point of the crack front for a single load cycle (Eq. (37)).
to zero at the beginning of the new time step in order to have an In case of proportional cyclic loading, the propagation is controlled
energy conserving scheme. For the degrees of freedom that were by imposing the maximum crack advancement at each propaga-
previously in the crack tip region but are no more in the singular tion step. Among the criteria used for determining the crack
enrichment zone of the crack tip due to propagation, Heaviside de- direction, the maximum energy release rate criterion [26], the
grees of freedom are added to the singular enrichment ones and set maximum principal stress criterion [31] and the minimum strain
initially to zero. In statics, on which we focus here, we need just to energy density criterion [27], we use the maximum circumferential
introduce these new degrees of freedom and they will be solved on stress criterion or maximum principal stress criterion which states
the new crack configuration. that the crack will propagate from its tip in a direction b in the local
The alternative level set update technique formulated in this basis on the crack front that maximises the circumferential stress:
paper can be applied successfully in both cases. This means that 8
P P P m
>
the technique is independent of the particular enrichment strategy < V ¼ V T  t P þ"V N  nP ¼ CðDK eq Þ  r
> ðcos b  t P þ sin b  nP Þ
ffi !#
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi


2 ð37Þ
chosen. In all the numerical tests presented in the next paragraph, > 1 KI KI
the crack propagation is a quasi-static fatigue propagation and lin- : b ¼ 2arctan 4 
> K II
 signðK II Þ K II
þ8 :
ear fracture mechanics can be used. At each propagation step the
X-FEM enrichment is carried out considering always the uncracked
configuration, which means that, if we compare the new configura-
tion with respect to the previous one, new singular enrichment de-
grees of freedom are added to the new crack tip nodes introduced
in the model consequently to the crack propagation and that the
singular enrichment degrees of freedom of the nodes coming out
from the singularity region are transformed to Heaviside degrees
of freedom. As said, dealing with quasi-static elastic fatigue prop-
agations, no problems of energy conservation arise.

6. Numerical tests

In order to show the validity and robustness of the methodology


proposed in this paper, some numerical tests are presented in the
following part.
Fig. 26. Scheme showing the geometrical configurations of the 2D mixed mode
In all proposed cases, the fatigue crack propagation is simulated
crack propagation simulated in [16]. The dimensions are in millimetres. The
in a discrete way by means of a succession of several time steps. position and length of the initially straight crack are reported in Table 2 for the two
For each time step, the stress intensity factors KI, KII and KIII are cases analysed in [16].
2176 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

6.1. A 2D crack propagation in a plate with holes a value equal to 1.0. Even if this has no physical meaning, the effect
of the chosen values is limited to the number of cycles spent to ob-
This 2D numerical test case reproduces a mixed-mode fatigue tain the imposed crack advancement at each propagation step,
propagation in a pre-cracked plate made of polymethylmethacry- which is not accounted for in the comparison of the results. The
late (PMMA) with three holes subjected to bending (Fig. 26). The crack path is not affected by the values assigned to the constants.
experimental results of crack propagation are presented in [16], Moreover, since the crack front reduces to a point, also the shape
where two different configurations have been tested considering of the front is not affected by the chosen values. This is not the case
two different initial crack lengths and horizontal positions with re- for a 3D crack front, as in the test case described later in Section
spect to the three holes (Table 2). Since no fatigue properties of the 6.3. The qualitative comparison between the numerical crack path
PMMA are reported in [16] and considering that the propagation is obtained by the method shown in this paper and the experimental
2D, in the simulation carried out in this paper the two constants C one reported in [16] is shown in Fig. 27. The agreement is good.
and m of the Paris law given by Eq. (37) have been set arbitrarily to
6.2. 3D Planar corner crack propagation

In this test the planar (mode I) propagation of a corner crack in a


Table 2 knee-lever is simulated. This test case has been taken from [17].
Initial crack position and length for the two configurations of Fig. 26 reported in [16].
The geometry of the knee-lever is shown in Fig. 28a, where the
Configuration L [mm] a0 [mm] position of the initial quarter-circle crack is marked. The lever is
A 127.0 38.1 loaded by a cyclic force F (see Fig. 28a). The maximum value of
B 101.6 25.4 the force reached during a cycle is 7 kN. The load ratio of the cycle
is R = 0.1. The lever is made of aluminium alloy 7075-T651

Fig. 27. Qualitative comparison between the numerical results obtained by means of the method proposed in this paper and the experimental results presented in [16] for
both configurations A and B (see Table 2). The numerical crack path has been highlighted by a semi-transparent line on the figure for the sake of clarity.

Fig. 28. (a) Geometry and boundary conditions of the knee lever [17]. An initial quarter-circle crack is introduced in the symmetry plane in relation to the inner fillet of the
lever. (b) Configuration obtained after the crack propagation simulation. The mesh is refined in the zone where the crack propagates in order to calculate accurately the
fracture mechanics parameters.
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2177

(E = 70,656 MPa, t = 0.34). The crack growth rate curve (da/dN near the corner than in the lower part of the lever cross section.
p
[mm/cycle] vs. DK [MPa m]) at R = 0.1 is given in the reference This phenomenon is well captured by the simulations carried out
paper [17]. By interpolating the central zone of the curve, the fol- in this paper where, as a consequence, the crack front become ver-
lowing Paris constants (Eq. (37)) have been adopted in this paper: tical earlier (step 15 in Fig. 29a) than in the results shown in [17]
C = 2.2E9 and m = 2.0. A mesh composed by linear tetrahedral (step 21 in Fig. 29b).
elements has been used to simulate the crack propagation, as
shown in Fig. 28b. At each step of the propagation, the maximum 6.3. 3D out of plane crack propagation
advancement of the crack has been taken equal to 2 mm.
The qualitative comparison between the results obtained and In this numerical example, a three point bending fatigue test of
the solution found in [17] is shown in Fig. 29. It can be said that the cracked specimen shown in Fig. 4 is simulated. The case is
the shape of the crack front at different propagation steps is similar interesting because the crack is initially inclined with respect to
and that the overall agreement is good. Some differences can be the load direction, which causes a high kink angle at the beginning
found between step 5 and step 10, where the crack front changes of the propagation. The crack is subjected to a mixed mode loading
its shape due to the presence of the corner. In this area a high stress condition and a twisted propagation is obtained. The problem has
region exists and a higher crack propagation velocity is expected been solved in [20] and the solution reported there is taken as

Fig. 29. Comparison between the solution obtained in this paper (a) and the one reported in [17] (b).

Fig. 30. Sane mesh of the specimen of Fig. 4. The reference system and the crack at the beginning of the fatigue propagation simulation are superposed for clarity.
2178 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

Fig. 31. Example of refinement of the structural mesh in the region around the crack front (free surface view in x–y plane at crack front point D of Fig. 30). The refinement is
necessary for an accurate estimation of the stress intensity factors of the crack.

Fig. 32. propagation path for the three point bending test of the specimen shown in Figs. 4 and 30. (a) Deformed configuration (displacement amplification factor = 5) of the
cracked specimen obtained by the post-processing of the level set data. (b) Normal level set iso-zero surface superposed to a clipped representation of the sane specimen
mesh. The localisation of the domain is clearly visible.
D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180 2179

Fig. 33. Crack fronts obtained for each calculated propagation step (frontal view on the left and top view on the right).

Fig. 34. Crack fronts of the solution reported in [20] (frontal view on the left and top view on the right).

reference. Only a qualitative comparison with the solution found in alternative methodology presented in this paper allows to cor-
this paper can be carried out because the material type and the rectly simulate the mixed mode propagation of the crack.
material properties of the fatigue law used in [20] are not available.
Consequently to this lack of information and knowing only that the 7. Conclusions
material is an aluminium alloy, it has been chosen arbitrarily to use
also for the simulations of this test case the properties of the 7075- The X-FEM simulation of the crack propagation by means of the
T651 aluminium alloy of the knee lever test (Section 6.2). level set method originally presented in [2] has been analysed in
The specimen length is 260 mm, its thickness is 10 mm and its details in this paper and some weaknesses observed in the case
width is 60 mm. The mesh used in the calculations is composed of of high kink angles have been highlighted and addressed.
tetrahedral linear elements (Fig. 30). The maximum element edge In order to overcome these difficulties and to gain in robustness
length is 3 mm. An auxiliary homogeneous grid is used for the level and speed, several modifications have been proposed and their
set calculations. The grid is finer than the structural mesh and the validity has been tested on several numerical examples reported
cell edge length is 1.5 mm. This level of grid refinement allows to in the paper. First, the level set update partial differential equation
correctly represent the level set iso-surfaces, having checked qual- has been replaced by an alternative explicit polynomial equation.
itatively for the first few propagation steps by visual comparison of By means of this simple equation, instability and performance
the superposed iso-surfaces that a further refinement of the grid problems in presence of high kink angles have been solved. A geo-
does not improve their representation. On the contrary, in order metrical approach has been then formulated for the crack propaga-
to accurately calculate the stress intensity factors and the tion velocity extension phase, allowing to obtain in a short time a
propagation direction only the structural mesh is refined at each smooth velocity field. Concerning the reinitialisation and reorthog-
propagation step in the region near the crack front, that is in the onalisation steps, an upwind discretization of the related PDEs has
domain used for the fracture mechanics calculations (Fig. 31). This been formulated. The use of this finite difference scheme in con-
process is accomplished in a fully automated way by means of the junction with the injection of good values for problematic points
Homard refinement software available in Code_Aster [23]. This at the boundaries and with a calculation domain localised around
solution allows to obtain accurate results while saving CPU time the crack front allows to reinitialise and reorthogonalise the nor-
and system resources. mal and tangential level sets efficiently and to increase the robust-
In Fig. 32 the propagation path obtained by applying the meth- ness of the scheme. The localised domain can also be used to speed
odology presented in this paper is shown. The twisted propagation up the projection of the solution between the upwind auxiliary
is clearly visible. The crack fronts calculated for each propagation grid and the structural mesh.
step are shown in Fig. 33. For comparison, the crack fronts reported By means of the proposed modifications, complex 3D crack
in [20] are shown in Fig. 34. Qualitatively, the solution obtained is propagations can therefore be efficiently simulated in an X-FEM
in good agreement with the one of Ref. [20], showing that the model even in presence of high kink angles.
2180 D. Colombo, P. Massin / Comput. Methods Appl. Mech. Engrg. 200 (2011) 2160–2180

References [16] T.N. Bittencourt, P.A. Wawrzynek, A.R. Ingraffea, J.L. Sousa, Quasi-automatic
simulation of crack propagation for 2D LEFM problems, Eng. Fract. Mech. 55
(1996) 321–334.
[1] N. Moës, A. Gravouil, T. Belytschko, Non-planar 3D crack growth by the
[17] M. Schollman, M. Fulland, H.A. Richard, Development of a new software for
extended finite element and level sets – Part I: Mechanical model, Int. J.
adaptive crack growth simulations in 3D structures, Eng. Fract. Mech. 70
Numer. Methods Engrg. 53 (2002) 2549–2568.
(2003) 249–268.
[2] A. Gravouil, N. Moës, T. Belytschko, Non-planar 3D crack growth by the
[18] N. Sukumar, D.L. Chopp, E. Béchet, N. Moës, Three-dimensional non-planar
extended finite element and level sets – Part II: Level set update, Int. J. Numer.
crack growth by a coupled extended finite element and fast marching method,
Methods Engrg. 53 (2002) 2569–2586.
Int. J. Numer. Methods Engrg. 76 (2008) 727–748.
[3] D. Peng, B. Merriman, S. Osher, H. Zhao, M. Kang, A PDE-based fast local level
[20] R. Citarella, F.-G. Buchholz, Comparison of crack growth simulation by DBEM
set method, J. Comput. Phys. 155 (1999) 410–438.
and FEM for SEN-specimens undergoing torsion or bending loading, Engrg.
[4] D. Adalsteinsson, J.A. Sethian, A fast level set method for propagating
Fract. Mech. 75 (2008) 489–509.
interfaces, J. Comput. Phys. 118 (1995) 269–277.
[21] R.J. LeVeque, Finite Volume Methods for Hyperbolic Problems, Cambridge
[5] M. Duflot, A study of the representation of cracks with level sets, Int. J. Numer.
University Press, 2002.
Methods Engrg. 70 (2007) 1261–1302.
[22] Code_Aster technical reference documents R7.02.01, R7.02.02, R7.02.03 and
[6] N. Sukumar, D.L. Chopp, B. Moran, Extended finite element method and fast
R7.02.12 freely available on <http://www.code-aster.org>.
marching method for three-dimensional fatigue crack propagation, Engrg.
[23] Homard is freely available in the Code_Aster package. See the official website
Fract. Mech. 70 (2003) 29–48.
for more informations: <http://www.code-aster.org/outils/homard/menu_
[7] M. Stolarska, D.L. Chopp, N. Moës, T. Belytschko, Modelling crack growth by
homard.en.htm>.
level sets in the extended finite element method, Int. J. Numer. Methods Engrg.
[24] D. Broek, Elementary Engineering Fracture Mechanics, Martinus Nijhoff
51 (2001) 943–960.
Publishers, 1982.
[8] G.E. Shilov, An Introduction to the Theory of Linear Spaces, Prentice-Hall,
[25] J. Shi, D. Chopp, J. Lua, N. Sukumar, T. Belytschko, Abaqus implementation of
Englewood Cliffs, NJ, 1961.
extended finite element method using a level representation of three-
[9] T.J. Barth, J.A. Sethian, Numerical schemes for the Hamilton–Jacobi and
dimensional fatigue crack growth and life predictions, Engrg. Fract. Mech. 77
level set equations on triangulated domains, J. Comput. Phys. 145 (1998)
(2010) 2840–2863.
1–40.
[26] R. Nuismer, An energy release rate criterion for mixed mode fracture, Int. J.
[10] B. Prabel, A. Combescure, A. Gravouil, S. Marie, Level set X-FEM non matching
Fract. 11 (1975) 245–250.
meshes: application to dynamic crack propagation in elastic–plastic media,
[27] G. Sih, Strain energy density factor applied to mixed mode crack problems, Int.
Int. J. Numer. Methods Engrg. 69 (2007) 1553–1569.
J. Fract. 10 (1974) 305–321.
[11] Code_Aster web site: <http://www.code-aster.org>.
[28] J. Réthoré, A. Gravouil, A. Combescure, An energy-conserving scheme for
[12] T. Belytschko, T. Black, Elastic crack growth in finite elements with minimal
dynamic crack growth using the eXtended finite element method, Int. J.
remeshing, Int. J. Numer. Methods Engrg. 45 (1999) 601–620.
Numer. Methods Engrg. 63 (2005) 631–659.
[13] N. Moës, J. Dolbow, T. Belytschko, A finite element method for crack growth
[29] P. Destuynder, M. Djaoua, S. Lescure, Quelques remarques sur la mécanique de
without remeshing, Int. J. Numer. Methods Engrg. 46 (1999) 31–150.
la rupture élastique, J. Méca. Théo. Appl. 2 (1) (1983) 113–135.
[14] G. Ventura, E. Budyn, T. Belytschko, Vector level sets for description of
[30] P.O. Bouchard, F. Bay, Y. Chastel, Numerical modelling of crack propagation:
propagating cracks in finite elements, Int. J. Numer. Methods Engrg. 58 (2003)
automatic remeshing and comparison of different criteria, Comput. Methods
1571–1592.
Appl. Mech. Engrg. 192 (2003) 3887–3908.
[15] S. Osher, J. Sethian, Front propagating with curvature dependent speed:
[31] F. Erdogan, G. Sih, On the crack extension in plates under plane loading and
algorithms based on Hamilton–Jacobi formulations, J. Comput. Phys. 79 (1988)
transverse shear, J. Basic Engrg. 85 (1963) 519–527.
12–49.

You might also like