1 Introduction

The physical and mechanical properties of particulate-reinforced metal matrix composites have made them attractive candidate materials for aerospace, automotive and numerous other applications. The crack problem can unavoidably arise when the metal matrix composites structures are subjected to cyclic loadings. The presence and propagation of the cracks can affect the mechanical properties of the metal matrix composites and even lead to their eventual failure. It is essential to study the fatigue crack growth behavior of the metal matrix composites considering the interaction of the particles and cracks.

The classic FEM is a typical numerical method to study the crack growth behavior in particulate-reinforced materials. However, FEM is not a good choice to study the fatigue propagation problem. It requires the elements edges to coincide with the cracks and remesh the structure in FEM after each crack’s extension.

Recently, the XFEM has been wildly used to simulate the crack growth in particulate-reinforced materials. This method allows for the modeling of cracks to be independent of the finite element mesh. This advance has provided a convenient computational tool for modeling crack growth. But the XFEM cannot reduce the problem dimensions and simplify the input requirements.

Boundary integral method is an efficient way to solve the interaction between crack and inclusion [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]. However, most of the previous work of this method is limited to one inclusion and no crack growth simulation is presented based on the solution. In this paper, some drawbacks in the existing numerical method mentioned above are solved. A fully automatic fatigue crack growth simulation system for particulate-reinforced materials is developed based on the equivalent inclusion method and distributed dislocation method. The presented mesh-free method can transform the two-dimensional problem to one-dimensional problem and study the crack growth behavior when multiple inclusions are included.

2 Methodology

2.1 Problem formation

This study concerns an infinite two-dimensional plane containing multiple elliptical inclusions and kinked cracks subjected to arbitrary remote loading \(\sigma _{{\textit{ij}}}^0\) as shown in Fig. 1. There are totally \(N_{{\text {inc}}}\) elliptical inclusions in the plane, and the ith elliptical inclusion has the elastic moduli \(C_{{{\textit{ijkl}}}}^I (i,j,k,l=1,2)\). There are totally \(N_{{\textit{cra}}}\) kinked cracks in the matrix, and the Ith kinked crack contains \(n^{I}\) branches. The cracks and inclusions may have arbitrary orientations.

Fig. 1
figure 1

An infinite plane containing multiple elliptical inclusions and kinked cracks subjected to arbitrary remote loading

Fig. 2
figure 2

Decomposition of the original problem: a an infinite plane containing multiple kinked cracks, b an infinite plane containing multiple elliptical inclusions

The problem shown in Fig. 1 can be decomposed into two additive subproblems based on the superposition principle, as shown in Fig. 2.

2.2 Distributed dislocation method

The distributed dislocation method is employed to solve the subproblem shown in Fig. 2b. The kinked cracks can be modeled by continuous distributed edge dislocations as shown in Fig. 3. It is more convenient to calculate the stress intensity factors of the cracks later if we create the local coordinate set for each crack branch as shown in Fig. 4. As we can see from Fig. 4, the Ith local coordinate system is fixed at the center of the Ith crack branch. The \(\hat{{X}}\) and \(\hat{{Y}}\) axes are on the crack line and vertical to the crack line, respectively.

Consider that there is an edge dislocation located at \((\hat{{\xi }}_J ,0)\) on the Jth crack branch with the unknown Burgers vector \((b_{\hat{{x}}} (\hat{{\xi }}_J ,0),b_{\hat{{y}}} (\hat{{\xi }}_J ,0))\). A point located at \((\hat{{x}}_I ,0)\) on the Ith crack branch will have an induced stress field by the edge dislocation which can be expressed as follows [19, 20]:

$$\begin{aligned} \left[ {\begin{array}{l} \hat{{\sigma }}_{\hat{{x}}\hat{{x}}}^{IJ} \hbox {(}\hat{{x}}_I \hbox {,0)} \\ \hat{{\sigma }}_{\hat{{y}}\hat{{y}}}^{IJ} \hbox {(}\hat{{x}}_I \hbox {,0)} \\ \hat{{\sigma }}_{\hat{{x}}\hat{{y}}}^{IJ} \hbox {(}\hat{{x}}_I \hbox {,0)} \\ \end{array}} \right] =\frac{2\mu }{\pi (\kappa +1)}\left[ {\begin{array}{ll} G_{\hat{{x}}\hat{{x}}\hat{{x}}} (\hat{{x}}_I ,0;\hat{{x}}_J ,0)&{}\quad G_{\hat{{y}}\hat{{x}}\hat{{x}}} (\hat{{x}}_J ,0;\hat{{x}}_J ,0) \\ G_{\hat{{x}}\hat{{y}}\hat{{y}}} (\hat{{x}}_I ,0;\hat{{x}}_J ,0) &{}\quad G_{\hat{{y}}\hat{{y}}\hat{{y}}} (\hat{{x}}_J ,0;\hat{{x}}_J ,0) \\ G_{\hat{{x}}\hat{{x}}\hat{{y}}} (\hat{{x}}_I ,0;\hat{{x}}_J ,0) &{}\quad G_{\hat{{y}}\hat{{x}}\hat{{y}}} (\hat{{x}}_J ,0;\hat{{x}}_J ,0) \\ \end{array}} \right] \left[ {\begin{array}{l} b_{\hat{{x}}}(\hat{{x}}_J ,0) \\ b_{\hat{{y}}}(\hat{{x}}_J ,0) \\ \end{array}} \right] \end{aligned}$$
(1)

where \(\mu \) is the shear modulus of the plane, \(\nu \) is Poisson’s ratio, \(\kappa \) is Muskhelishvili’s constant: \(\kappa \hbox {=}(3-\nu )/(1+\nu )\) for plane stress case, \(\kappa =3-4\nu \) for plane strain case. Here \(G_{\hat{{\textit{i}}}\hat{{{\textit{j}}}}\hat{{{\textit{k}}}}}\) is defined as the stress influence function and can be calculated by the following equations,

$$\begin{aligned} \left\{ \begin{array}{ll} G_{{\textit{xxx}}} =\left( -\frac{1}{r_1^2 }\right) \left( 1+\frac{2x_1^2}{r_1^2}\right) ;&{}\quad G_{{\textit{yxx}}} =\left( -\frac{x_1}{r_1^2 }\right) \left( 1-\frac{2x_1^2 }{r_1^2 }\right) \\ G_{{\textit{xyy}}} =\left( -\frac{x_1}{r_1^2}\right) \left( 1-\frac{2x_1^2 }{r_1^2}\right) ;&{}\quad G_{{\textit{yyy}}} =\left( -\frac{1}{r_1^2}\right) \left( 3-\frac{2x_1^2 }{r_1^2}\right) \\ G_{{\textit{xxy}}} =\left( -\frac{x_1}{r_1^2}\right) \left( 1-\frac{2x_1^2}{r_1^2}\right) ;&{}\quad G_{{\textit{yxy}}} =\left( -\frac{1}{r_1^2 }\right) \left( 1-\frac{2x_1^2}{r_1^2 }\right) \\ \end{array} \right. \end{aligned}$$
(2)

where \(r^{2}=x_1^2 +y_1^2, x_1 =x-\xi ,y_1 =y-\eta \).

$$\begin{aligned}&\left[ {\begin{array}{ll} G_{\hat{{x}}\hat{{x}}\hat{{x}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{\hat{{y}}\hat{{x}}\hat{{x}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ G_{\hat{{x}}\hat{{y}}\hat{{y}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{} \quad G_{\hat{{y}}\hat{{y}}\hat{{y}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ G_{\hat{{x}}\hat{{x}}\hat{{y}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{\hat{{y}}\hat{{x}}\hat{{y}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ \end{array}} \right] \nonumber \\&\quad =\left[ \begin{array}{ccc} \cos ^{2}\theta _I &{}\quad \sin ^{2}\theta _I &{}\quad \sin 2\theta _I \\ \sin ^{2}\theta _I &{}\quad \cos ^{2}\theta _I &{}\quad -\sin 2\theta _I \\ \frac{-\sin 2\theta _I}{2} &{}\quad \frac{\sin 2\theta _I}{2} &{}\quad \cos 2\theta _I \\ \end{array}\right] \left[ {\begin{array}{cc} G_{{\textit{xxx}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{{\textit{yxx}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ G_{{\textit{xyy}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{{\textit{yyy}}}^{{\textit{IJ}}} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ G_{{\textit{xxy}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{{\textit{yxy}}}^{{\textit{IJ}}} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ \end{array}} \right] \left[ \begin{array}{cc} \cos \theta _J &{}\quad -\sin \theta _J \\ \sin \theta _J &{}\quad \cos \theta _J \\ \end{array} \right] \end{aligned}$$
(3)

where \(\theta _I\) and \(\theta _J\) are the crack incline angles in the global coordinates for the Ith crack branch and the Jth crack branch, respectively.

Fig. 3
figure 3

Modeling the cracks by distributed dislocations

Fig. 4
figure 4

Local coordinate system for the Ith crack branch

Fig. 5
figure 5

Eigenstrain in an elliptical inclusion

Fig. 6
figure 6

Equivalent inclusion method for multiple elliptical inclusions

Considering all the kinked cracks are modeled by edge dislocations, so the induced stresses for \((\hat{{x}}_I \hbox {,0)}\) on the Ith crack branch due to all the dislocations can be calculated by the principle of superposition,

$$\begin{aligned} \left[ {\begin{array}{c} \hat{{\sigma }}_{\hat{{{\textit{x}}}}\hat{{{\textit{x}}}}}^I (\hat{{x}}_I ,0) \\ \hat{{\sigma }}_{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^I (\hat{{x}}_I ,0) \\ \hat{{\sigma }}_{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^I (\hat{{x}}_I ,0) \\ \end{array}} \right] =\frac{2\mu }{\pi (\kappa +1)}\sum _{J=1}^M {\int _{-a_J }^{a_J } {\left[ {\begin{array}{cc} G_{\hat{{{\textit{x}}}}\hat{{{\textit{x}}}}\hat{{{\textit{x}}}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{\hat{{{\textit{y}}}}\hat{{{\textit{x}}}}\hat{{{\textit{x}}}}}^{IJ} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ G_{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}} \hat{{{\textit{y}}}}}^{{\textit{IJ}}} (\hat{{{\textit{x}}}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{\hat{{{\textit{y}}}} \hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^{{\textit{IJ}}} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ G_{\hat{{{\textit{x}}}}\hat{{{\textit{x}}}} \hat{{{\textit{y}}}}}^{{\textit{IJ}}} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0)&{}\quad G_{\hat{{{\textit{y}}}} \hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^{{\textit{IJ}}} (\hat{{x}}_I ,0;\hat{{\xi }}_J ,0) \\ \end{array}} \right] } \left[ {\begin{array}{l} B_{\hat{{x}}} (\hat{{\xi }}_J ,0) \\ B_{\hat{{y}}} (\hat{{\xi }}_J ,0) \\ \end{array}} \right] d\hat{{\xi }}_J } \end{aligned}$$
(4)

where \(B_{\hat{{x}}} (\hat{{\xi }}_J )=db_{\hat{{x}}} (\hat{{\xi }}_J )/d\hat{{\xi }}_J ,B_{\hat{{y}}} (\hat{{\xi }}_J )=db_{\hat{{y}}} (\hat{{\xi }}_J )/d\hat{{\xi }}_J\) are the density functions for the distributed dislocations along the Jth crack, \(a_J\) is the half crack length of the Jth, \(M=\sum \nolimits _{i=1}^{N_{{\textit{cra}}} } {i*n^{I}}\) is the total number of crack branches shown in Fig. 1.

2.3 Equivalent inclusion method

Firstly, an infinite plane containing an elliptical inclusion is considered as shown in Fig. 5. The elastic moduli of the inclusion are the same as the matrix. If the inclusion is subjected to a uniform eigenstrain \(\varepsilon _{{\textit{kl}}}^*\), there will be disturbance strain \({\varepsilon }'_{{\textit{ij}}}\) in the inclusion and outside the inclusion, respectively. If the global coordinate system is fixed at the center of the inclusion, then for an arbitrary point located at (xy) either in the inclusion or outside the inclusion, the disturbance strain \({\varepsilon }'_{{\textit{ij}}}\) can be calculated by the following equation [17, 18],

$$\begin{aligned} {\varepsilon }'_{ij} =K_{ijkl}\, \varepsilon _{kl}^{*} \end{aligned}$$
(5)

where \(K_{{\textit{ijkl}}} =\left\{ {\begin{array}{ll} S_{{\textit{ijkl}}}&{}\quad {\textit{if}}\quad \frac{x^{2}}{a^{2}}+\frac{y^{2}}{b^{2}}\le 1 \\ G_{{\textit{ijkl}}}&{}\quad {\textit{if}}\quad \frac{x^{2}}{a^{2}}+\frac{y^{2}}{b^{2}}>1\\ \end{array}} \right. ,S_{{\textit{ijkl}}}\) is the interior Eshelby’s tensor and \(G_{{\textit{ijkl}}}\) is the exterior Eshelby’s tensor .

The problem shown in Fig. 2b can be solved by the equivalent inclusion method as shown in Fig. 6. Based on the equivalent inclusion method, a inhomogeneous inclusion can be equivalent to a homogeneous inclusion with the same elastic moduli as the matrix plus an unknown eigenstrain \(\varepsilon _{{\textit{kl}}}^*\).

Based on the equivalency condition at the center of Ith inclusion, according to the Hooke’s law, in the Ith inclusion,

$$\begin{aligned} \sigma _{{\textit{ij}}}^0 +{\sigma }'_{{\textit{ij}}} =C_{{\textit{ijkl}}}^1 \left( \varepsilon _{{\textit{kl}}}^0 +{\varepsilon }'_{kl} -\varepsilon _{{\textit{kl}}}^{*(I)}\right) \end{aligned}$$
(6)

where \(\sigma _{{\textit{ij}}}^0\) and \(\varepsilon _{{\textit{kl}}}^0\) are the elastic stress and strain caused by the remote applied stress, respectively, \({\varepsilon }'_{{\textit{ij}}}\) is the disturbance strain caused by the eigenstrain \(\varepsilon _{{\textit{kl}}}^*\) in all inclusions which can be calculated by the following equation,

$$\begin{aligned} {\varepsilon }'_{ij} =\sum _{p=1}^{N_i} {K_{ijkl}^p} \,\, \varepsilon _{kl}^{*(p)} \end{aligned}$$
(7)

where \(K_{{\textit{ijkl}}}^p =\left\{ {\begin{array}{ll} S_{{\textit{ijkl}}}^p&{}\quad {\textit{if}}\quad p=I \\ G_{{\textit{ijkl}}}^p&{}\quad {\textit{if}}\quad p\ne I \\ \end{array}} \right. , S_{{{\textit{ijkl}}}}^p\) and \(G_{{{\textit{ijkl}}}}^p\) are the Eshelby’s tensor for the pth inclusion. By applying the equivalency condition for all the inclusions, the \(\varepsilon _{{\textit{kl}}}^*\) in each inclusion can be readily obtained. Then the stress for any point in the matrix can be calculated as follows:

$$\begin{aligned} \sigma _{{\textit{ij}}}^T =\sigma _{{\textit{ij}}}^0 +\sigma _{{\textit{ij}}}^{\prime } =C_{{\textit{ijkl}}} \left( \varepsilon _{{\textit{ij}}}^0 +{\varepsilon }'_{{\textit{ij}}}\right) \end{aligned}$$
(8)

where the disturbance strain \({\varepsilon }'_{{\textit{ij}}} =\sum \limits _{I=1}^{N_i}{G_{{\textit{ijkl}}}^{(I)} \varepsilon _{{\textit{kl}}}^{*(I)}}\).

Fig. 7
figure 7

An infinite plane containing four elliptical inclusions and two kinked cracks subjected to remote loading

Fig. 8
figure 8

\(\sigma _{22}\) for \(\mu _1 /\mu =10.0\) for the problem in Fig. 7 without cracks

Fig. 9
figure 9

Effects of \(\mu _1 /\mu \) on stress intensity factor for example 1

Fig. 10
figure 10

Flowchart of the crack propagation simulation by the presented method

For a point located at \((\hat{{x}}_I ,0)\) on the Ith crack branch shown in Fig. 4, the stress induced by the inclusions and applied loading can be calculated by transforming the stress components from global coordinate system to the local coordinate system of the Ith crack by Mohr transformation,

$$\begin{aligned} \left[ {\begin{array}{l} \hat{{\sigma }}_{\hat{{{\textit{x}}}}\hat{{{\textit{x}}}}}^T (\hat{{{\textit{x}}}}_I ,0) \\ \hat{{\sigma }}_{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^T (\hat{{x}}_I ,0) \\ \hat{{\sigma }}_{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^T (\hat{{x}}_I ,0) \\ \end{array}} \right] =\left[ {\begin{array}{lll} \cos ^2\theta _I &{}\quad \sin ^2 \theta _I &{}\quad \sin 2\theta _I \\ \sin ^2 \theta _I &{}\quad \cos ^2 \theta _I &{}\quad -\sin 2\theta \\ -\sin \theta _I \cos \theta _I &{}\quad \sin \theta _I \cos \theta &{}\quad \cos 2\theta \\ \end{array}} \right] \left[ {\begin{array}{l} \sigma _{{\textit{xx}}}^T (\hat{{x}}_I ,0) \\ \sigma _{{\textit{yy}}}^T (\hat{{x}}_I ,0) \\ \sigma _{{\textit{xy}}}^T (\hat{{x}}_I ,0) \\ \end{array}} \right] \end{aligned}$$
(9)

where \(\theta _I\) is the crack incline angles in the global coordinates for the Ith crack branch.

2.4 Governing integral equations

For a point located at \((\hat{{x}}_I ,0)\) on the Ith crack branch, the stress is a addition of the above two solutions of stress distribution, \(\hat{{\sigma }}_{\hat{{i}}\hat{{j}}}^I \) and \(\hat{{\sigma }}_{\hat{{i}}\hat{{j}}}^T\). Based on the stress traction condition that the normal and shear stresses along the crack faces must be zero, the following equations can be obtained,

$$\begin{aligned} \left[ {\begin{array}{l} \hat{{\sigma }}_{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^I (\hat{{x}}_I ,0) \\ \hat{{\sigma }}_{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^I (\hat{{x}}_I ,0) \\ \end{array}} \right] +\left[ {\begin{array}{l} \hat{{\sigma }}_{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^T (\hat{{x}}_I ,0) \\ \hat{{\sigma }}_{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^T (\hat{{x}}_I ,0) \\ \end{array}} \right] =\left[ {\begin{array}{l} 0 \\ 0 \\ \end{array}} \right] \end{aligned}$$
(10)

2.5 Numerical solution

The Gauss–Chebyshev quadrature method is employed to solve the above integral equations. The integral for the Jth crack branch \(\left[ {-a_J ,a_J } \right] \) needs to be normalized over by the following transform firstly [19, 20],

$$\begin{aligned} \left\{ {\begin{array}{l} \hat{{\xi }}_J =\hat{{\xi }}_J (\hat{{s}}_J )=a_J \hat{{s}}_J \\ \hat{{x}}_I =\hat{{x}}_I (\hat{{t}}_I )=a_I \hat{{t}}_I \\ \end{array}} \right. \end{aligned}$$
(11)

Now, Eq. (9) can be converted to the following equation,

$$\begin{aligned} \left[ {\begin{array}{l} \sigma _{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^I (\hat{{x}}_I (\hat{{t}}_I ),0) \\ \sigma _{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^I (\hat{{x}}_I (\hat{{t}}_I ),0) \\ \end{array}} \right] +\left[ {\begin{array}{l} \sigma _{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^T (\hat{{x}}_I (\hat{{t}}_I ),0) \\ \sigma _{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^T (\hat{{x}}_I (\hat{{t}}_I ),0) \\ \end{array}} \right] =\left[ {\begin{array}{l} 0 \\ 0 \\ \end{array}} \right] \end{aligned}$$
(12)

The dislocation density functions for the Ith crack are chosen to be decomposed in the form,

$$\begin{aligned} \left[ {\begin{array}{l} B_{\hat{{x}}} (\hat{{\xi }}_I (\hat{{s}}_I )) \\ B_{\hat{{y}}} (\hat{{\xi }}_I (\hat{{s}}_I )) \\ \end{array}} \right] =\frac{1}{\sqrt{1-\hat{{s}}_I ^{2}}}\left[ {\begin{array}{l} \phi _{\hat{{x}}}^I (\hat{{s}}_I ) \\ \phi _{\hat{{y}}}^I (\hat{{s}}_I ) \\ \end{array}} \right] \end{aligned}$$
(13)

where \(\phi _{\hat{{x}}}^i (\hat{{s}}_i)\) and \(\phi _{\hat{{y}}}^i (\hat{{s}}_i)\) are the new unknown functions to be determined and \(-1\le \hat{{s}}_i \le 1\) is a non-dimensional parameter along Ith crack branch.

Fig. 11
figure 11

Crack propagation in the local coordinate system of the crack for the \(n+1\hbox { step}\)

Fig. 12
figure 12

An infinite plane containing four circular inclusions and two parallel cracks subjected to remote loading

Fig. 13
figure 13

Fatigue growth paths for case 1

Fig. 14
figure 14

Stress intensity factor of crack tip A for case 1

The \(\hbox {W}\) integration points imposed on the Ith crack branch and \(W-1\) collocation points are denoted by \(\hat{{s}}_i^I ,(i=1,2,...W)\) and \(\hat{{t}}_k^I ,(k=1,2,...W-1)\), respectively.

$$\begin{aligned} \hat{{s}}_i =\cos \left( \frac{2i-1}{2W}\pi \right) ,\hat{{t}}_k =\cos \left( \frac{k}{W}\pi \right) \end{aligned}$$
(14)

We need to mention that the stress \(\hat{{\sigma }}_{\hat{{i}}\hat{{j}}}^T (\hat{{t}}_k^I ,0)\) calculated by the equivalent inclusion method is a determined value for any given integration point imposed on the crack line. So Eq. (11) can be rewritten as the following equation,

$$\begin{aligned}&-\frac{2\mu }{\pi (\kappa +1)}\sum _{J=1}^M {a_J \int _{-a_J }^{a_J } {\left[ {\begin{array}{ll} G_{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^{IJ} (\hat{{x}}_I (\hat{{t}}_k^I ),0;\hat{{\xi }}_J (\hat{{s}}_{_i }^J ),0)&{}\quad G_{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^{IJ} (\hat{{x}}_I (\hat{{t}}_k^I ),0;\hat{{\xi }}_J (\hat{{s}}_{_i }^J ),0) \\ G_{\hat{{{\textit{x}}}}\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^{IJ} (\hat{{x}}_I (\hat{{t}}_k^I ),0;\hat{{\xi }}_J (\hat{{s}}_{_i }^J ),0)&{}\quad G_{\hat{{{\textit{y}}}}\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^{IJ} (\hat{{x}}_I (\hat{{t}}_k^I ),0;\hat{{\xi }}_J (\hat{{s}}_{_i }^J ),0) \\ \end{array}} \right] } \left[ {\begin{array}{l} \phi _{\hat{{x}}}^J (\hat{{s}}_i^J) \\ \phi _{\hat{{y}}}^J (\hat{{s}}_i^J) \\ \end{array}} \right] } \nonumber \\&\quad =\left[ {\begin{array}{l} \hat{{\sigma }}_{\hat{{{\textit{y}}}}\hat{{{\textit{y}}}}}^T (\hat{{t}}_k^I ,0) \\ \hat{{\sigma }}_{\hat{{{\textit{x}}}}\hat{{{\textit{y}}}}}^T (\hat{{t}}_k^I ,0) \\ \end{array}} \right] \end{aligned}$$
(15)

Besides, based on the connection conditions at the kinks [17, 20], the following two extra equations for the ith kink on the Ith kinked crack can be obtained,

$$\begin{aligned}&\cos \theta _i^I \phi _{\hat{{x}}_i }^{I(i)} (+1)-\sin \theta _i^I \phi _{\hat{{y}}_i }^{I(i)} (+1)=\cos \theta _{i+1}^I \phi _{\hat{{x}}_{i+1} }^{I(i+1)} (+1)-\sin \theta _{i+1}^I \phi _{\hat{{y}}_{i+1} }^{I(i+1)} (+1)\nonumber \\&\sin \theta _i^I \phi _{\hat{{x}}_i }^{I(i)} (+1)+\cos \theta _i^I \phi _{\hat{{y}}_i }^{I(i)} (+1)=\sin \theta _{i+1}^I \phi _{\hat{{x}}_{i+1} }^{I(i+1)} (+1)+\cos \theta _{i+1}^I \phi _{\hat{{y}}_{i+1} }^{(i+1)} (+1) \end{aligned}$$
(16)

where \(I=1,...,N_{{\textit{cra}}} ;i=1,..,\hbox {n}^{{\mathrm{I}}}-1,N_{{\textit{cra}}}\) is the total number of the kinked cracks and \(n^{I}\) is the number of branches of the Ith kinked crack.

According to the nothingness of the summation of the dislocation from all the crack branches, another two extra equations can be developed [17, 20],

$$\begin{aligned}&\sum _{i=1}^{n^{I}} {\left[ {\frac{a_i \cos \theta _i^I }{W}\sum _{i=1}^W {\phi _{\hat{{x}}}^{I(i)} (\hat{{s}}_i) -\frac{a_i \sin \theta _i^I }{W}\sum _{i=1}^W {\phi _{\hat{{y}}}^{I(i)} (\hat{{s}}_i)} } } \right] } =0 \nonumber \\&\sum _{i=1}^{n^{I}} {\left[ {\frac{a_i \sin \theta _i^I }{W}\sum _{i=1}^W {\phi _{\hat{{x}}}^i (\hat{{s}}_i)+\frac{a_i \sin \theta _i^I}{W}\sum _{i=1}^W {\phi _{\hat{{y}}}^{I(i)} (\hat{{s}}_i)}}} \right] } =0 \end{aligned}$$
(17)

\(\phi (+1), \phi (-1)\) can be calculated by a standard procedure as,

$$\begin{aligned}&\phi (+1)=\sum _{i=1}^M {\frac{\sin ((2i-1)(2M-1)\pi /(4M))}{\sin ((2i-1)/(4M))}} \phi (s_i ) \nonumber \\&\phi (-1)=\sum _{i=1}^M {\frac{\sin ((2i-1)(2M-1)\pi /(4M))}{\sin ((2i-1)/(4M))}} \phi (s_{M+1-i} ) \end{aligned}$$
(18)

By solving Eqs. (1518), the stress intensity factor for the Ith kinked crack can be calculated as,

$$\begin{aligned}&\left( K_I^- \right) ^{I}=-\sqrt{\pi a_{_1 }^I }\frac{2\mu }{\kappa +1}\left( \phi _{\hat{{y}}_1 }^1 (-1)\right) ^{I}, \, \left( K_{II}^{-}\right) ^I =-\sqrt{\pi a_1}\frac{2\mu }{\kappa +1}\left( \phi _{\hat{{x}}_1}^1 (-1)\right) ^{I}\nonumber \\&\left( K_I^{+}\right) ^{I}=-\sqrt{\pi a_{{n^{I}}}^I}\frac{2\mu }{\kappa +1}\left( \phi _{\hat{{y}}_{n^{I}}}^{n^{I}} (+1)\right) ^{I}, \, \left( K_{II}^+\right) ^I =-\sqrt{\pi a_{n^{I}} }\frac{2\mu }{\kappa +1}\left( \phi _{\hat{{x}}_{n^{I}} }^{n^{I}} (+1)\right) ^{I} \end{aligned}$$
(19)

where \((K_I^- )^{I}\) and \((K_{II}^- )^{I}\) represent mode I and mode II stress intensity factors of the left crack tip for Ith kinked crack, and \(a_1\) is the half crack length of the first crack branch for Ith kinked crack. Similarly, \((K_I^+ )^{I},\quad (K_{II}^+ )^{I}\) represent mode I and mode II stress intensity factors of the right crack tip for the Ith kinked crack, and \(a_m\) is the half crack length of the last crack branch for Ith kinked crack.

3 Verification of the presented method

In order to verify the accuracy of the presented method, the problem shown in Fig. 7 is solved by the presented method and the finite element method. Plane strain condition is assumed in this example.

Fig. 15
figure 15

Fatigue growth paths for case 2 (red line)

Fig. 16
figure 16

Stress intensity factor of crack tip A for case 2

Fig. 17
figure 17

Fatigue growth paths for case 3 (red line)

An infinite plane containing four elliptical inclusions and two kinked cracks is subjected to a remote uniform tensile stress \(\sigma _{22}^0\) in the y direction. The arrangements of the inclusions and cracks are shown in Fig. 7. The non-dimensional stress intensity factors for crack tip A and B in Fig. 7 are defined as,

$$\begin{aligned} F_{{\textit{I(A)}}} =K_{{\textit{I(A)}}} /(\sigma _0 \sqrt{\pi a}), F_{{\textit{II(A)}}} =K_{{\textit{II(A)}}} /(\sigma _0 \sqrt{\pi a})\quad F_{{\textit{I(B)}}} =K_{{\textit{I(B)}}} /(\sigma _0 \sqrt{\pi a}) \end{aligned}$$

The shear modulus ratio of the inclusion and the matrix \(\mu _1 /\mu \) is selected to be 0, 0.2, 0.5, 0.8, 1, 2, 5 and 10, respectively. The variations of the non-dimensional stress intensity factors \(F_{{\textit{I(A)}}} ,F_{{\textit{II(A)}}}\) and \(F_{{\textit{I(B)}}}\) with \(\mu _1 /\mu \) calculated by the presented method and the finite element method are studied here. As we can see from part 2 in this paper, to obtain the accurate solution of the cracks problem by the distributed dislocation method, it is important to make sure the stress distribution \(\hat{{\sigma }}_{\hat{{y}}\hat{{y}}}^T\) obtained by the equivalent inclusion method for the same problem without cracks is accurate enough. So Fig. 8 shows the stress distributions in the y direction \((\sigma _{22})\) for the problem shown in Fig. 7 without the two kinked cracks for \(\mu _1 /\mu =10\) by the presented method and the finite element method. As we can see from Fig. 8, the results obtained by the two methods agree very well with each other and this shows the correctness of the equivalent inclusion method to solve the multiple inclusions problems.

Figure 9 shows the variations of the non-dimensional stress intensity factors \(F_{{\textit{I(A)}}},F_{{\textit{II(A)}}}\) and \(F_{{\textit{I(B)}}}\) with \(\mu _1 /\mu \) of the presented method and the finite element method. As shown in Fig. 9, the maximum difference of the dimensionless SIF of the two methods is less than \(4\%\) when \(\mu _1 /\mu =0\), and for other cases, the difference of the dimensionless SIFs is less than \(1\%\).

4 Fatigue cracks propagation simulation

The fatigue cracks propagation behavior can be discretized into a number of incremental steps by extending the crack tip to a new position based on linear fracture mechanics. The procedure of the presented method is shown in Fig. 10. There are three major steps in the simulation. The first one is inputting the information of the model to be analyzed, such as inclusions, cracks and loads. The second one is calculating the problem by the presented method. The third one is determination of the crack propagation increment and turning angle by the crack growth criterion which will be introduced later. After the three major steps, the new model is generated according to the updated crack propagation configuration by the increment and turning angle. Then a fully automatic crack growth simulation system is realized.

5 Crack propagation criterion

The key point of the multiple cracks propagation simulation is to determine the crack growth increments \(\Delta a_i\) and different crack turning angle \({\mathop {\theta }\limits ^{\wedge }}_{c}^{n+1}\) for crack tip i based on the calculated stress intensity factors.

(1) Growth increments \(\Delta a_i\)

The wildly known Paris’ law can be used to determine crack growth increment \(\Delta a\). The crack propagation length of each crack tip can be calculated by the following equation for multiple cracks:

$$\begin{aligned} \Delta a_i =\Delta a_{\max } \left( \frac{\Delta K_{{{\text {Ieq}}}}^i}{\Delta K_{{\text {Ieq}},\max }^i}\right) ^{m} \end{aligned}$$
(20)

where \(\Delta a_i\) is the propagation length of the \(i_{\mathrm{th}}\) crack tip, \(\Delta a_{\max }\) is the maximum value of the crack propagation length corresponding to the crack tip with the largest \(\Delta K_{{{\text {Ieq}}}}\), m is the fatigue propagation constant for the material. \(K_{{{\text {Ieq}}}}^i\) is the effective stress intensity factor which can be calculated by

$$\begin{aligned} K_{{\text {Ieq}}} =K_I \cos ^3 \frac{\theta _c}{2}-3K_{{\textit{II}}} \cos ^2 \frac{\theta _c }{2}\sin \frac{\theta _c}{2} \end{aligned}$$
(21)

(2) Crack turning angle

The maximum circumferential stress criterion is adopted to determine the crack propagation turning angle \({\mathop {\theta }\limits ^{\wedge }}_c\) shown in Fig. 11.

$$\begin{aligned} {\mathop {\theta }\limits ^{\wedge }}_c =2\arctan \frac{-2K_{{\textit{II}}} }{K_I +\sqrt{K_I^2 +8K_{{\textit{II}}}^2}} \end{aligned}$$
(22)

In Fig. 11, \(x_{{\text {tip}}}^{(n)} ,y_{{\text {tip}}}^{(n)}\) represent the location of the crack tip in the local coordinate system of the crack, respectively, after n steps’ propagation, \(\Delta a^{(n+1)}\), \({\mathop {\theta }\limits ^{\wedge }}_c^{n+1}\) represent the crack propagation length and the crack propagation turning angle for the \(n+1\) step.

6 Numerical examples

A numerical example of crack growth in particulate-reinforced material is presented in this section. Figure 12 shows an infinite plane containing four circular inclusions and two parallel cracks under cyclic stress (\(\sigma _0^{\max } =1\,\hbox {MPa},\sigma _0^{\min } =0\,\hbox {MPa})\). In this study, the Poisson’s ratios \(\nu \) of the plane and inclusions are all selected to be 0.3. Four cases are studied in this example:

Case 1: \(\mu _2 /\mu _1 =1;\mu _3 /\mu _1 =1;\mu _4 /\mu _1 =1;\mu _5 /\mu _1 =1\)

In this case, this problem is equal to an isotropic plane containing two parallel cracks. The number of integration points used for cracks are fixed at 20. Figure 13 shows the crack growth paths, and Fig. 14 shows the change in the stress intensity factor of crack tip A with the increase in the crack growth steps.

Fig. 18
figure 18

Stress intensity factor of crack tip A for case 3

Fig. 19
figure 19

Fatigue growth paths for case 4 (red line)

Fig. 20
figure 20

Stress intensity factor of crack tip A for case 4

Fig. 21
figure 21

Stress intensity factor of crack tip C for case 4

As we can see from Fig. 13, without the effects of the inclusion, the interaction between the two cracks makes them grow away from each other. \(K_{I}\) increases with the growth of the crack and \(K_{{\textit{II}}}\) keeps being a small value close to 0.

In the following cases, the results obtained in this case are selected to be a reference case in order to study the effects of the inclusions.

Case 2: \(\mu _2 /\mu _1 =100;\mu _3 /\mu _1 =100;\mu _4 /\mu _1 =100;\mu _5 /\mu _1 =100\)

In this case, similarly, Fig. 15 shows the crack growth paths and Fig. 16 shows the change in the stress intensity factor of crack tip A with the increase in the crack growth steps.

We need to note that the red lines in Fig. 15 are the crack growth paths for this case and the dark lines are the crack growth paths in case 1. As we can see from Figs. 15 and 16, due to the interaction between the two cracks, they still grow away from each other in this case. However, since the shear modulus of the inclusion is higher than the matrix, the stress intensity factors in this case are lower than those of case 1 which is known as the shielding effect. And the shielding effects force the cracks grow away from the inclusions and decrease the crack growth rates of the cracks. It is very obvious in Fig. 15 that the two cracks are closer with each other and the cracks are shorter after 20 steps compared with case 1.

Case 3: \(\mu _2 /\mu _1 =0;\mu _3 /\mu _1 =0;\mu _4 /\mu _1 =0;\mu _5 /\mu _1 =0\)

Figure 17 shows the crack growth paths, and Fig. 18 shows the change in the stress intensity factor of crack tip A with the increase in the crack growth steps for this case.

Figure 17 shows that the crack growth paths in this case are totally different from those of case 2. The shear modulus of the inclusion is much lower than the matrix, so the cracks propagate toward the inclusions and the cracks are much longer after 20 steps compared with case 1. However, the change in the stress intensity factors is complicated. At the beginning, the stress intensity factors in this case are higher than those of case 1 and this is called the amplifying effect of the soft inclusion. With the increase in the growth of the cracks, due to the attracting effects of the inclusions, the growing directions of the cracks change a lot and the cracks are far from being parallel to the X axis of the plane as the beginning. So the \(K_{I}\) decreases and the absolute value of \(K_{{\textit{II}}}\) increases. When the cracks pass the inclusions totally, the crack paths get straight again and the \(K_{I}\) increases gradually and finally became higher than that of case 1.

Case 4: \(\mu _2 /\mu _1 =100;\mu _3 /\mu _1 =100;\mu _4 /\mu _1 =0;\mu _5 /\mu _1 =0\)

Figure 19 shows the crack growth paths. Figures 20 and 21 show the change in the stress intensity factor of crack tip A and C with the increase in the crack growth steps, respectively, for this case.

As we can see from those figures, the crack growth paths of CD and the stress intensity factors of cracks tips C and D are similar to those of case 3. However, the situation for crack AB is totally different. With the increase in the cracks, the stress intensity factor of crack tip A decreases and gets to 0 quickly and the crack stops propagating due to the effects of the inclusions.

7 Conclusion

In this paper, a numerical method based on the equivalent inclusion method and distributed dislocation method is presented to simulate the fatigue crack growth in particulate-reinforced composite materials. The numerical examples show that the crack growth is very complicated and is affected greatly by the shear modulus ratio of the inclusions and matrix. The presented method is a very effective way to study the fatigue crack growth life of the particulate-reinforced composite materials structures.