With a purpose to evolve the surfaces of complex geometries in their normal direction at arbitrarily defined velocities, we have developed a robust level-set approach which runs on three-dimensional unstructured meshes. The approach is built on the basis of an innovative spatial discretization and corresponding gradient-estimating approach. The numerical consistency of the estimating method is mathematically proven. A correction technology is utilized to improve accuracy near sharp geometric features. Validation tests show that the proposed approach is able to accurately handle geometries containing sharp features, computation regions having irregular shapes, discontinuous speed fields, and topological changes. Results of the test problems fit well with the reference results produced by analytical or other numerical methods and converge to reference results as the meshes refine. Compared to level-set method implementations on Cartesian meshes, the proposed approach makes it easier to describe jump boundary conditions and to perform coupling simulations.
We are interested in evolving fronts on complex unstructured meshes in their normal direction using the level-set approach [
The level-set method is usually applied on uniform Cartesian structured meshes. Advantages of Cartesian meshes include that they are easy to generate and that numerical technologies to solve Hamilton-Jacobi equations on Cartesian meshes are mature. When applied to image segmentation, the Cartesian mesh is naturally composed of the pixels.
However, when solid materials are involved in the simulation, there are cases in which non-Cartesian meshes outperform Cartesian ones, such as the following: (a) Describing complex boundary conditions. Jump conditions across the solid boundaries and different surface patches can be critical [
It is clear from the above discussion that tetrahedral and hexahedral meshes outperform Cartesian ones in evolving fronts with complex boundary conditions or in coupling simulations. Using the level-set method to evolve fronts essentially requires solving the Hamilton-Jacobi equation formed like
Efforts to extend the level-set method to 3D tetrahedral meshes include [
This article addresses development of a robust level-set approach to evolve geometries having sharp features on tetrahedral meshes, but the proposed approach can also be easily extended to hexahedral meshes because each hexahedral cell can be decomposed into five or six tetrahedrons without introducing new vertices [
Compared to previous works, our level-set approach has the following advantages: (a) It is robust on body-fitted tetrahedral meshes of complex geometries, including those composed of multiple materials; (b) Sharp features are preserved during evolving; (c) No ghost cell or similar tricks are required, meaning that the level-set evolving and coupled physical simulations could be run on the same mesh; (d) The
The nomenclature used in this paper is illustrated by Figure
Tetrahedral cell nomenclature demonstration.
The signed distance field function of the evolving front is defined on each of the vertices and referred to as
The level-set equation Eq.(
Usually,
Equations (
The Godunov’s spatial discretization scheme is widely used in numerical calculation studies to handle discontinuity. It has different implementations in different situations. The dimension-by-dimension form, which is widely used in level set studies, can be summarized by the following Eq.(
While being widely used in previous studies, the above scheme triggers two problems when applied to our study: (a) With non-Cartesian meshes, Eq.(
Problem (a) can be settled by a newly developed edge-based estimation method, which will be presented later (Section In the vicinity of sharp geometry, the scheme shall not introduce the At peaks or valleys of the field, the result shall tend to that of Eq.( In regions where In other regions where the situations on the axes are different (e.g. the field is smooth along one axis while there are peaks or valleys along other axes), the scheme shall perform the estimation within reasonable domains of dependence.
The newly developed scheme is presented below. We will prove that the presented scheme fits the above criteria later.
The proposed scheme defines the direction
Main axes and domains of dependence of several target vertices.
For (
For (
In cases concerning (
In cases concerning (
A sample case concerning (
On the other hand, the proposed scheme processes the two vertices in different manners. For
To sum up, the proposed scheme treats the vertex as a valley when “valley” is the dominant property, and otherwise chooses either side of the bisector as the information source to evolve the target vertex. Considering that the target vertex lies extremely close to the angle bisector, it may be influenced by the information propagated from either side. In some ways, choosing one side can be viewed as shifting the vertex towards the chosen side by a tiny distance, and thus ensuring the chosen side to be the theoretically correct one. Although the behavior introduces error for potentially incorrect choices, when the scheme is used for solving Eq.(
A problem which remains unsolved is about establishing the main axis. Theoretically,
For vertices adjacent to the
Here, we briefly illustrate the problem of the cell-based approach before introducing our approach. The core of the cell-based estimating approach can be summarized by Eq. (
Such a cell-based approach, though used in a large portion of previous research, shows two major disadvantages when applied to feature-rich geometries: (a) The orientations of cells with respect to the target vertex cannot be well defined, making it difficult to apply the above-presented spatial discretization. The problem is illustrated in Figure
Domain of dependence of the edge- and cell-based approaches. The gray region in the figure shows the ideal domain of dependence with which to estimate
In this article, we have developed the edge-based gradient estimation approach to solve problem (a), and the “explicit correction” technology to settle problem (b). The two methods is described in the following Sections.
Assuming that
Edge-based
2D
3D
Since outgoing vectors are smaller primitives than cells, and all outgoing vectors pass the target vertex, the edge-based approach allows finer control over the domain of dependence compared to the cell-based approach. In Figure
Let
In order to solve (
Numerical consistency is a required property for discrete Hamiltonians [
As discussed above, we solve (
While the edge-based method settles the problem of estimating
The root reason of the problem is that decreasing the cell size near sharp features does not improve the uniformity of the gradient within single cells. Since only the cells near sharp features (or more broadly, near the zero level set) are affected, a reasonable solution is integrating another estimating approach that does not rely on the uniform gradient assumption for these cells. One useful property of signed distance fields is that the zero level set is perpendicular to the local gradient. In discontinuous regions such as the outer sector of the corner in Figure
The problem is now reduced to locating the nearest point
1: Cell set 2: Vertex set 3: 4: 5: 6: 7: Find the line segment (2D) or facet (3D) 8: Record the minimum distance 9: 10: 11: Add neighboring vertices of 12: Repeat step 6 - 11 until step 10 returns 13: 14:
Compared to its original form, in Procedure
The three core modules of our evolving approach, namely the spatial discretization, the edge-based method, and the explicit correction approach, were discussed above. Combining them, we have a robust approach to solve Eq.(
Overall flow.
The time integration we have used to solve Eq.(
The following problems are tested to validate the accuracy and robustness of the proposed level-set method: (2D) Diffusion into a notched square. This example demonstrates the ability to evolve fronts at non-uniform evolving velocity on irregular regions. (2D) Three merging circles. This example demonstrates the ability to handle topological changes. (2D) Rate stick [ (3D) Burning and erosion in a solid rocket motor. This example demonstrates the ability to evolve fronts at non-uniform evolving velocity on 3D irregular regions. (3D) Reconstructing a signed distance function [
For the merging-circles example, the reinitializing operation is not integrated since the evolving speed distributes uniformly. Other details of each test problem will be discussed in the corresponding subsections. We have already published the simulation code of all 2D validating problems [
The error metric we have used to measure the accuracy is the averaged and maximum errors of
This problem describes the diffusion starting at the upper edge of a U-notched square. Figure
Computational mesh of the notched square.
In order to demonstrate the improvement introduced by explicit correction, in Figure
Result of notched square example.
Evolving result
Evolving error
This example includes three circles, the centers of which are located at
The result of this example is plotted in Figure
Result of merging-circles example.
Evolving result
Evolving error
In the rate-stick problem, a front that starts from a single point and propagates through a slender and long tube is the object of study. The case is similar to the high-explosives (HE) rate-stick experiment described in [
Rate-stick problem.
Computational mesh
Evolving result
Evolving error
The slender computational region means that the boundaries must be handled smoothly to evade distortion. The zero-radius initial region requires the proposed method to handle the case where the scale of the initial feature is smaller than
This problem contains real engineering components: the solid-rocket-motor grain and the corresponding thermal insulation layer. During the working procedure of the motor, the grain, which is made of solid propellant, burns and transforms into high-temperature gas. As the grain retreats, the thermal insulation layer is exposed to the gas and is slowly eroded. To summarize, the gas propagates into the grain and the insulation at different velocities. Figure
Working procedure of a solid rocket motor.
The computational mesh for this problem is shown in Figure
Computational mesh of a solid rocket motor.
Since the structure of the motor is so complex that an analytical solution is unavailable, we used the level-set method implementation described in [
Result of solid-rocket-motor example.
Evolving result
Evolving error
This test is aimed at constructing an exact signed distance field from a distorted one. In this article, the source geometry of the sign distance fields is a cube. The initial distorted field is generated via Eq. (
Contours of initial
The result after 80 reinitializing passes is shown in Figure
Result of reconstructing the signed distance field.
Here, we demonstrate the convergence of error as the mesh refines. The overall error across the evolving procedure is defined as Eq. (
The error-convergence data is shown in Figure
Error convergence data.
Cell-based
In order to quantify the convergence, we have performed Richardson’s analysis [
Error-converging orders.
Test example | Converging order |
---|---|
Notched square | 0.8357 |
Three merging circles | 0.9528 |
Rate stick | 0.9121 |
Reconstructing signed distance fields | 0.7586 |
In this article, we developed a robust approach to evolve fronts in their normal direction on unstructured meshes. The approach is built on an innovative spatial discretization scheme and a gradient-estimating technology matching the scheme. An explicit correction approach is introduced to improve the accuracy near the zero level set. Results of the validating examples show that the proposed method handles sharp geometric features, discontinuous velocity field, and topological changes smoothly and accurately, on both 2D and 3D unstructured meshes. The method theoretically also applies to structured or hybrid meshes, not only due to that hexahedral cells can be decomposed into tetrahedrons, but also because the proposed gradient-estimating technology only relies on the outgoing vectors, which are available in all kinds of meshes.
In practice, there are also cases where advecting fronts using externally generated velocity fields is required. We have also studied the advecting problem during this research. Unfortunately, it turned out that solving some of the advecting problems with acceptable accuracy requires higher-order spatial discretization schemes, which is beyond the scope of this article. In future research, we would study possible routes to integrate the proposed method with higher-order schemes and further expand the range of application of the method.
Taking the 2D cell
Letting
Taking equilateral triangles as an example, the magnitude of the resulting
The source code and validation data used to support the findings of this study have been deposited in the GitHub repository
The authors declare that they have no conflicts of interest.