Skip to main page content
U.S. flag

An official website of the United States government

Dot gov

The .gov means it’s official.
Federal government websites often end in .gov or .mil. Before sharing sensitive information, make sure you’re on a federal government site.

Https

The site is secure.
The https:// ensures that you are connecting to the official website and that any information you provide is encrypted and transmitted securely.

Access keys NCBI Homepage MyNCBI Homepage Main Content Main Navigation
. 2013;35(5):c473-c494.
doi: 10.1137/120881956.

A FAST ITERATIVE METHOD FOR SOLVING THE EIKONAL EQUATION ON TETRAHEDRAL DOMAINS

Affiliations
Free PMC article

A FAST ITERATIVE METHOD FOR SOLVING THE EIKONAL EQUATION ON TETRAHEDRAL DOMAINS

Zhisong Fu et al. SIAM J Sci Comput. 2013.
Free PMC article

Abstract

Generating numerical solutions to the eikonal equation and its many variations has a broad range of applications in both the natural and computational sciences. Efficient solvers on cutting-edge, parallel architectures require new algorithms that may not be theoretically optimal, but that are designed to allow asynchronous solution updates and have limited memory access patterns. This paper presents a parallel algorithm for solving the eikonal equation on fully unstructured tetrahedral meshes. The method is appropriate for the type of fine-grained parallelism found on modern massively-SIMD architectures such as graphics processors and takes into account the particular constraints and capabilities of these computing platforms. This work builds on previous work for solving these equations on triangle meshes; in this paper we adapt and extend previous two-dimensional strategies to accommodate three-dimensional, unstructured, tetrahedralized domains. These new developments include a local update strategy with data compaction for tetrahedral meshes that provides solutions on both serial and parallel architectures, with a generalization to inhomogeneous, anisotropic speed functions. We also propose two new update schemes, specialized to mitigate the natural data increase observed when moving to three dimensions, and the data structures necessary for efficiently mapping data to parallel SIMD processors in a way that maintains computational density. Finally, we present descriptions of the implementations for a single CPU, as well as multicore CPUs with shared memory and SIMD architectures, with comparative results against state-of-the-art eikonal solvers.

Keywords: Hamilton–Jacobi equation; eikonal equation; graphics processing unit; parallel algorithm; shared memory multiple-processor computer system; tetrahedral mesh.

PubMed Disclaimer

Figures

Fig. 1.1
Fig. 1.1
Examples of body-fitting meshes used for numerical simulation. On the left, we present the surface of a heart model mesh used for bioelectric computation. On the right, we present a cross section of a lens model used for the simulation of geometric optics (the green region denotes air while red denotes the location of the lens).
Fig. 2.1
Fig. 2.1
Diagram denoting components of the local solver. We compute the value of the approximation at the vertex v4 from the values at vertices v1, v2 and v3. The vector n denotes the wave propagation direction that intersects with the triangle Δ1,2,3 at v5.
Fig. 2.2
Fig. 2.2
Diagram denoting the strategy used to deal with obtuse tetrahedra. We split the obtuse angle ω4 to create three virtual tetrahedra used within the local solver.
Fig. 3.1
Fig. 3.1
2D representation of the outer surface of vertex v formed by the one-ring tetrahedra: the polygon formed by the bold line segments is analogous to the outer triangular surface in a tetrahedral mesh.
Fig. 3.2
Fig. 3.2
One-ring-strip data structure: in this figure, Ti is a tetrahedron, xi, yi and zi represent the coordinates of the ith vertex, fi is the inverse of speed on a vertex. Φi denotes the value of the solution at the ith vertex. Ii in STRIP represents the data structure for the one-ring strip of the ith vertex each of which has q indices pointing (shown as arrows) to the value array.
Fig. 4.1
Fig. 4.1
Blobs mesh and its cross section. The different colors in the cross section represent different materials indices of refraction (speed functions).
Fig. 4.2
Fig. 4.2
Color maps and level curves of the solutions on the cube and heart meshes. Left: the ellipse speed function (Speed 2). Right: the isotropic constant function (Speed 1).
Fig. 4.3
Fig. 4.3
Color maps and level curves of the solutions on the lens model with boundary as given by the figure on the left.
Fig. 4.4
Fig. 4.4
Color maps and level curves of the solutions on the blobs model with boundary as given by the figure on the left.

Similar articles

Cited by

References

    1. Adalsteinsson D, Sethian JA. A fast level set method for propagating interfaces. J. Comput. Phys. 1995;118:269–277.
    1. Adalsteinsson D, Sethian JA. Transport and diffusion of material quantities on propagating interfaces via level set. J. Comput. Phys. 2003;185:271–288.
    1. Barth TJ, Sethian JA. Numerical schemes for the Hamilton–Jacobi and level set equations on triangulated domains. J. Comput. Phys. 1998;145:1–40.
    1. Cecil TC, Osher SJ, Qian J. Simplex free adaptive tree fast sweeping and evolution methods for solving level set equations in arbitrary dimension. J. Comput. Phys. 2006;213:458–473.
    1. Cockburn B, Qian J, Reitich F, Wang J. An accurate spectral/discontinuous finite-element formulation of a phase-space-based level set approach to geometrical optics. J. Comput. Phys. 2005;208:175–195.

LinkOut - more resources