Background

Objective and motivation

One of the main reasons why devising a computational methodology to deal with fracture mechanics is challenging, is the fact that cracks propagate in arbitrary directions through the material. If the dynamics of the crack were known apriori, one can design an optimal mesh that allows the propagation of a crack through the pre-existing mesh at each instant. Since this is not the usual case, the mesh has to be repeatedly modified to accommodate the advancement of cracks within the finite element (FE) mesh. The objective of this work is to devise a simple procedure to achieve the required mesh modifications, which enables us to model complex crack paths through nonlinear elastic solids. The present work is motivated by our interest in developing computational methodologies for fluid-structure-fracture interaction (FSFI) [1] that model the following phenomenon: when a flexible structure interacts with the fluid flow, the fluid loading induces elastic deformation as well as fracture failure of the structure, and the fluid medium fills the crack opening. The first step of extending fluid-structure-interaction (FSI) methods to handle FSFI is to equip the structural analysis with a fracture mechanics solver. This is achieved in this work by developing a crack propagation approach which facilitates, with minimal implementation efforts,

  • to update the existing large scale structural mechanics solver into a robust tool to handle single and multiple quasi-static cracks

  • to couple the crack propagation method with existing FSI approach to model FSFI.

The method devised in this paper is implemented in BACI, a large scale parallel multiphysics solver developed at our institute. It is to be mentioned that the objective of the present work is not to devise a method which is competitive to the available class of methods in terms of computational efficiency or accuracy. Rather, the focus is on devising a simple crack propagation approach, which circumvents the complexities associated with them (as discussed below) to aid the development of an FSFI solver.

Brief overview of relevant methods

The present work is based on fracture mechanics [2,3,4,5,6,7,8,9,10,11,12] framework rather than on continuum damage mechanics [13, 14] because we model the propagation of sharp cracks in the material. Majority of the existing computational methods employing fracture mechanics principles utilize either one of the following frameworks:

  • Adaptive remeshing

  • Enriched partition of unity

These methods are very successful and find plethora of applications but implementing them in an existing (large scale) FE package pose several challenges.

Adaptive remeshing methods

These methods, as the name implies, adaptively refine the mesh in the crack tip vicinity where the solution dictates the dynamics of crack propagation, and coarsen the mesh away from the crack tip. They make use of special data structures [2, 3, 15], together with either a globally adaptive remeshing procedure [4,5,6] or a local mesh modification algorithm [7] to accommodate crack propagation at arbitrary directions within the computational domain. Each time when a crack extends, these methods introduce several new nodes into the mesh. As a result, they require mesh generation related algorithms to modify the mesh appropriately. Usually in a large scale FE code which is generalized to address multiscale and multiphysics problems, such fracture-specific and mesh-modification routines are neither available nor easy to implement in a generalized way.

Enriched partition of unity methods (EPUM)

These methods represent the recent developments in computational fracture mechanics. They include extended finite element methods (XFEM) [16,17,18,19] and generalized finite element methods (GFEM) [20, 21], and these class of methods are originally developed with an objective to eliminate the adaptive remeshing and its associated complex and time-consuming operations. The fundamental idea behind this method is to enrich the finite element solution space with additional problem-specific enrichment functions. The crack can propagate within the interior of an element, and hence it is possible to simulate crack propagation without modifying the underlying discretization. Though these methods are demonstrated to be powerful, the following points hamper their easier implementation into an existing structural mechanics solver. The numerical integration of singular enrichment functions is still an active area of research in EPUM [22,23,24,25,26,27,28]. Moreover, these methods require the implementation of complicated geometry-mesh intersections for which robustness is always an issue, especially in 3D. Also, the number of degrees of freedom attached to a few nodes changes each time when the crack advances. Most importantly, except a few (e.g. [29,30,31]), all studies are focused on crack propagation through linear elastic materials mainly because the formulation of enrichment functions in nonlinear regime is still an active area of research.

Owing to the aforementioned implementation issues, neither EPUM nor adaptive remeshing methods are ideal for developing fluid-structure-fracture interaction methods. This is because FSFI methods have to handle the combination of challenges from two sources: those arising from crack propagation besides another big challenge from FSI. The aim of this work is to devise a simple crack propagation approach that is suitable specifically for developing FSFI.

The method developed in this work, as will be explained later, shares a similarity with arbitrary Lagrangian Eulerian (ALE) based methods that it involves a mesh-deformation step. Therefore, ALE based methods for fracture mechanics are briefly recalled. The use of ALE in computational fracture mechanics is not widespread. Only few studies employed ALE to address crack propagation problems, and a brief account of majority of such works is provided below.

Existing ALE based crack propagation methods

Though ALE formulations are widely used in several solid mechanics applications (refer to [32] for an overview), less than a handful of researchers used them to handle fracture mechanics problems. The first use of ALE is described in [33, 34] to model dynamic crack propagation. The capability of these methods are demonstrated by simulating a few mode-I dynamic crack propagation problems, and comparing them with analytical relations. In this work, the material separation is not explicitly modeled. Moreover an existing Lagrangian FE code framework cannot be directly extended to include this model. In order to achieve this, an improved method has been developed in [35], which is applied to simulate mixed-mode dynamic crack propagation examples. Another method that uses a mesh motion algorithm based on an isoparametric mapping is presented in [36], in which a self-similar dynamic crack propagation problem in double cantilever beam is solved. They conclude that ALE methods are more robust, and can be a powerful alternative to remeshing. For a better understanding of dynamic crack growth in Fibre-reinforced plastic (FRP) composites, an ALE based method together with a contact mechanics approach is developed in [37]. A very fine mesh in the neighborhood of the crack tip is maintained throughout the simulation with the help of a remeshing procedure. This method is then used to study the interfacial debonding phenomenon in FRP strengthened reinforced concrete beams. Another attractive method that combines the advantages of element free Galerkin (EFG) method and ALE is presented in [38]. This method moves a cloud of nodes along with the crack tip, so that the vicinity of the crack tip is always adequately resolved. As EFG is a meshless method that does not require nodal connectivities, such implementation of ALE to maintain high nodal density in the preferred region is accomplished effectively without resorting to remeshing strategies (refer to [39] for complications involved in implementing such a method in mesh-based FEM). The method is successfully applied to simulate wave propagation and dynamic crack propagation.

Fig. 1
figure 1

A schematic representation of a structural domain containing a crack

To summarize, to our knowledge neither a complex trajectory of a single crack nor simple propagation of multiple cracks within a material is modeled until now using ALE based methods. This is predominantly due to the fact that the mesh modification method used in ALE, in its classical sense, cannot handle the mesh topology changes that are introduced by advancing a crack through the FE mesh. Continuous remeshing is mandatory to eliminate the associated mesh tangling problems. In this work, this is avoided by using an additional step in the mesh refitting procedure that allows to modify the element connectivity locally to preserve the quality of mesh, as will be explained in the later section.

Structure of the paper

The remainder of the paper is structured as follows. The next section briefs the governing equations and the boundary conditions for the problem. Then the complete crack propagation algorithm together with all the details necessary for computer implementation are presented. Finally several numerical examples to demonstrate the accuracy of the proposed method are described.

Governing equations

At reference time \(t=t_0\), let the structure occupy the domain \(\Omega ^s_0\), with \(\Gamma ^s\) denoting the boundary of the structure (Fig. 1). \(\Gamma ^s\) is divided into three non-overlapping portions such that \(\Gamma ^s=\Gamma ^s_D\cup \Gamma ^s_N\cup \Gamma ^s_c\) in which \(\Gamma ^s_D\) and \(\Gamma ^s_N\) are Dirichlet and Neumann portions of the boundary respectively, and \(\Gamma ^s_c\) denotes the crack surfaces which contain always two physical crack faces \(\Gamma _c^s=\Gamma _{c+}^s\cup \Gamma _{c-}^s\). The balance of linear momentum equation is written as,

(1)

where \(\rho ^s\) is the density of the structure, \(\mathbf F \) is the deformation gradient, \(\mathbf S \) is the second Piola-Kirchhoff stress tensor, \(\mathbf b ^s\) represents externally applied body force per unit mass, \(\mathbf d ^s\) is the structural displacement and . T is the end time of the considered time interval, and Div(\(\cdot \)) is the divergence operator defined with respect to the material reference frame.

Since this is an evolutionary problem involving second order time derivative, initial conditions must be specified on \(\mathbf d ^s\) and its first derivative \(\dot{\mathbf{d }}^s=\frac{d\mathbf d ^s}{dt}\)

$$\begin{aligned} \mathbf d ^s|_{t=0}=\mathbf d ^s_0\ \ \ \mathrm {on}\ \Omega ^s_0\ ;\ \ \ \dot{\mathbf{d }}^s|_{t=0}=\dot{\mathbf{d }}^s_0\ \ \ \mathrm {on}\ \Omega ^s_0 \end{aligned}$$
(2)

Over the boundary of the domain, Dirichlet conditions are specified on \(\Gamma ^s_D\), Neumann conditions are prescribed on \(\Gamma ^s_N\), and the crack surfaces are assumed to be traction-free.

$$\begin{aligned}&\mathbf d ^s=\bar{\mathbf{d }}^s\ \ \ \mathrm {on}\ \Gamma ^s_D\times (0,T)\ ;\ \ \ \left( \mathbf FS \right) \cdot \mathbf n ^s=\bar{\mathbf{h }}^s\ \ \ \mathrm {on}\ \Gamma ^s_N\times (0,T) \end{aligned}$$
(3a)
$$\begin{aligned}&\left( \mathbf FS \right) \cdot \mathbf n ^{c+}=0\ \ \ \ \ \mathrm {on}\ \Gamma ^s_{c+}\times (0,T)\ ;\ \ \ \left( \mathbf FS \right) \cdot \mathbf n ^{c-}=0\ \ \ \ \ \mathrm {on}\ \Gamma ^s_{c-}\times (0,T) \end{aligned}$$
(3b)

We deal with hyperelastic Neo-Hookean materials in this work. The strain energy function for such material is given as

$$\begin{aligned} \Psi _{\mathrm {NH}}=\frac{\mu ^s}{2}\left( \mathrm {tr}\ \mathbf C -3\right) -\mu ^s\mathrm {ln}\ J+\frac{\lambda ^s}{2}\left( \mathrm {ln}\ J\right) ^2 \end{aligned}$$
(4)

where \(\mathbf C \) is the Cauchy–Green tensor, J is the determinant of deformation gradient \(J=\mathrm {det}\ \mathbf F , \lambda ^s\) and \(\mu ^s\) are Lame’s constants.

The mesh refitting approach

The complete numerical methodology, together with the computer implementation aspects, of the present approach are presented in this section. It is assumed that the fracture behavior of the material is completely characterized by the J-integral.

The focus of the present work is to simulate through-thickness mixed-mode quasi-static crack propagation within a structure. The current work can be considered as an extension of Tabiei and Wu [40] which describes the implementation of a crack module in DYNA3D FE package, and shares similarities with the method of Miehe and Gürses [3]. Both works address crack propagation through linear elastic materials only. Moreover the complex geometry related operations, like deciding the new crack tip nodes, are not addressed in depth. These details are crucial for implementation of the method. The approach proposed in [3] was called an r-adaptive method, but in order to avoid confusion with complex r-adaptive mesh redistribution methods [41, 42], the present method is labelled as mesh refitting approach. The following section presents the complete implementation details of the present method. Though we simulate through-thickness cracks, for simplicity we explain the geometry-related operations in 2D.

At each time step, the governing equations are solved by freezing the location of the crack. Then, the solution obtained is used to perform crack propagation related operations as described in Algorithm 1.

figure a

Solve the governing equations

The first step is to solve the structural dynamic equations by freezing the location of the crack. The strong form given in Eq. (1) is multiplied by appropriate test functions (\(\delta \mathbf d ^s\)) and are integrated over the structural domain to obtain the weak form which is stated as,

Find \(\mathbf d ^s\in \mathcal {W}_d\) such that for all \(\delta \mathbf d ^s\in \mathcal {V}_d\), the following holds

(5)

where \((.,.)_{\Omega ^s_0}\) and \(\langle .,.\rangle _{\Gamma ^s_N}\) mean the standard \(L^2\)-inner product over the reference domain and Neumann part of the boundary, respectively.

The solution space and the test function space are defined as

$$\begin{aligned} {\mathcal {W}}_d= & {} \{\mathbf{d }^{s}\in \mathbf{H }^1(\Omega ^s_0)\ |\ \mathbf{d }^s=\bar{\mathbf{d }}^{s}\ {\mathrm {on}}\ \Gamma ^{s}_{D}\} \end{aligned}$$
(6)
$$\begin{aligned} {\mathcal {V}}_d= & {} \{\delta \mathbf{d }^{s}\in \mathbf{H }^1(\Omega ^s_0)\ |\ \delta \mathbf{d }^s=0\ {\mathrm {on}}\ \Gamma ^{s}_{D}\} \end{aligned}$$
(7)

The above integral equations are dealt with nonlinear FEM for spatial discretization and Generalized-\(\alpha \) method for time discretization. The resulting nonlinear system of algebraic equations are solved using Newton–Raphson method to obtain the solution of displacement field \((\mathbf d ^s)\). For a more elaborate discussion of this well established procedure, the reader can refer to the literature (e.g. [43, 44]).

Perform computational crack propagation procedure

The displacement solution obtained from the previous step is used to perform crack propagation procedure by computing vector \(\mathbf J \)-integral. It involves seven discrete steps, each of which are detailed below.

Step 1: Construct local coordinate system at crack tip

To compute fracture mechanics quantities from the FE solution, and to decompose these quantities into their corresponding modes in a mixed-mode problem, it is essential to construct a local coordinate system (\(\underline{\xi },\underline{\eta }\)) at the crack tip (x \(_c\)) as shown in Fig. 2. The base vectors (\(\mathbf e _1,\mathbf e _2\)) associated with (\(\underline{\xi },\underline{\eta }\)) can be easily constructed because \(\mathbf e _1\) is the symmetry line of the crack; \(\mathbf e _2\) can be obtained by computing the normal to \(\mathbf e _1\) in a right hand coordinate system.

Step 2: Compute vector \(\varvec{J}\)-integral

The J-integral quantifies the strength of singularity at the crack tip in nonlinear elastic materials [45]. Moreover, it is a single parameter that dictates whether the crack propagates or not, and if at all it propagates in which direction it advances. Hence, it is essential to accurately evaluate the J-integral.

Fig. 2
figure 2

Construction of local coordinate system at crack tip. The shaded Quads represent finite elements

Fig. 3
figure 3

J-integral: a notation, b distribution of support function

With respect to the spatial configuration, the energy release rate along the direction of a crack is defined as,

$$\begin{aligned} J=\oint _{\gamma _j}{\left( wn_{\underline{\xi }}-\mathbf n \cdot \varvec{\sigma }\cdot \frac{\partial \mathbf d }{\partial \underline{\xi }}\right) d\gamma } \end{aligned}$$
(8)

where \(\gamma _j\) is the integration contour, w is the strain energy stored per unit deformed volume, \(\mathbf n \) is the normal to contour \(\gamma _j\) and \(\varvec{\sigma }\) is the Cauchy stress tensor. All these quantities are defined in the current spatial configuration as shown in Fig. 3a. Since the current work employs a total Lagrangian formulation, it is convenient to express the J-integral in the reference configuration using pull-back operations. As shown in [30], it reads as

$$\begin{aligned} J=\oint _{\Gamma _j}{\left( WN_{\underline{\Xi }}-\mathbf N \cdot \varvec{P}\cdot \frac{\partial \mathbf d }{\partial \underline{\Xi }}\right) d\Gamma } \end{aligned}$$
(9)

where \(\Gamma _j, W, \mathbf N \) are the corresponding quantities in reference configuration, \(\mathbf P \) is the first Piola-Kirchhoff stress tensor and \((\underline{\Xi },\underline{H})\) denote the crack tip coordinate system in the reference configuration, which is given by its base vectors (\(\mathbf E _1, \mathbf E _2\)) in Fig. 3a.

In FEM, the contour integrals are cumbersome to implement because the material variables are available only at the Gauss points. Interpolating these variables over the desired contour presents complications, in addition to introducing interpolation errors. Hence, several studies [46, 47] have proposed the idea of converting the contour integral into an integral evaluated over a finite domain around the crack tip by applying the divergence theorem. This procedure is straightforward to implement, as it requires only the quantities at Gauss points of elements within the finite domain. The equivalent domain form of \(\mathbf J \)-integral for large deformation problems is given as [29, 30],

$$\begin{aligned} \varvec{J}=\int _S{\left( \frac{\partial \mathbf d ^\top }{\partial X}\cdot \mathbf P -W\mathbf I \right) \cdot \varvec{\nabla }_0(q)\ dS} \end{aligned}$$
(10)

where S is the domain enclosed by \(\Gamma _j\), and \(\varvec{\nabla }_0(q)\) is the gradient of support function q with respect to the reference configuration.

In order to construct q, using nodal connectivity information, all the elements that are located on \(n-\)layers around the crack tip (see Fig. 3b with \(n=4\)) are considered. From this, the elements connected to the crack tip are deleted. Then, all the nodes that are on the outer boundary of this element set are located, and among these nodes, the one which has the shortest distance (\(r_{\mathrm {min}}\)) from the crack tip is chosen. Then the support function is initialized to take a value of unity at the inner layer of nodes, and drops smoothly to zero when the distance of a node from crack tip is more than or equal to \(r_{\mathrm {min}}\). The distribution of q within the integration domain is given in Fig. 3b.

Note In this work, we assume that the crack surfaces are traction-free. However, in FSFI applications, fluid loads are acting on the crack faces, and as a result an additional term appear in the computation of J-integral. This is explained further in [1].

Step 3: Check crack propagation criterion

The crack propagation criterion determines whether the existing crack propagates through the structure under the current stress state. Crack propagation occurs when the driving force reaches or exceeds the material resistance. The J-integral provides a measure of driving force, and its critical value (\(J_c\)) is assumed to be a material property, which quantifies the material’s resistance to crack propagation.

The present work makes use of the vector \(\mathbf J \)-integral based crack propagation criterion proposed by Ma and Korsunsky [48]. This criterion requires, first, the calculation of maximum strain energy release rate, which is given by the magnitude of J.

$$\begin{aligned} G_{max}=\sqrt{J_1^2+J_2^2} \end{aligned}$$
(11)

where \(J_1\) and \(J_2\) are the strain energy release rates along the direction of \(\mathbf e _1\) and \(\mathbf e _2\) respectively, which are given by simple dot products \(J_1=\mathbf J \cdot \mathbf e _1\) and \(J_2=\mathbf J \cdot \mathbf e _2\).

The crack extension under the given loading conditions occurs, when \(G_{max}\) reaches the fracture toughness of the material (\(J_c\)),

$$\begin{aligned} G_{max}\ge J_c \end{aligned}$$
(12)

If the crack propagation criterion is not satisfied, then there is no need to perform the remaining operations; the algorithm moves to the next time step to solve the governing equations of the structure.

Step 4: Obtain the direction of crack propagation

After confirming that the crack propagates, the next logical step is to determine along which direction it is going to advance through the material, which is provided by the crack kinking criterion.

There are several methods put forward to determine the crack kinking direction, and the most important methods are

  • Maximum circumferential stress criterion [49],

  • Minimum strain energy density criterion [50],

  • Maximum energy release rate criterion (MERR)[48, 51].

It is concluded in a comparative study [52] that the minimum strain energy density criterion is less accurate, and the accuracy of maximum circumferential stress criterion and maximum energy release rate criterion are equivalent in all the tests considered.

This work incorporates the maximum energy release rate criterion, proposed in [48], which is consistent with the crack propagation criterion given in the last section. It is stated that the crack propagates when \(G_{max}\) reaches or exceeds the characteristic fracture toughness of the material. MERR predicts the crack propagation direction (\(\theta _p\)) to be the direction of \(\mathbf J \), which is simply given as

$$\begin{aligned} \theta _p=\mathrm {tan^{-1}}\left( \frac{J_2}{J_1}\right) \end{aligned}$$
(13)

It is to be remembered that \(\theta _p\) is measured with respect to the crack normal, as indicated in Fig. 2. Moreover, in this work, the extent of crack propagation is always set to be the length of one complete edge of an element.

Step 5: Find new crack tip nodes

Having computed the crack propagation direction from \(\varvec{J}\), the next essential step is to determine the new crack tip nodes i.e, nodes in the FE mesh through which the crack must be propagated. A geometry-based method is used in this work to identify the new tip nodes.

The first step is to identify all the elements that are connected to the current tip node (Fig. 4). Among the edges of these elements, the edge that is intersected by the propagation vector is found. This intersecting edge is drawn with a thick continuous line in Fig. 4. Then the angles formed by the line joining the current tip node to the edge nodes, and the crack propagation direction are calculated (\(\phi _1\) and \(\phi _2\) in figure).

After getting the required intersecting edge, the next step is to check whether the crack propagates along the diagonal. This is realized by the condition, \(\phi _1\le \) diag-tol (\(=\)0.25 radians in all the simulations). In this case, the diagonal node corresponding to \(\phi _1\) is marked as new tip node. Since the crack propagates through a diagonal of the element, this element must be split along this diagonal to accommodate crack propagation through the mesh, as explained in the next step.

If \(\phi _1>\) diag-tol, then the non-diagonal node of the intersecting edge will be the next new tip node. In either cases, all the new tip nodes (if there are multiple cracks, each crack tip will have its own new tip node) are stored in \(\mathcal {R}_{ale}\). Moreover, the distance between the intersection point and the new tip nodes, marked as \(\varvec{\delta }_{ale}\) in the figure, are computed and will be used in the next step.

Step 6: Mesh refitting procedure

In this step, we refit the existing mesh in such a way that the modified mesh contains an edge along which the crack can propagate. The mesh refitting procedure used in the present work involves two discrete operations listed as follows:

  1. 1.

    Nodal repositioning

  2. 2.

    Splitting quadrilateral (Quad) elements into triangular (Tri) elements

In the first step, the nodes are repositioned without touching the elements. This means that the element topology (shape and total number of elements, or the connectivity between elements) remains unchanged. The elements only deform due to the movement of the nodes.

Fig. 4
figure 4

Procedure to find new crack tip nodes

Fig. 5
figure 5

Nodal release technique a splitting an element to allow crack propagation along diagonal, b modify connectivity locally near crack tip; the crack opening is shown only for visualization

Nodal repositioning in this work is achieved by solving elastostatic equations but obviously any other mesh moving approach could be used as well. In this approach, the mesh is treated as a linear elastic body, and the governing equations of the mesh movement together with the boundary conditions are

$$\begin{aligned} \varvec{\nabla }\cdot \varvec{\sigma }^m&=0\ \ \mathrm {on}\ \Omega ^s\end{aligned}$$
(14a)
$$\begin{aligned} \mathbf d ^m&=0\ \ \mathrm {on}\ \partial \Omega _{ale} \end{aligned}$$
(14b)
$$\begin{aligned} \mathbf d ^m&=\varvec{\delta }_{ale}\ \ \mathrm {on}\ \mathcal {R}_{ale} \end{aligned}$$
(14c)

where \(\varvec{\sigma }^m\) is the fictitious Cauchy stress tensor, \(\mathbf d ^m\) denotes the displacements at each node within the mesh, \(\Omega ^s\) represents the whole structural domain, and \(\partial \Omega _{ale}\) denotes the boundary for ALE computations: \(\partial \Omega _{ale}=\Gamma ^s_D\cup \Gamma ^s_N\cup \Gamma ^s_c\). Displacements at the new crack tip nodes are set to be \(\varvec{\delta }_{ale}\) that is computed in the previous step.

The above equations are solved to obtain the mesh displacement \(\mathbf d ^m\), which is used to move each node in the mesh to its new location. After this mesh movement operation, the new crack tip node is moved to the intersection point along the intersection edge (see Fig. 4).

In the next step of the mesh refitting procedure, the Quad elements that are marked to be split are cut into two Tri elements. This happens when the crack propagates very close to the diagonal of a Quad element (Fig. 5a). This process does not involve introducing new nodes into the mesh. By comparing Figs. 4 and 5a, the effect of the mesh refitting procedure is clear: the new tip nodes are first moved to the desired location using the nodal repositioning step, and then the Quad element is appropriately split into Tri elements to enable crack propagation along the diagonal. In short, the combination of nodal repositioning and element splitting ensure that after the mesh modifications, the crack propagates along an existing edge in the new mesh.

One of the main reasons for the failure of ALE based methods in handling large deformation or topology change is that such methods maintain their nodal connectivity during the entire simulation. The element splitting operations used in the present work alleviates this problem by enabling us to modify the connectivity between the elements locally. This is an essential step without which the nodal repositioning method cannot handle the change in mesh topology that is inherent to crack propagation problems, without resorting to complicated and time-consuming remeshing procedures.

Step 7: Nodal releasing technique

The two previous steps have enabled us to identify new tip nodes, and to move these nodes to match the computed propagation angle. However, the material separation is not yet included within the FE procedure. In order to achieve this, and to form physical crack surfaces, the nodal releasing technique is used.

In order to represent the material separation, the element connectivity at the current tip node must be modified; a duplicate node is created at the same location where the current tip resides. Few elements are released from the current tip node, and are assigned with a new duplicate node. This, in turn, generates new crack surfaces. In order not to destroy the FE mesh during this process, a consistent way of determining which elements get duplicate nodes is used.

In this procedure, two angles are defined: one is \(\phi _p\) already defined in Fig. 4, and the other is the angle formed by the negative normal at crack tip to the propagation vector (\(\phi _{nn}\) in Fig. 5a). Then, for each element, the angle (\(\phi _g\)) formed by the line connecting current tip to the centroid of the element and the normal is computed. The element is released and gets the duplicate node, if \(\phi _g\notin ~[\phi _p,\phi _{nn}]\). The elements that retain the current tip node are shaded in Fig. 5a. After nodal releasing and modifying element connectivity, the mesh close to the crack tip is plotted in Fig. 5b. At this point, the material separation is introduced and all the crack propagation operation are completed.

Numerical examples

Several examples of varying complexity are solved to demonstrate the effectiveness of the proposed method. These examples exhibit single and mixed-mode behavior, involving mono- and multimaterials. In order to closely examine the accuracy of the method, crack paths obtained from the present method are compared with experiments or results obtained from other methods in literature.

The first two examples consider stationary cracks, and the quantities calculated are compared with XFEM studies [30, 31]. These examples consider highly nonlinear effects evident from the crack tip blunting observed in the results. All the other examples involve complex crack propagation through the structure.

Crack tip blunting

Consider a single edge notched specimen with dimensions 2 mm \(\times \) 6 mm. The crack occupies half-width as shown in Fig. 6a. The top surface is subjected to a fixed displacement of 4 mm. All these details are taken from [30]. The strain energy function of the material is given by,

$$\begin{aligned} \Psi _{\mathrm {NH}}=\frac{\mu ^s}{2}\left( \mathrm {tr}\ \mathbf C -3\right) \end{aligned}$$
(15)

The Lame parameters are set such that \(\mu ^s=0.4225\) MPa and the equivalent Poisson ratio in the linear regime \(\nu =0.49\).

Fig. 6
figure 6

Crack tip blunting. a Geometry. All dimensions are in mm. b Deformed configuration. c Plot of vertical displacement of crack surface nodes against their horizontal position in reference state. XFEM results for comparison are taken from [30]

Fig. 7
figure 7

Computation of J-integral: a Variation with respect to \(\lambda \). b Domain independency

Fig. 8
figure 8

Single edge crack plate under mixed mode loading: a Geometry, material parameters and loading conditions; all dimensions are in mm. b Contours of displacement in vertical direction. c Crack tip trajectory

When the material deforms, the crack surfaces move apart, and the initially sharp crack will blunt significantly due to the material nonlinearity. The deformed configuration of the structure is shown in Fig. 6b. The vertical displacement of crack surface nodes are plotted against their horizontal position in the reference state in Fig. 6c; for comparison, XFEM simulation results are taken from [30]. It is directly evident that the results obtained from our simulations are matching well with the reported results. Moreover, the simulations using coarse and fine mesh yield identical values, which shows that the reported results are converged with mesh density. The coarse and fine mesh contain 1200 and 4800 uniform Cartesian elements respectively. It is to be mentioned that the XFEM study [30] was focused on incompressible materials, and the present results closely resembles the incompressible condition by taking \(\nu =0.49\).

J-integral computation

J-integral is a crucial parameter in our work because both the crack propagation and crack kinking criterion are entirely based on this single parameter. In order to study the accuracy of J-integral evaluation, we consider an edge crack specimen under simple extension. A 2 mm \(\times \) 2 mm plate with \(\mu ^s=0.4425\,\hbox {MPa}\) and the equivalent Poisson ratio in the linear regime \(\nu =0.49\) is taken, and the crack occupies half-width of the specimen. The strain energy function and boundary conditions are same as that of the previous example. These details are taken from an XFEM study [31], which reports the value of J-integral for large stretch ratios (\(\lambda \)). \(\lambda \) is defined as the ratio of deformed length to the original length. We intentionally chose [31] as the reference for our validation because comparing J-integral values at high \(\lambda \) could be challenging.

It can be seen from Fig. 7a that the J-integral values computed from our method are in excellent agreement with the XFEM results [31] even at large \(\lambda \). The coarse and fine mesh indicated in Fig. 7a contain 728 and 1600 uniform Cartesian elements respectively. At \(\lambda =2.5\), the difference between J-integral values computed using the coarse and fine mesh is only 1.3%. At the same \(\lambda \), the difference between the value reported in [31] and the present simulation using the fine mesh is as low as 3.4%. This quantitative comparison shows that the J-integrals computed in our work are very accurate even at large \(\lambda \).

The variation of J with respect to the number of layers chosen around the crack tip as the integration domain is given in Fig. 7b. It can be seen that after initial changes, the value of J is stable after 5 layers, after which only minute variations exist in J. In all the simulations presented in this work, 5 layers of elements around the crack tip are chosen to compute the J-integral.

Having simulated a stationary crack, the remaining examples consider complex crack propagation through the structure. The comparison between the present results and the results obtained from the literature demonstrates the accuracy of the method. For all the following examples, the strain energy function is given by Eq. 4.

Single edge cracked plate under mixed-mode loading

In this example, as shown in Fig. 8a, the plate which is fixed at the bottom edge, is subjected to shear stress \(\tau =1\) on the top. The initial edge crack length is half of the plate width. The Lame parameters are set such that \(E=30\) MPa and \(\nu =0.25\). The computational domain is discretized with 2736 elements with the whole area of crack propagation discretized with a fine mesh.

In this simulation, upon loading the crack propagates along a slightly curved path until it reaches the other end of the plate. In order to provide a detailed comparison, a zoomed view of crack path is plotted in Fig. 8c, and the result obtained from the present simulation is compared with two other studies: one utilizes a meshless method [53], and the other study is based on adaptive FEM [6]. It can be seen that the predicted crack tip trajectory matches very well with the results obtained from the other two studies.

Crack in a drilled plate

To demonstrate further the accuracy of the proposed method to simulate the crack path, the example given in [7] is considered. It reported the propagation of a crack from an initial notch in a beam which has three drilled holes. The study carried out both experimental and numerical tests, and observed a curvilinear crack propagation within the drilled plate. The geometrical configuration, material properties, and the loading conditions are given in Fig. 9a.The Lame parameters are set such that \(E=3\) GPa and \(\nu =0.35\). In this example, the stress/strain fields are influenced by the presence of holes in the beam, and this provides interesting curvilinear crack tip trajectories. There are two simulation cases considered based on the location of the initial notch. These are dictated by the choice of a and b in Fig. 9a whose values are given in Table 1 for simulation-1 and simulation-2.

Fig. 9
figure 9

Bittencourt’s drilled plate problem. a Geometry, b Simulation-1, c Simulation-2. Experimental values for comparison are taken from [7]

As reported in [7], the crack path follows different trajectories based on the choice of a and b, which are described as follows.

Simulation-1

The location of the initial notch is given by \(a=5\) and \(b=1.5\) mm. The crack is initially attracted towards the bottom hole, propagates near this hole, and got deflected away to end in the middle hole as shown in Fig. 9b. This is in accordance with the experimental results of [7], and other numerical studies [3, 6, 54]. Comparison with the experimental results show that the present simulation produces very good results; even the crack deflection near the bottom hole is predicted well in the simulation as can be directly seen from Fig. 9b. This is one of the very challenging validation test cases, owing to the complex crack tip trajectory involved. The developed methodology can be said to be accurate as it produces results that are matching very well with the experimental values even for this complex configuration.

Simulation-2

In this example, for which \(a=6\) and \(b=1\) mm, the crack is attracted towards the middle hole, and directly ends in it (Fig. 9c). There are no crack deflections observed, and for this example as well, the results match excellently with the experiment (Fig. 9c).

Four point beam with two notches

In order to test the performance of the present method to simulate multiple cracks in a structure, the four point bending beam with two pre-existing notches, shown in Fig. 10a, is simulated. The beam is supported from below at two points, and is loaded at two other points. The material properties are also given in Fig. 10a. The computational domain is discretized with 7400 elements. This example is proposed by Bocca et. al. [55] who performed experiments on the structure, and also simulated them numerically.

Table 1 Geometric parameters defining notch location for Bittencourt’s drilled plate problem shown in Fig. 9a
Fig. 10
figure 10

Four point bending beam with two notches: a Geometry, material parameters and loading conditions (not to scale). All dimensions are in mm, b crack path, c comparison of crack tip trajectories

The crack paths through the FE mesh is given in Fig. 10b. To demonstrate the accuracy of the simulation, the crack paths obtained from the present method are compared with the results reported using a meshless method that incorporates crack tip singular fields as enrichments [56]; results presented for the finest meshless node distribution is used for the comparison. The comparison of crack paths is plotted in Fig. 10c. It can be seen that for both crack tips, the tip trajectory obtained from the present simulations matches very well with the reported value.

Though our method can handle multiple cracks, care must be taken to make sure that the domains used to evaluate J-integral do not intersect with each other. However, this is not a specific drawback associated with our method alone. This is a common issue with other available approaches as well.

Fig. 11
figure 11

Crack deflection due to inclusion a Geometry and loading conditions, b crack path

Fig. 12
figure 12

Plate with a hole. a Geometry (not to scale). All dimensions are in mm. b The configuration at which the crack starts propagating. c An intermediate configuration. d Final configuration

Crack deflection due to inclusion

Crack growth in the presence of an inclusion is studied in this example. Geometry, loading, and boundary conditions are given in Fig. 11a; they are taken from [57]. The configuration consists of a rectangular plate which contains an off-centre circular inclusion. The Lame parameters of the plate are set such that \(E_{plate}\) \(=\) 20 MPa and \(\nu \) \(=\) 0.3. The objective of this study is to check whether the method is capable of accurately predicting the influence of this inclusion on crack propagation, which is already reported in [52, 57].

The inclusion is characterized by the ratio of Young’s modulus of the plate to that of the inclusion (\(r=E_{plate}/E_{incl.}\)). Two values are considered; \(r=10\) which means that the Young’s modulus of the inclusion is 10 times lower than that of the plate which is referred to as “soft” inclusion, and \(r=0.1\) that is referred to as “hard” inclusion. The Poisson ratio is assumed to be the same as that of the plate. The whole structural domain is discretized with 3213 elements.

The effect of the inclusion on the crack tip trajectory is shown in Fig. 11b. For soft inclusion, the crack is attracted towards the side of the inclusion; however, the crack does not end in it. In case of a hard inclusion, the crack deflects away from it. These observations are consistent with the already reported results [52, 57].

Nonlinear elastic plate with a hole

The above examples considered crack propagation with little material nonlinearity. This is evident from the fact that the crack remains sharp even after several propagation steps. The following example considers crack propagation involving high material nonlinearity under large deformation. A small off-centre hole is introduced in the geometric configuration considered for the first example, and this simulation allows the crack to propagate through the material. The Lame parameters are set to yield \(E=10\) GPa, \(\nu =0.3\); critical J-integral, \(J_c=50\) kJm\(^{-2}\). The top surface is subjected to a displacement of 0.5 mm. The geometric configuration of this example is presented in Fig. 12a.

As with the linear elastic examples, the loading (or the corresponding Dirichlet boundary condition here) is increased very smoothly from the zero initial value so that the influence of inertia is neglected. When the material starts deforming, as expected, the crack starts to blunt, and the J-integral value starts to increase. When J reaches \(J_c\), then the crack starts to propagate; the deformed configuration of the structure at which the crack starts propagating is depicted in Fig. 12b. Due to the presence of the hole, the crack slightly deflects upwards, as can be seen from Fig. 12b, c. From all these plots, one can infer that the crack tip is always blunt owing to the material nonlinearity, and the present method is able to model fracture behavior in such scenarios.

Conclusion

A finite element methodology to model mixed-mode crack propagation through nonlinear elastic materials is proposed in this work. The striking feature of this method is that it facilitates, with minimal implementation efforts, to update an existing large scale structural mechanics solver into a robust tool to handle single and multiple cracks. The method involves two steps: in the first step, the governing equations of the structure are solved using nonlinear FEM by freezing the crack in the structure; in the next step, the solution obtained from the FEM is used to propagate the crack based on the maximum energy release rate criterion. Advancing the crack through a FE mesh requires a continual change in topology of the mesh, which is achieved in this work by utilizing a mesh refitting approach. This method, as the name suggests, refits the mesh at each instant of crack advancement in such a way that the crack propagates through an existing edge in the modified mesh. The mesh deformation strategies (for example used in ALE based methods) usually result in mesh tangling issues when attempting to handle topology changes in the mesh. This problem is circumvented in this work by splitting the quadrilateral elements into triangular elements in the crack tip neighborhood, which allows the possibility of local mesh connectivity to be modified. This step is crucial to preserve the quality of the mesh throughout the simulation, without which the mesh movement methods will fail. Examples involving single- and multi-materials with one or multiple cracks are reported. The obtained results are compared with experimental and other available computational methods. The comparison demonstrated that the present method accurately predicted the fracture behavior of all the examples considered.