1 Introduction

Regarding solid bodies and structures, not only the deformation under external loads is of interest. Different fields of science and engineering, such as geophysics or civil engineering, are also concerned with the mechanism of fracture and the study thereof. Thus, a number of different numerical techniques for the simulation of dynamic crack propagation and other fracture related phenomena have emerged. More prominent among these are the finite element method (FEM) [1, 2] the boundary element method [3, 4], or more recently peridynamics [5, 6] and phase field methods [7, 8].

Lattice Boltzmann methods (LBM) [9] are another approach to simulations in engineering and are now widely used in computational fluid dynamics. The principle, however, can be adapted to different problems in various disciplines of science [10, 11]. The usage of LBM in computational solid mechanics is recently developed [12,13,14,15], and the application to problems involving fractures has been considered in [16,17,18]. LBMs are mesoscale methods, employing elements of statistical mechanics, and work with a rather simple transport mechanism on a regular grid. This promises good computational efficiency, especially when the algorithm is parallelized [19, 20]. This work regards the dynamics of antiplane shear, which reduces the Navier–Cauchy equation to a 2D wave equation. Different LBMs [16, 21, 22] have been proposed to solve the problem of wave propagation. Chopard and Luthi [23] even proposed an LBM to simulate crack growth in a simplified solid. However, this model is not consistent with linear elastic solid mechanics, nor does it include a fracture criterion based on theories of classical fracture mechanics.

In a previous work [17], we have shown the LBM for antiplane shear, based on the formulation of Yan’s [21] LBM for waves, and applied this to a stationary crack with mode III opening. We then improved thereon with the introduction of non-lattice conforming boundary conditions [24], which are highly relevant for the utilization of the LBM in the field of fracture mechanics.

Now, we directly build on this by introducing the extension to dynamic crack propagation. It is our intention to demonstrate that crack growth can be modeled with the LBM in a way that is in agreement with classical fracture mechanics. However, the comparison with competing approaches such as finite element simulations of phase field models for fracture [25, 26] and the X-FEM [2] is beyond the scope of this work. In essence, handling dynamic cracks is reduced to a post-processing of lattice sites, without a need for remeshing due to the fixed grid. The criterion for crack propagation that we employ is based on the concept of stress intensity factors (SIFs) by Irwin [27]. The SIF characterizes the load on the crack tip and is evaluated via the elastic fields in the vicinity of the crack tip in our approach.

Our work is structured as follows. First, a short background on continuum and fracture mechanics is given in Sect. 2, followed by a review of the LBM for waves in Sect. 3. Next, in Sect. 4, we present the algorithm and discuss details regarding the implementation of crack propagation and fracture criteria. In Sect. 5, numerical results are shown for two problems. In order to demonstrate the agreement with classical fracture mechanics and to increase the reliability of our approach, we deliberately chose relatively simple problems for which an analytical benchmark solution exists. In the first example, we do not employ any fracture criterion to decide whether a crack will propagate, but simply force the crack to grow at a certain speed. For this case, we demonstrate that the LBM is able to predict the elastic fields surrounding a moving crack tip, i.e., the SIF, in agreement with analytic solutions.

In the second numerical example, the implementation of the fracture criterion is tested and it is shown that, in our algorithm, a crack propagates if the fracture criterion is fulfilled.

Lastly, Sect. 6 summarizes the results. It also discusses the algorithm and its generalization to different LB schemes, such as plane strain, or different propagation criteria.

2 Mechanics of linear elastic solids and fractures

This section summarizes the concepts of solid mechanics and fracture mechanics that the proposed new LBM builds upon.

2.1 Antiplane shear deformation of linear elastic solids

Fig. 1
figure 1

Antiplane shear deformation of a linear elastic solid with outer normal vector \(\varvec{n}\) subjected to Neumann boundary conditions \(\varvec{t}^*\) and Dirichlet boundary conditions \(w^*\), cf. Schlüter et al. [17]. The outline of the body in the deformed configuration is indicated by dashed lines

A linear elastic body with shear modulus \(\mu \) in a Cartesian xyz-coordinate system is considered, for which the displacement field is restricted to \(\varvec{u}=w(x,y)\varvec{e}_z\). Here, x/y are the in-plane coordinates and \(\varvec{e}_z\) is the unit vector in the out-of-plane direction, see Fig. 1. This deformation, in which the out-of-plane displacement is the only nonzero displacement component and is a function of the in-plane coordinates, is commonly referred to as antiplane shear deformation.

For a linear elastic body with density \(\rho \), the governing equation of the displacement field is the wave equation

$$\begin{aligned} \frac{1}{c_s^2} \dfrac{\partial ^2{w}}{\partial {t}^2} = \dfrac{\partial ^2{w}}{\partial {x}^2} + \dfrac{\partial ^2{w}}{\partial {y}^2}, \quad \text {where} \; c_s=\sqrt{\dfrac{\mu }{\rho }}. \end{aligned}$$
(1)

2.2 Dynamic linear elastic fracture mechanics

For sufficiently brittle materials, the debonding of the material during fracturing is determined by the mechanical fields directly in the vicinity of the so-called process zone in which material separation actually takes place. It is commonly assumed that in such a case, the fields surrounding the process zone can still be determined with sufficient accuracy by the theory of linear elasticity. Thus, fracture criteria are constructed by characterizing the elastic fields in the vicinity of crack tips and comparing these to critical values, which need to be determined in experiments for a given crack loading mode and material.

In this work, attention is restricted to one such fracture criterion in order to model crack growth in brittle materials. The elastic fields surrounding the crack tip are obtained by the LBM and are fed into the fracture criterion that eventually determines whether a crack propagates.

Fig. 2
figure 2

Local crack tip coordinate system. The coordinate \(\xi \) represents orientation of the crack tip

The criterion employed in this work is Irwin’s stress intensity factor (SIF) [27] criterion, which states that for a given crack deformation, i.e., a particular crack opening mode, the elastic fields in the vicinity of the crack field are dominated by a universal function in a polar coordinate system attached to the crack tip, see Fig. 2, in which the only unknown is a single scalar parameter. This parameter determines the ‘intensity’ of the loading in the process zone and is referred to as the SIF K. For pure antiplane shear loading, the displacement field in the vicinity of the crack tip is approximated in terms of K by

$$\begin{aligned} w(r,\varphi ) \approx \dfrac{2K}{\mu }\sqrt{\dfrac{r}{2\pi }}\sin \left( \frac{\varphi }{2}\right) . \end{aligned}$$
(2)

Equation (2) can be used to determine K for a given, i.e., simulated, displacement field. For example, in a problem with a characteristic length scale L the displacement jump across a crack at a small distance \(r\ll {L}\) away from the crack is given by

$$\begin{aligned} \delta = \left| w(r,\pi ) - w (r,-\pi )\right| = \dfrac{4K}{\mu }\sqrt{\dfrac{r}{2\pi }}, \end{aligned}$$
(3)

which can be solved for K as

$$\begin{aligned} K = \delta \dfrac{\mu }{4}\sqrt{\dfrac{2\pi }{r}}, \quad \text {for } r\ll {L}. \end{aligned}$$
(4)

The current stress intensity can subsequently be compared to a material specific critical SIF \(K_\textrm{C}\) at which crack growth occurs in experiments in order to obtain a crack growth criterion given by

$$\begin{aligned} K=K_\textrm{C}, \end{aligned}$$
(5)

i.e., a crack will grow if the SIF reaches the critical value.

3 Lattice Boltzmann method for the wave equation

Fig. 3
figure 3

a Lattice representation \(\mathfrak {B}\) of the elastic solid and b and the associated lattice velocity vectors (lattice links) for a single lattice point, cf. Schlüter et al. (2018) [17]

The LB scheme for wave equations, as proposed by Yan [21], was already presented in [17] and summarized in [24] as well. Therefore, only a short overview is given here, which aims at readers that are already familiar with the LBM in general.

The body \(\mathcal {B}\) is discretized by a lattice representation \(\mathfrak {B}\) with uniform spacing \(\Delta h\), see Fig. 3. A D2Q5 lattice scheme is used, meaning that five distribution functions \(f^\alpha \) per lattice site are regarded, one for each lattice velocity \({\varvec{c}^{\alpha }}\), \({\alpha \in \left\{ 0,1,2,3,4 \right\} }\), defined as

$$\begin{aligned} \varvec{c}^{0} = \begin{pmatrix} 0 \\ 0 \end{pmatrix}, \quad \varvec{c}^{1} = \begin{pmatrix} c \\ 0 \end{pmatrix}, \quad \varvec{c}^{2} = \begin{pmatrix} 0 \\ c \end{pmatrix}, \quad \varvec{c}^{3} = \begin{pmatrix} -c \\ 0 \end{pmatrix}, \quad \varvec{c}^{4} = \begin{pmatrix} 0 \\ -c \end{pmatrix}, \end{aligned}$$
(6)

where \(c = \nicefrac {\Delta h}{\Delta t}\) with a time step \(\Delta t\) and c is closely related to the shear wave speed \(c_s\).

The lattice Boltzmann equation with the BGKW-collision operator [28, 29] is given by

$$\begin{aligned} f^{\alpha } \left( \varvec{x} + \varvec{c}^{\alpha } \Delta {t}, t + \Delta {t} \right) = f^{\alpha } (\varvec{x},t)- \frac{\Delta t}{\tau } \Big [ f^{\alpha } (\varvec{x},t)- f^{\alpha }_{\text {eq}} (\varvec{x},t)\Big ]. \end{aligned}$$
(7)

For the wave equation, the distribution functions are connected to the particle velocity

$$\begin{aligned} \frac{\partial w (\varvec{x},t)}{\partial t} = \dot{w} (\varvec{x},t)= \sum _\alpha f^{\alpha } (\varvec{x},t) \end{aligned}$$
(8)

and the equilibrium distributions for the wave equation are defined as

$$\begin{aligned} \begin{aligned} f_\text {eq}^0&= \frac{\partial w}{\partial t} - \frac{2 \lambda w}{c^2}, \\ f_\text {eq}^{\kappa }&= \frac{\lambda w}{c^2} \quad \text {for } \kappa \in \{ 1,2,3,4 \}, \end{aligned} \end{aligned}$$
(9)

where

$$\begin{aligned} \lambda = \frac{1}{\Delta t \, (\tau - \nicefrac {1}{2})} \quad \text {and} \quad \tau = \Delta t. \end{aligned}$$

Finally, the displacement w is computed from the particle velocity \(\dot{w}\) by an Euler integration scheme via

$$\begin{aligned} w (\varvec{x},t)= w (\varvec{x}, t - \Delta t) + \Delta t \; \dot{w} (\varvec{x},t). \end{aligned}$$
(10)

3.1 Non-Lattice conforming boundary conditions

Fig. 4
figure 4

A section of the considered body where non-lattice conforming boundary conditions are applied at boundary lattice point \(\varvec{x}_\textrm{B}\)

Boundary conditions, which are able to accommodate arbitrary boundary geometries, are important for the accurate representation of a crack within the body \(\mathcal {B}\). For the LBM used in this work, two strategies have been proposed in [24]. A summary of the macroscopic strategy is given here, since boundary handling is relevant to the algorithm proposed in Sect. 4.1.

The LB equation (7) is able to determine the evolution of the distribution functions, and thus, also the evolution of the macroscopic displacement, in the interior of the domain. However, lattice points at the boundary miss one or more lattice links, i.e., neighbor lattice points. These lattice points are denoted as boundary lattice points \(\varvec{x}_\textrm{B}\). For boundary lattice points, not all distribution functions can be obtained from collision and streaming, i.e., by the lattice Boltzmann equation (7). Instead, the missing distribution functions have to be determined by the boundary conditions.

In this work, we employ a macroscopic algorithm that is capable of handling non-lattice conforming boundary conditions. The algorithm approximates the displacement field w in the vicinity of a particular boundary lattice point by means of a quadratic polynomial that is determined by the value of the boundary condition as well as the displacement field at two interior points \(\varvec{x}_\textrm{I}\) and \(\varvec{x}_\textrm{II}\), see Fig. 4. The value of the displacement field at the interior points is determined by bilinear interpolation inside the cells \(C_\textrm{I}\) and \(C_\textrm{II}\). Evaluating the resulting polynomial at \(\varvec{x}_\textrm{B}\) yields a linear equation in terms of the unknown displacements at boundary lattice points for each \(\varvec{x}_\textrm{B}\). These equations are assembled in a linear system of equations of the form

$$\begin{aligned} \varvec{S}(t+\Delta {t})\varvec{w}_\textrm{B}(t+\Delta {t}) = \varvec{R}(t+\Delta {t}), \end{aligned}$$
(11)

where \(\varvec{S}\) only contains information depending on discretization and geometry, and \(\varvec{R}\) also involves the current value of the boundary conditions. Note that \(\varvec{S}\) is time dependent if geometry and lattice change over time as is the case during crack propagation.

The system of equation is subsequently solved for the unknown displacements at the boundary lattice points \(\varvec{w}_\textrm{B}\), which is then used to determine the value of the missing distribution functions according to

$$\begin{aligned} \begin{aligned}&f^{\alpha }(\varvec{x}_\textrm{B},t+\Delta {t}) = \dfrac{1}{n_\text {miss}}\left[ \dfrac{w(\varvec{x}_\textrm{B}, t+\Delta {t}) - w(\varvec{x}_\textrm{B}, t)}{\Delta {t}}-\sum _{\beta \in \mathcal{F}_{\varvec{x}_\textrm{B}}}f^{\beta }(\varvec{x}_{B},t+\Delta {t})\right] , \\&\forall \alpha \notin \mathcal{F}_{\varvec{x}_\textrm{B}} , \end{aligned} \end{aligned}$$
(12)

where \(\mathcal{F}_{\varvec{x}_\textrm{B}}\) is the set of distribution functions that can be determined by the LB equation (7) and \(n_{\text {miss}}\) is the number of missing distribution functions at \(\varvec{x}_\textrm{B}\) that cannot.

The part of the algorithm that deals with the implementation of the boundary conditions determines the macroscopic field \(w(\varvec{x}_\textrm{B},t+\Delta {t})\) at each boundary lattice point such that it is consistent with the boundary conditions on the macroscopic scale. This is why, we refer to the algorithm as a ‘macroscopic’ algorithm for the treatment of the boundary conditions.

4 Implementation

This section describes the algorithm and considerations for the implementation in general terms. Further details can be found in Sect. 5, where numerical models and results are discussed.

4.1 Concepts and algorithm of crack propagation

Fig. 5
figure 5

Handling of a dynamic crack (dark red) with processing of boundary points (filled circles). (Color figure online)

The propagation of dynamic cracks is handled mostly in a rather simple geometric manner. An initial crack is needed. It is modeled as a line and independent of the lattice. This also defines the initial crack tip, viewed as a point, and the boundary conditions. Additionally, the direction \(\hat{c}\) of crack growth is needed. This restricts problems to straight cracks, but in turn the lattice can be easily aligned to single cracks. Our implementation allows two types of simulations. First, it is possible to prescribe crack growth at a constant rate \(\dot{a} = \nicefrac {\Delta a}{\Delta t}\). The second option is to let crack growth be determined by the K-criterion, based on the SIF. For this case, the critical value \(K_\textrm{C}\) at which a crack will grow must be specified.

A time stepFootnote 1 of the LBM ends with the time integration (10), thus the displacement field is fully updated at every point of the lattice \(\mathfrak {B}\). The handling of crack propagation is then appended to the end as an additional step. This step itself is subdivided, as described in Algorithm 1. First, the criterion is evaluated. This is trivial for steady growth. For the K-criterion, the SIF is computed according to Eq. (4) and compared to the critical value \(K_\textrm{C}\), see also Sect. 2.2. This procedure is repeated for multiple crack tips, if needed.

figure a

If the crack grows, the crack tip is moved along the direction \(\hat{c}\). Subsequently, a new segment is created, see Fig. 5a, between the previous and the new crack tip position, with length

$$\begin{aligned} \Delta a = \dot{a} \, \Delta t \end{aligned}$$
(13)

where \(v = \nicefrac {\dot{a}}{c_s}\) is the relative speed. Since this new segment acts as a boundary within the computational domain, the adjoining lattice points need to be processed accordingly. Generally, these points must be found first. For each point, every associated lattice link is examined, see Fig. 5b. These links can be treated as lines connecting the point and its respective neighbor and are checked for an intersection with the crack segment. Any intersected link is subsequently severed, and no information is exchanged along it in further time steps. Both associated points need to be processed for the boundary conditions and their implementation, as for the initial crack. For the macroscopic implementation proposed in [18, 30] and used throughout the numerical models in Sect. 5, this entails extending and inverting the boundary coefficient matrix and expanding the vector of interpolation coefficients by the newly found boundary points, see Fig. 5c. This task is computationally expensive and requires more time, the longer the crack grows.

While the growth of the crack and determining severed lattice links is a universally applicable concept, the processing of new boundary points needs to be adapted to different techniques of boundary handling, e.g., when a different LBM for solids is employed.

For this LBM, the lattice wave speed c should surpass the shear wave speed \(c_s\), i.e., \(c = \kappa \, c_s\), where \(\kappa \geqslant 1\). Since \({\dot{a} < c_s}\), it follows that \({\Delta a < \nicefrac {\Delta h}{\kappa } \leqslant \Delta h}\). Thus, only one pair of new boundary points is expected, at most, for straight cracks. Thus, the number of links to be checked can be severely reduced by regarding only the immediate vicinity of the crack tip. A queue is generated from the neighbors of the last pair of boundary points that have been found. For every point in the queue, the associated links need to be checked. Once a severed link is found, the neighbors of the linked points are added to the queue. The number of checks to be performed can reduced further by marking points that have been completely visited, i.e., all associated links have been checked.

This type of processing also works for different kinds of LB methods, e.g., on D2Q9 lattices, and for cases in which the direction of crack propagation is not prescribed.

Fig. 6
figure 6

Functions introduced to define continuous parameters for the K-criterion

4.2 Further details for the K-criterion

4.2.1 Evaluation of stress intensity factors

The evaluation of the SIF is carried out according to Eq. 4. The crack opening displacement \(\delta \) is computed as the difference between w at two lattice points adjacent to, but not on the crack itself, see Fig. 7. For stationary cracks, such as in [17, 18], this is straight forward, with a clearly defined distance r from the crack tip. The SIF can be determined in a post-processing step. However, with a growing crack r varies between time steps and for the K-criterion especially. In addition, the SIF has to be evaluated in every time step. The lattice points for evaluation are chosen, such that their distance r to the crack tip lies within an interval \([r_\text {min}, r_\text {min} + \Delta h]\). As reported in [17, 18], the results for the SIF are closer to analytical values when the evaluation occurs at a distance from the crack tip, which is indicated here by the parameter \(r_\text {min}\). The SIF K is rather sensitive to r, thus for the K-criterion this parameter should be adaptable during runtime. Preliminary numerical results showed a correlation with v, which can be modeled by

$$\begin{aligned} r_\text {min} = \frac{r_0}{1-v}, \quad r_0 \equiv r(v=0). \end{aligned}$$
(14)

This function is shown in Fig. 6a, together with the values of \(r_\text {min}\) used for steady growth in Sect. 5.1. It is chosen purely from empirical considerations.

Fig. 7
figure 7

Points (blue circles) along the crack (red line) at a distance \({r \in [r_\text {min}, r_\text {min} + \Delta h]}\) (gray area) are used for the evaluation of the SIF. (Color figure online)

4.2.2 Regularization of the crack velocity

With the discretization of time, crack propagation is discretized as well, allowing the crack to grow by a finite length \(\Delta a\) within \(\Delta t\). When using the K-criterion to determine the crack propagation, K is evaluated at the end of each time step and might surpass the critical value \(K_\textrm{C}\). This kind of overshooting the critical SIF should be avoided since in real systems, the crack growth would continue to such a state that \(K \leqslant K_\textrm{c}\).

In order to reduce the unphysical overshoot of the SIF, the crack velocity is allowed to increase, up to the maximum crack velocity of \(v_\text {max}\). Here, the crack velocity is assumed to be a continuous function of K,

$$\begin{aligned} v \left( K; K_\textrm{C} \right) \thicksim v_\text {max} \, \tanh \left( \sqrt{\left( \frac{K}{K_\textrm{C}} \right) ^4 - 1} \right) , \quad K > K_\textrm{C}, \end{aligned}$$
(15)

see Fig. 6b.

5 Numerical results

This section shows numerical results to validate the algorithm and its implementation presented in the previous section. The first examples verify the evaluation of K in a dynamical model. Since this has not been done before with a propagating crack, a problem with an analytical solution is used for steady crack growth. The second example delivers proof of concept for the K-criterion. The numerical results are assessed with regard to plausibility.

5.1 Steady crack growth in a semi-infinite strip

5.1.1 Stress intensity factor

Fig. 8
figure 8

a Geometry of Mandal’s original problem [31] and b domain considered for the numerical examination. c Numerical realization of this geometry

We consider a semi-infinite crack that grows at a constant rate \(\dot{a} < c_s\), i.e., \(v < 1\), in a semi-infinite elastic body, as shown in Fig. 8a. We consider the surface \(y=h\) to be subject to a Dirichlet boundary condition

$$\begin{aligned} w(x,h) = w_0 \end{aligned}$$
(16)

and the (moving) crack faces to be traction-free, i.e.,

$$\begin{aligned} \sigma _{yz}(\xi <0,\eta =\pm 0) = 0. \end{aligned}$$
(17)

In [31], it is shown that the steady-state stress intensity factor for the problem described above is

$$\begin{aligned} K=-\mu {w_0} \sqrt{\dfrac{2\beta }{L(2\beta {L}+1)}} \end{aligned}$$
(18)

where

$$\begin{aligned} \beta = \sqrt{1 - v^2}. \end{aligned}$$
(19)

The original problem depicted in Fig. 8a implies that \(w=0\) at the lower crack face. In this work, a slightly different but related problem is simulated, see Fig. 8b. We apply

$$\begin{aligned} w(x,\pm {L})=\pm \tfrac{1}{2}w_0 \end{aligned}$$
(20)

at the top and bottom edges of a strip with width 2L in which a traction-free crack propagates at a steady velocity in x-direction. Although only half the displacement, i.e., \(\frac{1}{2}w_0\), is applied at the top and bottom edge compared to the original analytical solution in which only the top edge is loaded, see Fig. 8a, we expect the total crack opening and the stress intensity factor for the problem Fig. 8b to be the same as in the original analytical solution, since both crack faces are displaced. The infinite strip problem from Fig. 8b is eventually approximated by a finite domain in our simulations, see Fig. 8c.

5.1.2 Validation

Table 1 Numerical and statistical data regarding steady crack growth for different values of v; \(K^\text {theo}\) is the expected value from (18). The mean with standard deviation \(\sigma \) and median with differences to the 25th and 75th percentile (cf. Fig. 9) are gathered from experimental values for K, evaluated at \(\nicefrac {r_\text {min}}{\Delta h}\)
Fig. 9
figure 9

SIFs for different crack velocities v in comparison with the analytical values of Eq. (18). The values represent the median with errorbars indicating the range from the 25th to the 75th percentile

The analytical solution for the SIF by Mandal [31] is based on the assumption of a quasi-stationary problem. This implies certain constraints on the geometry of the domain and the prescribed boundary conditions. As mentioned before, we approximate the infinite strip Fig. 8b by the domain Fig. 8c. The left and right edges, as well as the crack faces, are free boundaries. On the upper and lower edge, the displacement is prescribed by

$$\begin{aligned} w(t) = \tfrac{1}{2} w_0 \cdot {\left\{ \begin{array}{ll} \sin ^2 (\tfrac{\pi }{2} \tfrac{t}{t_0}), &{} \quad t < t_0, \\ 1, &{} \quad t \geqslant t_0. \end{array}\right. } \end{aligned}$$
(21)

Since sudden changes in the load can excite spurious waves, the displacement is gradually increased to its final value of \(\frac{1}{2} w_0\) at the time \(t_0\), where \(t_0\) is chosen in relation to the rate of crack growth. The crack continues to grow in a quasi-stationary period until a time of \(t_f > t_0 + 15 \, \nicefrac {c_s}{L}\).

The initial crack is rather short compared to \(r_\text {min}\), with a length of 0.5L. But it grows during the start up period and can be considered to be semi-infinite between \(t_0\) and \(t_f\). The position b of the right edge is chosen, such that it does not influence the fields around the crack tip at \(t_f\), i.e., \(b(v) > v c_s \, t_f + 2 L\). Thus, both the start up time \(t_0\) and the total length of the strip have to increase with the relative speed v in order to yield comparable results to the infinite strip. This numerical experiment has been conducted for different crack speeds, i.e., \({v = 0.2, 0.4, 0.6}\) and 0.8, with a lattice spacing of \({\Delta h = \nicefrac {L}{16}}\).

As described in Sect. 4.2, \(r_\text {min}\) is adjusted for each value of v. But the actual value of r differs between time steps within a certain interval, cf. Fig. 7, because the crack tip position changes relative to the lattice points that are used to evaluate K. Due to the sensitivity of K regarding r, this causes K to fluctuate around the expected steady value. Thus, a statistical evaluation is undertaken with a total of 300 data points, that are sampled for \(t \in [t_f - 15 \, \nicefrac {c_s}{L}, t_f]\). From this data, the arithmetic mean value with the standard deviation and the median value with the 25th- and 75th-percentile are gathered. This evaluation is compiled in Table 1, and the median is also depicted in Fig. 9. The results are close to the analytical curve, each within the margin of error indicated by the percentiles. This margin gets smaller for higher v. The values of K lie above the analytical values, with the exception of \(v=0.8\), where it is easier to adjust \(r_\text {min}\).

5.2 Validation of the K-criterion

The domain for this example is a rectangle of size 3L by 8L with an initial crack of length 1L along the x-axis, within \(x=\pm 0.5L\). The crack is located at 1L from the upper and 2L from the lower edge, as depicted in Fig. 10. The lattice spacing is given by \(\Delta h = 2^{-6} \, L\), resulting in a total of 98, 304 lattice points.

Fig. 10
figure 10

Domain for the validation of the K-criterion

Both crack tips can propagate horizontally along the x-axis. For this example, \({K_\textrm{C} = 0.0055 \, \mu \sqrt{L}}\) is chosen, with \({r_0 =0.03L \approx 2 \, \Delta h}\) for \(r_\text {min}\) in Eq. (14) and \({v_\text {max} = 0.85}\) as the maximum velocity. For all boundaries, the macroscopic implementation of non-lattice conforming boundary conditions, as described in [24], is used. The lower edge is subjected to homogeneous Dirichlet boundary conditions \(w^* = 0\). Both lateral edges and the crack faces are traction-free with \(t^*_z = 0\), while the upper edge has a time-dependent Dirichlet boundary condition prescribed by

$$\begin{aligned} w(t) = 0.01 L \, {\left\{ \begin{array}{ll} \sin (\tfrac{\pi }{8} t), &{} \quad t < 8 \, \tfrac{L}{c_s}, \\ 0, &{} \quad t \geqslant 8 \, \tfrac{L}{c_s}, \end{array}\right. } \end{aligned}$$
(22)

which is a half-period of a sine-function. This excites an elastic wave, which then propagates through the domain and is reflected at the outer edges and the crack.

Fig. 11
figure 11

Stress intensity factors, velocity of crack propagation and total additional length for the example of crack growth with the K-criterion, with a maximum allowed velocity \(v_\text {max} = 0.85\). Due to symmetry, only data for the crack tip propagating in positive x-direction are shown

Upon reaching the crack, the incident waves cause the SIF to rise, as can be seen in Fig. 11. When \(K_\textrm{C}\) is surpassed at a crack tip, the increment \(\Delta a = v \, \Delta t\) is computed by means of the function \(v(K; K_\textrm{C})\) as defined in Eq. (15). Figure 11 shows the SIF before the crack grows; thus, K can be still be higher than \(K_\textrm{C}\), in spite of the modification (15). In the next iteration, K should be close to \(K_\textrm{C}\). However, since the configuration changes dynamically, K can potentially surpass the critical value again.

The initial wave leads to an increase in K, such that both crack tips initiate crack growth. The subsequent reflected wave also leads to a propagation of the crack tips. This time, K exceeds \(K_\textrm{C}\) slightly more, due to the changed geometry of the domain, and this results in a higher velocity. During a period of crack growth, K stays at a value close to \(K_\textrm{C}\). After the wave has passed, crack growth halts since K decreases again.

5.3 Remarks on efficiency

To get an impression of the impact, the additional crack propagation step has on the efficiency of the LBM and the added computational cost has been examinedFootnote 2. For this, the steady growth example with \(v=0.4\) has been repeated. \(2\,000\) time steps were computed with a total of \(10\,496\) lattice points. The CPU time spent solely on the crack propagation, but also on the computation in total, was measured. By design of the example, crack growth occurs in every time step, but only accounts for about \(2.8 \%\) of the CPU time.

The example with the criterion was assessed in a similar manner. It ran for a total of \(5\,050\) time steps. Here, \(0.7 \%\) percent of the CPU time was spent on crack propagation, since the crack only grows in a limited number of time steps, thus effectively skipping the algorithm.

6 Discussion and conclusion

This work introduced a method to simulate dynamic crack propagation using an LBM for solids. In contrast to the more established alternatives, such as finite element methods, it is based on the rather efficient concept of processing very few lattice points in each time step. This keeps the regular lattice unchanged, without the need to re-mesh the domain. While no intensive study on the efficiency has been undertaken so far, it can be projected that the overall efficiency of the LBM is maintained. Only a small number of lattice points is processed for the identification of new boundary points. This processing step is only needed if the crack propagates. Furthermore, boundary conditions are not initialized in each time step that crack growth occurs. Thus, little computational effort is added to the LBM due to this crack propagation step. This is corroborated by the comparison of CPU times for the examples in Sect. 5.3. Additionally, the matrix inversion necessary for the boundary conditions is a computationally expensive operation, which accounts for some of the needed CPU time. With different boundary conditions, the additional cost could be reduced.

Two cases have been implemented and validated in numerical experiments. In the first one, steady growth of a mode III crack has been compared to analytical results. This shows a good accuracy for the evaluation of the SIF in a dynamical model, as described in Sect. 4.2. In the other case, crack propagation with a criterion based on the SIF has been simulated. This example shows the expected results and delivers evidence that the algorithm is conceptually capable of describing crack growth based on a fracture criterion. Difficulties stem from the evaluation of K. It is very sensitive to changes in the fields surrounding the crack tip. However, the algorithm introduced here is not tied to the evaluation of K. In fact, not only the method to obtain K, but the criterion, as well as the entire LB scheme, could be exchanged and the underlying geometric considerations would still hold.

Moreover, to clarify the generalization beyond the reduced problem of antiplane shear deformation, it can be noted that the algorithm is modular by design. Effectively, it only depends on the geometric aspects of the lattice. Since crack propagation is appended as a post-processing step, the LB scheme can be swapped out, as long as it supplies the data necessary for the evaluation of the criterion. Furthermore, the criterion can be exchanged, e.g., to one regarding a mixed mode propagation based on \(K_\textrm{I}\) and \(K_\textrm{II}\) in plane strain.

As topics of future research, this generalization should be undertaken. More studies on the physicality of the results and comparisons to the established numerical methods, especially regarding the computational efficiency, would be of great interest as well.