Abstract
This work demonstrates the 3D capability of the thick level set (TLS) method, first introduced by Moës et al. (Int J Numer Methods Eng 86:358–380, 2011. doi:10.1002/nme.3069) and later in Stolz and Moës (Int J Fract 174(1):49–60, 2012. doi:10.1007/s10704-012-9693-3). The thick level set approach is a non-local damage method embedding fracture mechanics discontinuity. Enhanced numerical implementation for elastic quasi-brittle materials in 2D under quasi-static loading conditions was presented in Bernard et al. (Comput Methods Appl Mech Eng 233–236:11–27, 2012. doi:10.1016/j.cma.2012.02.020). The present work focuses on using this enhanced numerical implementation in a 3D context. This work adds a new way to construct the crack faces by use of a “double cut algorithm”. The regularization computation, part of the non-local feature of the model, is also reviewed to improve its accuracy. As 3D models are computationally intensive, CPU aspects are discussed. Five test cases are presented. The first one illustrates the capability of the method to deal with crack coalescence, which is quite unique for this kind of simulation. Three other cases point out a comparison with literature examples (numerical and experimental) and good agreement is observed. One is a more complex example, which deals with an engineering oriented application. This work confirms good performance of the thick level set method in 3D context. The use of the new “double cut” algorithm is giving well discretized crack path and allows for discontinuous displacement.
Similar content being viewed by others
Notes
The iso-\(l_{{\mathrm {c}}}\) is determined by a \(-l_{{\mathrm {c}}}\) offset of \(\phi \) iso-zero.
s is dimensionless and vary from 0 (edge node origin location) to 1 (other edge node location).
See Coxeter (1973, p. 118) for a general definition.
Degrees of freedom.
The support of a dof is the set of elements over which the approximation function associated with the dof is non-zero.
4.10 version.
1.8 version.
Not shown here, but roughly located in front of studied tooth, locally parallel to its face.
3.1.1 version.
For these notched beam tests, element size \((l_{{\mathrm {c}}}/20)\) is too small for current in-house code implementation and performance is irrelevant (parts not treated by the method exposed in this paper are too expensive).
References
Bažant ZP, Jirasek M (2002) Nonlocal integral formulations of plasticity and damage: survey of progress. J Eng Mech 128:1119–1149
Bernard P-E, Moës N, Chevaugeon N (2012) Damage growth modeling using the thick level set (tls) approach: Efficient discretization for quasi-static loadings. Comput Methods Appl Mech Eng 233–236:11–27. doi:10.1016/j.cma.2012.02.020 (ISSN 0045-7825)
Bordas S, Rabczuk T, Zi G (2008) Three-dimensional crack initiation, propagation, branching and junction in non-linear materials by an extended meshfree method without asymptotic enrichment. Eng Fract Mech 75(5):943–960. doi:10.1016/j.engfracmech.2007.05.010 (ISSN 00137944)
Bourdin B, Francfort GA, Marigo J-J (2008) The variational approach to fracture, vol 91. doi:10.1007/s10659-007-9107-3
Cazes F, Moës N (2015) Comparison of a phase-field model and of a thick level set model for brittle and quasi-brittle fracture. Int J Numer Methods Eng. doi:10.1002/nme.4886
Chevaugeon N, Salzman A, Moës N (2014) Vector level set contouring algorithm and associated enrichment functions for the extended finite element method. In: 11th World congress on computational mechanics, Barcelona
Coxeter HSM (1973) Regular polytopes, 3rd edn. Dover Publications, New York
Francfort GA, Marigo J-J (1998) Revisiting brittle fracture as an energy minimization problem. J Mech Phys Solids 46:1319–1412
Gomes J, Faugeras O (2003) The vector distance functions. Int J Comput Vis 52:161–187
Hachenberger P, Kettner L (2013) 3D Boolean operations on Nef polyhedra. In: CGAL user and reference manual. CGAL Editorial Board, 4.3 edn. http://doc.cgal.org/4.3/Manual/packages.html#PkgNef3Summary
Hert S, Schirra S (2013) 3D convex hulls. In: CGAL user and reference manual. CGAL Editorial Board, 4.3 edn. http://doc.cgal.org/4.3/Manual/packages.html#PkgConvexHull3Summary
Hoover CG, Bažant ZP (2014) Cohesive crack, size effect, crack band and work-of-fracture models compared to comprehensive concrete fracture tests. Int J Fract 187(1):133–143. doi:10.1007/s10704-013-9926-0
Hoover CG, Bažant ZP, Vorel J, Wendner R, Hubler MH (2013) Comprehensive concrete fracture tests: description and results. Eng Fract Mech 114:92–103. doi:10.1016/j.engfracmech.2013.08.007
Karma A, Kessler D, Levine H (2001) Phase-field model of mode III dynamic fracture. Phys Rev Lett 87(4):045501. doi:10.1103/PhysRevLett.87.045501
Lorentz E, Godard V (2011) Gradient damage models: toward full-scale computations. Comput Methods Appl Mech Eng 200(21–22):1927–1944. doi:10.1016/j.cma.2010.06.025
Miehe C, Welschinger F, Hofacker M (2010) Thermodynamically consistent phase-field models of fracture: variational principles and multi-field FE implementations. Int J Numer Methods Eng. doi:10.1002/nm.2861
Moës N, Stolz C, Bernard P, Chevaugeon N (2011) A level set based model for damage growth: the Thick level set approach. Int J Numer Methods Eng 86:358–380. doi:10.1002/nme.3069
Moës N, Stolz C, Chevaugeon N (2014) Coupling local and non-local damage evolutions with the thick level set model. Adv Model Simul Eng Sci 1(1):16. doi:10.1186/s40323-014-0016-2
Moreau K, Moës N, Cazes F (2015) The thick level set approach, towards simulations coupling local and non-local evolutions. In: CFRAC, fourth international conference on computational modeling of fracture and failure of materials and structures, Ecole Normale Suprieure de Cachan (Paris), France
Parrilla Gómez A, Moës N, Stolz C (2015) Comparison between thick level set (TLS) and cohesive zone models. Adv Model Simul Eng Sci. doi:10.1186/s40323-015-0041-9
Pijaudier-Cabot G, Bažant ZP (1987) Nonlocal damage theory. J Eng Mech ASCE 113:1512–1533
Spatschek R, Brener E, Karma A (2011) Phase field modeling of crack propagation. Philos Mag 91(1):75–95. doi:10.1080/14786431003773015 (ISSN 1478-6435)
Spievak LE, Wawrzynek PA, Ingraffea AR (2000) Simulating fatique crack growth in spiral bevel gears. Technical Report May 2000, NASA/CR, Glenn Research Center
Spievak LE, Wawrzynek PA, Ingraffea AR, Lewicki DG (2001) Simulating fatigue crack growth in spiral bevel gears. Eng Fract Mech 68(1):53–76. doi:10.1016/S0013-7944(00)00089-8 (ISSN 00137944)
Stolz C, Moës N (2012) A new model of damage: a moving thick layer approach. Int J Fract 174(1):49–60. doi:10.1007/s10704-012-9693-3 (ISSN 0376-9429)
Ural A, Heber G, Wawrzynek PA, Ingraffea AR, Lewicki DG, Neto JBC (2005) Three-dimensional, parallel, finite element simulation of fatigue crack growth in a spiral bevel pinion gear. Eng Fract Mech 72:1148–1170. doi:10.1016/j.engfracmech.2004.08.004
Van Der Meer FP, Sluys LJ (2015) The Thick Level Set method: Sliding deformations and damage initiation. Comput Methods Appl Mech Eng 285(285):64–82. doi:10.1016/j.cma.2014.10.020. www.elsevier.com/locate/cma
Acknowledgments
The authors are grateful for the research support of the European Research Council through ERC starting Grants ERC-XTLS N291102. The authors also thank Gilles Marckmann regarding his help to provide CAD of the spiral bevel pinion gear from scratch, and Felipe Bordeu regarding his help with some paraview treatments for the double cut algorithm.
Author information
Authors and Affiliations
Corresponding author
Appendices
Appendix 1: Double cut algorithm details
1.1 Element cutting
Following the scheme given in Sect. 3.4, in 3D using Hert and Schirra (2013) for convex hull computation and Hachenberger and Kettner (2013) for subtractions, one obtains 17 reference element cut patterns for a tetrahedron element as shown in Fig. 31. A cut pattern corresponds to a set of edge cut points and tetrahedron node signs that lead to a unique topological element cut. The 17 patterns do not take into account the specific metric (single cuts are placed at the edge middle and double cuts at one third and two thirds of the edge).
We may group some of the 17 patterns into four different categories:
-
Patterns 1 to 3 correspond to the simple cut that one can obtain with a classical scalar level set.
-
Patterns 3, 5, 6, and 9 have a potentially \(\varGamma _{{\mathrm {c}}}\) warped surface (four points surface) where the choice of diagonal is arbitrary.
-
Patterns 11 to 14 give non-convex negative domain polytope \((\varOmega _{+})\), which have to be subdivided into convex polytopes to correctly generate sub-element tetrahedrons. This is what appears as extra blue edges on some element faces. It describes the sub-cut used to split polytopes into convex ones. See Fig. 30a for illustration of pattern 13 where a negative domain polytope was split into three convex ones.
-
Patterns 15 to 17 are termination patterns. \(\varGamma _{{\mathrm {c}}}\) is only present on tetrahedron boundary and no positive domain is present. For example pattern 17 may terminate positive zone of pattern 6 (bottom face). Those choices are arbitrary.
In Table 3, the number of possible permutations from each pattern is given. Without close node treatment, a total of 111 permutations have to be handled. With close node treatment, some polytopes change and no longer give null sub-elements for integration. See Fig. 30b for an illustration where one of the negative domain parts reduces to a single tetrahedron producing one instead of three tetrahedrons for integration. This is interesting when some specific extra computation is made with those sub-elements (for example, some fluid flow in the crack) and null volume is an issue. For this work we could have used those null sub-elements. But, in creating a tool to handle a double cut algorithm, we chose to be a bit more general from the start, and eliminated null volume sub-elements. This leads to close node treatment handling 8399 permutations. From an implementation point of view, a natural choice is to use a database to hold all those patterns. The cutting procedure reduces then to cut edges and query the database with edge cut pattern as a search key. The database gives then integration cells and topological relations for enrichment identification (number of independent support parts).
1.2 Comparison between single and double cut algorithms
To illustrate how single and double cut algorithms perform, we consider the surface of a hammerhead shark (from Lutz Kettner’s home page at the Max Planck Institute: https://people.mpi-inf.mpg.de/~kettner/proj/obj3d/ discretized with triangles) plunged into unstructured meshes of an increasing number of elements (see Fig. 32). For each mesh a level set and a signed vector distance function are computed from the shark’s surface. Associated cutting algorithms are then used. Fins appear sooner with the double cut algorithm, as expected since this algorithm detects layers even if they are embedded inside an element. Less expected is that even in rather simple zones such as the shark’s body the use of a signed vector distance function gives better accuracy. Two reasons may be pointed out, more accurate cut locations with the SVDF and the possibility of a warped iso-contour inside elements (patterns 3, 5, 6, and 9).
Appendix 2: Active zone envelope creation
In this work the AZ was constructed by using enrichment information around \(\varGamma _{{\mathrm {c}}}\). In Fig. 10 all nodes of elements topologically cut by \(\varGamma _{{\mathrm {c}}}\) have been analyzed. Blue circle nodes correspond to non-enriched nodes and green stars to enriched ones. The idea is to consider that at crack tips, there always exists at least one element made only of non-enriched nodes. This is not possible in the wake of the crack as \(\varGamma _{{\mathrm {c}}}\) is always splitting into two (or more) parts, support of nodes. In Fig. 10 identified elements (in cyan) are both used to compute (elementary center of gravity) centers of circle (sphere in 3D) used to localize AZ. The union of those circles is what we call the AZ envelope. Following the above explanation, a proposed method is given in Algorithm 2. It uses \(R_{AZ}\), a chosen radius, to construct a sphere corresponding to the AZ envelope.
Figure 33 illustrates crack tip tracking by AZ envelope (in orange) at some stages in simulation of the chalk test case.
When searching for damage initiation outside the damaged zone and a small damaged sphere is added, a new AZ must be created to encapsulate this extra zone.
Algorithm 2 provides a good to moderate AZ envelope. It is in default when the \(R_{AZ}\) is too small and \(\varGamma _{\mathrm {0}}\) moves more rapidly than \(\varGamma _{{\mathrm {c}}}\). Another problem, observed in tests, is the presence of a zone of crack where lips are not fully detached or a crack region including a full element, which induces the presence of points in T for unnecessary reasons.
Appendix 3: Modification in stagger algorithm
Use of AZ modifies stagger Algorithm 1 and give new Algorithm 3. The \(\tilde{~}\) represent condensed operator. G is the expansion operator from condensed to full domain.
In Algorithm 3 application of the g operator must be analyzed to check that \(\varGamma _0\) evolution is only observed in the AZ envelope. Otherwise, a new AZ must be constructed. This is because the nonlinear material law of damaged elements in the fixed zone is assumed to be linearized at the creation of the AZ, and the associated condensed tangent matrix is kept constant during all load steps until the next AZ creation.
Appendix 4: Load balancing
With Algorithm 3 four assemblies appear. AZ groups are separated into linear (in \(\varOmega _{-}\)) and nonlinear (in \(\varOmega _{+}\)) element groups. Fixed groups are also separated into linear (in \(\varOmega _{-}\)) and nonlinear (in \(\varOmega _{+}\)) element groups. Those four groups of elements are then partitioned to obtain a good load balancing for assembly computation.
Partitioning zones are treated with ParaMetisFootnote 9 in this work. Figure 34 depicts in a 2D example those four partitioning zones. On the right, the fixed zone is created only when a new AZ is computed and linear and nonlinear assemblies are created independently. On the left, the AZ, here made of two circles around the tips of an oblique crack, is also split for linear and nonlinear independent assembly. During load steps those two partitioning sets are kept unchanged. A mix of them is used, depending on \(\varGamma _0\) location. This is expected to offer a good load balancing during all load steps until the next AZ creation.
A more ad hoc partitioning would be to start from a partitioned \(\varGamma _0\) and by some coloring algorithm expand this initial partitioning to AZ and fixed zone. This would give a priori a more equilibrated partitioning with less frontiers. This would open up the possible strategy of splitting the AZ (which grow in 3D) to do a kind of oriented domain decomposition.
Appendix 5: Computation time performance
In terms of computation time performance, state-of-the-art elapsed time for all test cases is given in Table 4 except for Sect. 6.5 test case.Footnote 10 Elapsed time is a rather blunt measure as it takes into account network bottleneck, un-optimized parts, and operating system loading. But it gives a general idea of time consumption on a modest cluster with the in-house code implemented in C++. Note that the older spherical holes test case was not re-computed with the AZ. The elapsed time given in the table corresponds to a pre-AZ version without condensation.
The AZ was very helpful for the spiral bevel pinion gear test case where the model is large (453,824 nodes) from the start. The gain is especially high for the first load step, thanks to a small AZ envelope. As mentioned in “Appendix 2”, AZ determination is in default in some cases, as in this simulation. Instead of a decreasing envelope size at the end of the computation as the damage front reaches part of the boundary (as in Fig. 33, for example), the AZ increases due to spurious detection. Times given in Table 4 correspond to computations up to load step 246 (see Fig. 25) where the AZ envelope is almost what we expect. To reach load step 385, an extra 4.4 days were used. Again, here the AZ is not ideal during those last load steps, and future work will hopefully reduce the time consumption.
For insight into which part of the computation consumes CPU time in a rather intensive simulation, the spiral bevel pinion gear test case was profiled. Results for the first 246 load steps are given in Tables 5, 6, and 7. The first table presents global dispatching of computation time.
First, regarding the TLS update task detailed in Table 7, it participates for 34.59 % of the total simulation elapsed time, which is not negligible. The main consumers are \(\bar{Y}\) and \(\phi \) update computation. Neither task is well parallelized. As mentioned in the conclusion, fast marching techniques will replace those computations and, in particular, the algebraic system resolution attached to them.
Note that the new double cut algorithm proposed in this paper is not a high computation time consumer. It is embedded in the update domain item, which represents only 7.17 % of the total simulation elapsed time without being parallelized.
Secondly, regarding global dispatching, effort put into reducing mechanical problem resolution with the use of parallelism, AZ techniques, and mixed order are well justified as this task remains the most important consumer. Detailed in Table 6 it is mostly (78.91 %), penalized by algebraic resolution (factorization, condensation, solving, ...). Matrix creation (elementary creation and assembly), despite use of sub-elements for integration (X-FEM technique), are not greedy in terms of time consumption. Parallelism and good load balancing (see “Appendix 4”) keeps consumption low. Remaining sequential computation like dof updates will have to be treated in parallel in the future.
Mixed order extra features have been tested on the L shape test case. With the same mesh, 16 processes in all cases, elapsed time given in Table 8 shows big gain (divided by 3.5) of mixed order compared to full order 2, mainly by having a smaller dense problem to create and solve. From a numerical point of view, results are the same as shown by the force-displacement curve presented in Fig. 35. This mixed order strategy will make more sense when used with coarser mesh.
Finally, AZ performances are illustrated again with the spiral bevel pinion gear test case intensive simulation. In Table 9 elapsed times after 80 load steps are given in different configurations. Upper left results correspond to sequential computations with no AZ or condensation. It is more or less the implementation of Bernard et al. (2012) in terms of mechanical problem resolution. It is somehow the starting point of this work. On one hand, introduction of AZ and condensation (upper right) reduces time consumption by 6.35. This by itself validates interest in this technique. On the other hand, applying parallel computation on hot points (lower left) reduces time consumption by 8.56. Then, applying parallel computation on AZ technique (lower right) decreases time consumption by 3.25. If CPU times for mechanical problem computation is extracted from the global time, it is a ratio of 8.08, which is in fact encountered. This illustrates the good choice of parallel technique with condensed resolution. We can add that memory consumption becomes an issue with condensation if no parallel distribution of the dense system is done. In parallel, use of AZ technique reduces time consumption by 2.41, which is less than in sequential, but still interesting. Compared to the non-AZ sequential version, adding both strategies, as proposed in this work, reduces time consumption by 20.64. This last result somehow relativizes the remark above about non-corrected AZ in the last load step of this simulation.
Appendix 6: Material characteristics and simulation parameters
Material characteristics and parameters of the model used in this article are in Table 10.
For the test case in Sect. 6.5, the critical energy release rate is a function of the damage. This function is constructed by use of an equivalence with a bilinear cohesive zone model has stated in Parrilla Gómez et al. (2015). The four extra details mandatory to describe \(Y_{{\mathrm {c}}}^{0}~h(d)\) are from a description of the bilinear softening law given in terms of stress versus opening displacement (see Fig. 36). Table 11 gives value fitted by Hoover and Bažant (2014) and used in this paper.
Rights and permissions
About this article
Cite this article
Salzman, A., Moës, N. & Chevaugeon, N. On use of the thick level set method in 3D quasi-static crack simulation of quasi-brittle material. Int J Fract 202, 21–49 (2016). https://doi.org/10.1007/s10704-016-0132-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10704-016-0132-8