This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

A Simple Embedding Method for Scalar Hyperbolic Conservation Laws on Implicit Surfaces

Chun Kit Hung Department of Mathematics, the Hong Kong University of Science and Technology, Clear Water Bay, Hong Kong. Email: [email protected]    Shingyu Leung Department of Mathematics, the Hong Kong University of Science and Technology, Clear Water Bay, Hong Kong. Email: [email protected]
Abstract

We have developed a new embedding method for solving scalar hyperbolic conservation laws on surfaces. The approach represents the interface implicitly by a signed distance function following the typical level set method and some embedding methods. Instead of solving the equation explicitly on the surface, we introduce a modified partial differential equation in a small neighborhood of the interface. This embedding equation is developed based on a push-forward operator that can extend any tangential flux vectors from the surface to a neighboring level surface. This operator is easy to compute and involves only the level set function and the corresponding Hessian. The resulting solution is constant in the normal direction of the interface. To demonstrate the accuracy and effectiveness of our method, we provide some two- and three-dimensional examples.

1 Introduction

Let Γ\Gamma be a smooth, oriented, co-dimension 11 (compact, Riemannian) manifold without boundary in d\mathbb{R}^{d} with d=2d=2 or 3. This paper considers solving a scalar conservation law posed on Γ\Gamma given by

ut+ΓF(𝐱,u)=0,u(𝐱,0)=u0(𝐱),\displaystyle\begin{split}&u_{t}+\nabla_{\Gamma}\cdot\vec{F}(\mathbf{x},u)=0,\\ &u(\mathbf{x},0)=u_{0}(\mathbf{x}),\end{split} (1)

where the initial condition u0u_{0} is bounded, and 𝐅(,u)\mathbf{F}(\cdot,u) is a smooth surface flux function that satisfies the geometry-compatible condition:

Γ𝐅(𝐱,u¯)=0,𝐱Γ,u¯.\nabla_{\Gamma}\cdot\mathbf{F}(\mathbf{x},\bar{u})=0,\quad\mathbf{x}\in\Gamma,\bar{u}\in\mathbb{R}.

As discussed in [3], with the geometry-compatible condition and the boundedness of u0u_{0}, the surface conservation law (1) has a unique (entropy) solution and is thus well-posed. This partial differential equation (PDE) on surfaces arises in many fields with real-life applications [14, 3, 2]. Therefore, it is essential to develop efficient numerical algorithms for the problem. We can categorize these methods into mainly two classes.

One approach for solving these equations is based on surface parametrization. We can rewrite the surface PDEs using the corresponding coordinate system and obtain an explicit representation of the differential operator. Numerically, we apply the same techniques next for PDEs defined in the Euclidean space d\mathbb{R}^{d}. Although the problem could be reduced to a well-studied one, constructing such a parametrization is complex and impractical for complicated surfaces. One could also triangulate the surface and then locally approximate the differential operator on the resulting triangles. This approach has been widely used for various classes of PDEs [8, 9, 10, 20].

Instead of having an explicit representation of the surface, i.e., a specific discretization of the surface, another popular approach is to solve the PDEs on implicit surfaces. These embedding methods represent the surface Γn\Gamma\subset\mathbb{R}^{n} implicitly using a signed-distance level set function ϕ:n\phi:\mathbb{R}^{n}\to\mathbb{R} [5, 23, 1]. That is, Γ=ϕ1(0)\Gamma=\phi^{-1}(0) with ϕ=1\|\nabla\phi\|=1. With the unit normal to Γ\Gamma defined as 𝐧^=ϕ\mathbf{\hat{n}}=\nabla\phi, one introduces the projection operator as P:=I𝐧^𝐧^\mbox{\text@underline{P}}:=I-\mathbf{\hat{n}}\otimes\mathbf{\hat{n}}, so that the surface gradient of uu can be expressed as Γu=Pu~=u~(𝐧^u~)𝐧^\nabla_{\Gamma}u=\mbox{\text@underline{P}}\nabla\tilde{u}=\nabla\tilde{u}-(\mathbf{\hat{n}}\cdot\nabla{\tilde{u}})\mathbf{\hat{n}}, where u~:nn\tilde{u}:\mathbb{R}^{n}\to\mathbb{R}^{n} is the embedding of u:Γu:{\Gamma}\to\mathbb{R}, with u~|Γ=u\tilde{u}|_{\Gamma}=u. Similarly, the surface Laplacian (or the so-called Laplace-Beltrami operator) of uu can be rewritten as ΔΓu=P(Pu~)=(Pu~)\Delta_{\Gamma}u=\mbox{\text@underline{P}}\nabla\cdot(\mbox{\text@underline{P}}\nabla\tilde{u})=\nabla\cdot(\mbox{\text@underline{P}}\nabla\tilde{u}). The resulting embedded PDE can be handled easily since all differential operators on surfaces are replaced by standard Cartesian operators, which can be discretized using typical finite difference approaches. To save some computational power, one might simply consider the solution u~\tilde{u} in a small computational tube containing Γ\Gamma. A common choice is to use a tubular neighbourhood111We follow the terminology from differential geometry and use the term tubular neighborhood here since it covers the definition from arbitrary dimensions. For some special cases, we might use annulus, tube or shell to explain the setting better. of Γ\Gamma, given by ΓR:={𝐱n:|ϕ|R}{\Gamma}^{R}:=\{\mathbf{x}\in\mathbb{R}^{n}:|\phi|\leq R\}, for some tube radius R>0R>0. When restricted to Γ\Gamma, the solution to the embedding PDE gives the solution to the surface PDE.

The method has been further developed in [26] for solving the convection-diffusion equation on moving interfaces and in [13] for solving a fourth-order PDE on surfaces. To obtain an accurate numerical solution, both works have required re-extending the surface data in ΓR\Gamma^{R} to guarantee a constant normal derivative of u~\tilde{u} for every time step. Note that one also needs an additional boundary condition on ΓR\partial\Gamma^{R} in the numerical implementation. Since we only require that the embedding PDE agrees with the surface PDE on the zero level set, we have some flexibility in how we introduce the embedding PDE. To improve the accuracy of these embedding methods, the work in [12] introduced a modified projection operator P~=(IϕK)1P\tilde{\mbox{\text@underline{P}}}=(I-\phi K)^{-1}\mbox{\text@underline{P}}, where ϕ\phi is the signed distance level set function such that Γ=ϕ1(0)\Gamma=\phi^{-1}(0) and ϕ=1\|\nabla\phi\|=1, and KK is the curvature tensor of each level set given by the negative of the level set Hessian. If the initial surface data u~0\tilde{u}_{0} is constant along the normal directions, it can be shown that the numerical solution u~\tilde{u} to the embedding PDE u~t=(u~,P~u~,(P~u~))\tilde{u}_{t}=\mathcal{L}(\tilde{u},\tilde{\mbox{\text@underline{P}}}\nabla\tilde{u},\nabla\cdot(\tilde{\mbox{\text@underline{P}}}\nabla\tilde{u})) is always constant along the normal directions. Mathematically, we have u~(t)ϕ=0\nabla\tilde{u}(t)\cdot\nabla\phi=0 for t>0t>0 if the initial condition satisfies u~0ϕ=0\nabla\tilde{u}_{0}\cdot\nabla\phi=0.

Related to this level set approach, the closest-point method (CPM) has been developed [21, 18] to solve time-dependent PDEs on implicit surfaces. With the closest-point function PΓ:nSP_{\Gamma}:\mathbb{R}^{n}\to S, which maps a grid point 𝐱\mathbf{x} to the closest-point PΓ(𝐱)=argmin𝐳Γ𝐱𝐳P_{\Gamma}(\mathbf{x})=\arg\min_{\mathbf{z}\in\Gamma}\|\mathbf{x}-\mathbf{z}\|, one can rewrite the surface gradient as Γu(𝐱)=u(PΓ(𝐱))\nabla_{\Gamma}u(\mathbf{x})=\nabla u(P_{\Gamma}(\mathbf{x})) on Γ\Gamma, so that the surface gradient can be computed using the Euclidean gradient. Typical embedding methods discussed above concentrate on elliptic or parabolic PDEs. Since the solution to hyperbolic PDEs might develop discontinuities, most arguments in the above embedding method might break down when the gradient u\nabla u no longer exists. Therefore, despite many important applications, there has not been much attention paid to hyperbolic PDEs on surfaces. One approach developed in [18] is for solving the level set equation on surfaces. Another discussion is on the surface Eikonal equations in [25].

This paper develops a new embedding method for solving scalar hyperbolic conservation laws on surfaces. Drawing inspiration from differential geometry, we introduce the push-forward operator to extend the surface flux function. The approach can provide a flux function in a small interface neighborhood that is still tangential to the interface. Therefore, this push-forward operator modifies the surface PDE and gives a PDE defined in a computational tube. Following the idea in other embedding methods, we can apply any well-developed numerical method to solve the modified PDE in the Cartesian mesh. More importantly, we can show analytically that the solution to the modified equation is constant along the normal directions of the interface. This property is essential for maintaining numerical accuracy in the finite difference scheme for the differential operator and the interpolation step when extracting the solution from the mesh to the surface.

The rest of the paper is organized as follows. We introduce the push-forward operator from differential geometry and propose a simple numerical method that can give high-order accurate numerical schemes in Section 2. A careful comparison of our proposed approach with several existing embedding methods is given in Section 3. Implementation details are discussed in Section 4, while Section 5 offers two- and three-dimensional examples to illustrate the accuracy of our numerical approach. Section 6 gives a conclusion and suggests some future work.

2 Our Proposed Method

This section first introduces some tools from differential geometry, and then we propose a simple approach to embed the conservation laws in a small tubular neighborhood ΓR\Gamma^{R}. We prove that the solution to the embedding conservation law (2) is constant along the normal directions of Γ\Gamma during time evolution.

2.1 The closest-point Function as a Diffeomorphism

Let Γd\Gamma\subset\mathbb{R}^{d} be a manifold as described above, we can define the closest-point function of Γ\Gamma, by

PΓ(𝐱):=argmin𝐲Γ𝐱𝐲P_{\Gamma}(\mathbf{x}):=\arg\min_{\mathbf{y}\in\Gamma}\|\mathbf{x}-\mathbf{y}\|

for 𝐱\mathbf{x} near Γ\Gamma. In particular, since Γ=ϕ1(0)\Gamma=\phi^{-1}(0) for its signed distance function ϕ\phi, the closest-point function can be computed explicitly by

PΓ(𝐱)=𝐱ϕ(𝐱)ϕ(𝐱),P_{\Gamma}(\mathbf{x})=\mathbf{x}-\phi(\mathbf{x})\nabla\phi(\mathbf{x}),

where 𝐱ΓR={|ϕ(𝐱)|<R}d\mathbf{x}\in\Gamma^{R}=\{|\phi(\mathbf{x})|<R\}\subset\mathbb{R}^{d} is the tubular neighbourhood of Γ\Gamma. If the given interface has a form other than the signed distance representation, we could have the following preprocessing steps before our proposed algorithm. If the level set is not a signed distance function, one can follow the reconstruction procedure described in [15, 22] to obtain a high-order approximation to the closest-point. If an explicit parametrization of the interface is known (for example, 𝐟(𝐬)\mathbf{f}(\mathbf{s}) for some parameterization 𝐬\mathbf{s}), we can determine the shortest distance and the corresponding nearest point by minimizing the function d(𝐬;𝐱)=12𝐟(𝐬)𝐱2d(\mathbf{s};\mathbf{x})=\frac{1}{2}\|\mathbf{f}(\mathbf{s})-\mathbf{x}\|^{2}.

Based on this closest-point representation, we can compute the surface gradient and surface divergence intrinsic to Γ\Gamma using their Cartesian counterpart [21], i.e.

Theorem 2.1.

Let Γ\Gamma be a smooth, closed surface embedded in d\mathbb{R}^{d}, given by the zero level set of its signed distance function ϕ\phi. Let uu be a smooth function whose value is constant along the normal directions of Γ\Gamma, then Γu(𝐱)=u(PΓ(𝐱))\nabla_{\Gamma}u(\mathbf{x})=\nabla u(P_{\Gamma}(\mathbf{x})) for 𝐱Γ\mathbf{x}\in\Gamma. Let 𝐕\mathbf{V} be a vector field which is tangent to all level sets Γh=ϕ1(h)\Gamma_{h}=\phi^{-1}(h) for small hh, then Γ𝐕(𝐱)=𝐕(PΓ(𝐱)),\nabla_{\Gamma}\cdot\mathbf{V}(\mathbf{x})=\nabla\cdot\mathbf{V}(P_{\Gamma}(\mathbf{x})), for 𝐱Γ\mathbf{x}\in\Gamma.

The closest-point function suggests a natural way to extend a surface quantity u:Γu:\Gamma\to\mathbb{R} to its tubular neighborhood ΓR\Gamma^{R}, given by u(PΓ())u(P_{\Gamma}(\cdot)). This extension is constant along the normal directions of Γ\Gamma, hence we have Γu(𝐱)=u(PΓ(𝐱))\nabla_{\Gamma}u(\mathbf{x})=\nabla u(P_{\Gamma}(\mathbf{x})) on Γ\Gamma. However, since the closest-points of computational grids are generally not grid points, the closest-point extension requires interpolation of closest-point values during the evolution. If the surface quantity uu develops discontinuities, obtaining a high-order interpolation procedure would be difficult.

Next, we provide a slightly different interpretation of the closest-point function PΓP_{\Gamma}. Consider Γhd\Gamma_{h}\subset\mathbb{R}^{d}, representing the hh-level set of ϕ\phi, where h>0h>0 is small such that PΓP_{\Gamma} is well-defined. Define Ph:ΓhΓP_{h}:\Gamma_{h}\to\Gamma by Ph(𝐱)=𝐱hϕ(𝐱)P_{h}(\mathbf{x})=\mathbf{x}-h\nabla\phi(\mathbf{x}), which is the restriction of PΓP_{\Gamma} from the tubular neighborhood ΓR\Gamma^{R} to the hh-level set Γh\Gamma_{h}. Notice that PhP_{h} is a diffeomorphism between the hh-level set Γh\Gamma_{h} and the interface Γ\Gamma. This is because ϕ\phi is smooth, and its inverse Ph1:ΓΓhP_{h}^{-1}:\Gamma\to\Gamma_{h} is given by Ph1(𝐲)=𝐲+hϕ(𝐲)P_{h}^{-1}(\mathbf{y})=\mathbf{y}+h\nabla\phi(\mathbf{y}), which is also smooth. Given a smooth function uu on Γ\Gamma, the most natural way to generate a function on the hh-level set Γh\Gamma_{h} is to pull-back uu by the operator PhP_{h}. This pull-back operator of PhP_{h} is given by

Phu=(uPh)(𝐱)=u(Ph(𝐱)),𝐱Γh.P_{h}^{*}u=(u\circ P_{h})(\mathbf{x})=u(P_{h}(\mathbf{x})),\quad\mathbf{x}\in\Gamma_{h}.

This gives the normal extension in the closest-point method when restricted to Γh\Gamma_{h}.

2.2 Our Proposed Method

The key idea behind our proposed method is that each level set Γh\Gamma_{h} is diffeomorphic to Γ\Gamma through the closest-point function, and we should be able to pose a PDE on Γh\Gamma_{h} describing the same physical phenomena. A natural way to pass a tangent vector field between Γ\Gamma and Γh\Gamma_{h} is called the push-forward.

Definition 2.2 (Push-Forward).

Given a tangent vector field 𝐅h\mathbf{F}_{h} on Γh\Gamma_{h}, the push-forward of 𝐅h\mathbf{F}_{h} by PhP_{h} at 𝐱Γh\mathbf{x}\in\Gamma_{h} is a linear map given by

(Ph)𝐅h(𝐱)=(Phα)(0),(P_{h})_{*}\mathbf{F}_{h}(\mathbf{x})=(P_{h}\circ\alpha)^{\prime}(0),

where α:(1,1)Γh\alpha:(-1,1)\to\Gamma_{h} with α(0)=𝐱\alpha(0)=\mathbf{x} and α(0)=𝐅h(𝐱)\alpha^{\prime}(0)=\mathbf{F}_{h}(\mathbf{x}).

Geometrically speaking, the push-forward (Ph)𝐅h(𝐱)(P_{h})_{*}\mathbf{F}_{h}(\mathbf{x}) is the initial velocity of the image curve (Phα)(t)(P_{h}\circ\alpha)(t) on Γ\Gamma, with the base point of (Ph)𝐅h(𝐱)(P_{h})_{*}\mathbf{F}_{h}(\mathbf{x}) given by Ph(𝐱)P_{h}(\mathbf{x}), as shown in Figure 1. It is also known that the push-forward operator is independent of the local coordinates and the choice of α\alpha [11].

Refer to caption
Figure 1: The push-forward operator.

In our application, we only have the surface data on Γ\Gamma, and we may consider the push-forward of 𝐅\mathbf{F} by Ph1P^{-1}_{h} instead. Here, we give an explicit formula for computing Ph1P^{-1}_{h}. This formula does not rely on local coordinates, which perfectly fits our level set representation of Γ\Gamma.

Theorem 2.3.

Let 𝐅\mathbf{F} be a tangent vector field defined on Γ\Gamma, where Γ\Gamma is the surface described above. For any 𝐱Γh\mathbf{x}\in\Gamma_{h}, the push-forward of 𝐅\mathbf{F} by Ph1P_{h}^{-1} is given by

𝐅h(𝐱)=[(Ph1)𝐅](𝐱)=[IhH(𝐱)]1𝐅(Ph(𝐱)),\mathbf{F}_{h}(\mathbf{x})=[(P_{h}^{-1})_{*}\mathbf{F}](\mathbf{x})=\left[I-hH(\mathbf{x})\right]^{-1}\mathbf{F}(P_{h}(\mathbf{x})),

where HH is the Hessian matrix of ϕ\phi.

Proof.

Fix 𝐱Γh\mathbf{x}\in\Gamma_{h}, let 𝐯(𝐱)\mathbf{v}(\mathbf{x}) be any tangent vector of Γh\Gamma_{h} at 𝐱\mathbf{x}, we first compute (Ph)𝐯(𝐱)(P_{h})_{*}\mathbf{v}(\mathbf{x}). Let α:(1,1)Γh\alpha:(-1,1)\to\Gamma_{h} be a smooth curve on Γh\Gamma_{h} satisfying α(0)=𝐱\alpha(0)=\mathbf{x} and α(0)=𝐯(𝐱)\alpha^{\prime}(0)=\mathbf{v}(\mathbf{x}), then

(Ph)𝐯(𝐱)\displaystyle(P_{h})_{*}\mathbf{v}(\mathbf{x}) =(Phα)(0)=ddt[α(t)hϕ(α(t))]|t=0\displaystyle=(P_{h}\circ\alpha)^{\prime}(0)=\frac{d}{dt}\big{[}\alpha(t)-h\nabla\phi(\alpha(t))\big{]}\Big{|}_{t=0}
=[α(t)hH(α(t))α(t)]|t=0=[IhH(α(0))]α(0)\displaystyle=\big{[}\alpha^{\prime}(t)-hH(\alpha(t))\alpha^{\prime}(t)\big{]}\Big{|}_{t=0}=\left[I-hH(\alpha(0))\right]\alpha^{\prime}(0)
=[IhH(𝐱)]𝐯(𝐱).\displaystyle=\left[I-hH(\mathbf{x})\right]\mathbf{v}(\mathbf{x})\,.

Therefore, (Ph)(P_{h})_{*} at 𝐱\mathbf{x} has the matrix representation [IhH(𝐱)]\left[I-hH(\mathbf{x})\right], which implies that (Ph1)(P^{-1}_{h})_{*} at Ph(𝐱)P_{h}(\mathbf{x}) can be expressed as [IhH(𝐱)]1\left[I-hH(\mathbf{x})\right]^{-1}. ∎

We apply the push-forward operator to solve conservation laws on surfaces. Let 𝐅(𝐱,u)\mathbf{F}(\mathbf{x},u) be the surface flux function on Γ\Gamma described before. We have a conservation law posed on Γh\Gamma_{h}:

u~t+Γh𝐅h(𝐱,u~)=0,u~(𝐱,0)=u0(Ph(𝐱)).\displaystyle\begin{split}&\tilde{u}_{t}+\nabla_{\Gamma_{h}}\cdot\mathbf{F}_{h}(\mathbf{x},\tilde{u})=0,\\ &\tilde{u}(\mathbf{x},0)=u_{0}(P_{h}(\mathbf{x})).\end{split}

Therefore, introducing the embedding flux 𝐅~\tilde{\mathbf{F}} in ΓR\Gamma^{R} as

𝐅~(𝐱,u)=[Iϕ(𝐱)H(𝐱)]1𝐅(PΓ(𝐱),u),\tilde{\mathbf{F}}(\mathbf{x},u)=\left[I-\phi(\mathbf{x})H(\mathbf{x})\right]^{-1}\mathbf{F}(P_{\Gamma}(\mathbf{x}),u)\,,

we obtain the embedding problem in the whole tubular neighborhood:

u~t+𝐅~(𝐱,u~)=0,u~(𝐱,0)=u0(PΓ(𝐱)).\displaystyle\begin{split}&\tilde{u}_{t}+\nabla\cdot\tilde{\mathbf{F}}(\mathbf{x},\tilde{u})=0,\\ &\tilde{u}(\mathbf{x},0)=u_{0}(P_{\Gamma}(\mathbf{x})).\end{split} (2)

Since the push-forward operator does not change the smoothness of the flux function, the uniqueness of (2) follows the original problem on Γ\Gamma (1). For the rest of this section, we prove that, if u(𝐱,t)u(\mathbf{x},t) is the solution to the surface conservation law (1), then u(PΓ(𝐱),t)u(P_{\Gamma}(\mathbf{x}),t) is the solution to equation (2). This property means that the solution to equation (2) is always constant along the normal directions of Γ\Gamma. This property enables us to replace the surface divergence with the simple Cartesian divergence in the computation. Since our method does not require additional interpolations, our approach is particularly attractive for hyperbolic problems when the solution might contain shocks and discontinuities.

Theorem 2.4.

The solution u~\tilde{u} to equation (2) is constant along the normal directions of Γ\Gamma for t>0t>0.

Proof.

Let 𝐱0Γ\mathbf{x}_{0}\in\Gamma, and denote the characteristic curve of (2) as 𝐱(t)\mathbf{x}(t), where 𝐱(0)=𝐱0\mathbf{x}(0)=\mathbf{x}_{0}. Also, let 𝐱h(t)\mathbf{x}_{h}(t) be the characteristic curve starts at Ph1(𝐱0)P^{-1}_{h}(\mathbf{x}_{0}) on Γh\Gamma_{h}. First, we can write down the characteristic system for 𝐱(t)\mathbf{x}(t):

𝐱(t)\displaystyle\mathbf{x}^{\prime}(t) =𝐅~u(𝐱(t),u~(𝐱(t),t))=𝐅u(𝐱(t),u~(𝐱(t),t)),\displaystyle=\tilde{\mathbf{F}}_{u}(\mathbf{x}(t),\tilde{u}(\mathbf{x}(t),t))=\mathbf{F}_{u}(\mathbf{x}(t),\tilde{u}(\mathbf{x}(t),t)),
du~dt(t)\displaystyle\frac{d\tilde{u}}{dt}(t) =(𝐅~)(𝐱(t),u~(𝐱(t),t))=0,\displaystyle=-(\nabla\cdot\tilde{\mathbf{F}})(\mathbf{x}(t),\tilde{u}(\mathbf{x}(t),t))=0,

where we use the geometry-compatible condition on Γ\Gamma in the second equation. Similarly, we can also write it down for 𝐱h(t)\mathbf{x}_{h}(t):

𝐱h(t)\displaystyle\mathbf{x}_{h}^{\prime}(t) =𝐅~u(𝐱h(t),u~(𝐱h(t),t)),\displaystyle=\tilde{\mathbf{F}}_{u}(\mathbf{x}_{h}(t),\tilde{u}(\mathbf{x}_{h}(t),t)),
du~dt(t)\displaystyle\frac{d\tilde{u}}{dt}(t) =(𝐅~)(𝐱h(t),u~(𝐱h(t),t))=0.\displaystyle=-(\nabla\cdot\tilde{\mathbf{F}})(\mathbf{x}_{h}(t),\tilde{u}(\mathbf{x}_{h}(t),t))=0.

The second equation for u~\tilde{u} equals to zero (using Lemma 1.1 in [6]). We can see that, the geometry-compatible condition guarantees that u~\tilde{u} is constant along the characteristic curves 𝐱(t)\mathbf{x}(t) and 𝐱h(t)\mathbf{x}_{h}(t).

Finally, we need to show 𝐱h(t)=Ph1(𝐱(t))\mathbf{x}_{h}(t)=P^{-1}_{h}(\mathbf{x}(t)), i.e. the image curve of 𝐱(t)\mathbf{x}(t) on Γh\Gamma_{h}, is given by 𝐱h(t)\mathbf{x}_{h}(t). Consider

ddtPh1(𝐱(t))\displaystyle\frac{d}{dt}P^{-1}_{h}(\mathbf{x}(t)) =[IhH(Ph1(𝐱(t)))]1𝐱(t)\displaystyle=\Big{[}I-hH\big{(}P^{-1}_{h}(\mathbf{x}(t))\big{)}\Big{]}^{-1}\mathbf{x}^{\prime}(t)
=[IhH(Ph1(𝐱(t)))]1𝐅u(𝐱(t),u~(𝐱(t),t)),\displaystyle=\Big{[}I-hH\big{(}P^{-1}_{h}(\mathbf{x}(t))\big{)}\Big{]}^{-1}\mathbf{F}_{u}(\mathbf{x}(t),\tilde{u}(\mathbf{x}(t),t)),

and

𝐱h(t)=𝐅~u(𝐱h(t),u~(𝐱h(t),t))=[IhH(𝐱h(t))]1𝐅u(PΓ(𝐱h(t)),u~(𝐱h(t),t)).\mathbf{x}_{h}^{\prime}(t)=\tilde{\mathbf{F}}_{u}(\mathbf{x}_{h}(t),\tilde{u}(\mathbf{x}_{h}(t),t))=\Big{[}I-hH\big{(}\mathbf{x}_{h}(t)\big{)}\Big{]}^{-1}\mathbf{F}_{u}(P_{\Gamma}(\mathbf{x}_{h}(t)),\tilde{u}(\mathbf{x}_{h}(t),t)).

Since 𝐱(0)=Ph(𝐱h(0))\mathbf{x}(0)=P_{h}(\mathbf{x}_{h}(0)), we have ddtPh1(𝐱(t))|t=0=𝐱h(0)\frac{d}{dt}P^{-1}_{h}(\mathbf{x}(t))\big{|}_{t=0}=\mathbf{x}^{\prime}_{h}(0). For t>0t>0, these two curves have to be identical.

Since the initial condition as defined in (2) is constant along the normal directions, we can then conclude that the solution u~\tilde{u} is also constant along the normal directions of Γ\Gamma for all hh as long as the closest-point function PΓP_{\Gamma} is well-defined. ∎

2.3 Eigenvalues of the Push-Forward Operator

There is a recent embedding method for solving Hamilton-Jacobi equations on surfaces, where the unique viscosity solution is given by the normal extension of the solution to the original surface problem [19]. The key component of their method is the singular values of the Jacobian matrix of PΓP_{\Gamma}, given by σi=1ϕ(𝐱)κi(𝐱)\sigma_{i}=1-\phi(\mathbf{x})\kappa_{i}(\mathbf{x}), where κi\kappa_{i} are the principal curvatures of Γϕ(𝐱)\Gamma_{\phi(\mathbf{x})} at 𝐱\mathbf{x}.

We found that when restricted to Γh\Gamma_{h}, the eigenvalues of the push-forward matrix (Ph1)\left(P_{h}^{-1}\right)_{*} we discuss here resembles σi1\sigma_{i}^{-1} as mentioned in [19]. Here, we concentrate only on the surface case where d=3d=3, but the discussion in the two-dimensional curve case is similar and, therefore, omitted.

Theorem 2.5.

Let (Ph1)\left(P_{h}^{-1}\right)_{*} be the push-forward matrix. The eigenvalues of the operator are given by λ1=(1hκ1)1\lambda_{1}=(1-h\kappa_{1})^{-1}, λ2=(1hκ2)1\lambda_{2}=(1-h\kappa_{2})^{-1} and 11, with the associated eigenvectors given by the corresponding principal direction vectors 𝐩1,𝐩2\mathbf{p}_{1},\mathbf{p}_{2} of the level surface ϕ(𝐱)\phi(\mathbf{x}) and the normal vector ϕ(𝐱)\nabla\phi(\mathbf{x}).

Proof.

It is known that for the signed distance function ϕ\phi, the curvature tensor is given by its Hessian matrix [17]. Differentiating both sides of ϕϕ=1\nabla\phi\cdot\nabla\phi=1, we have H(𝐱)ϕ(𝐱)=𝟎H(\mathbf{x})\nabla\phi(\mathbf{x})=\mathbf{0} which implies that ϕ(𝐱)\nabla\phi(\mathbf{x}) is an eigenvector of H(𝐱)H(\mathbf{x}) associated to the eigenvalue 0. Another two eigenvectors are given by the principal direction vectors 𝐩1,𝐩2\mathbf{p}_{1},\mathbf{p}_{2} are the eigenvectors associated to λ1\lambda_{1} and λ2\lambda_{2}. Then, the eigenvalues of IhH(𝐱)I-hH(\mathbf{x}) is clearly given by 1hλ1,1hλ21-h\lambda_{1},1-h\lambda_{2} and 11. ∎

2.4 A Simple Example

In this simple example, we provide some details to demonstrate the effectiveness of our proposed approach. We consider the unit circle Γ\Gamma defined implicitly by the zero level set of the signed distance function ϕ(x,y)=x2+y21\phi(x,y)=\sqrt{x^{2}+y^{2}}-1. The Hessian matrix of ϕ\phi is given by

H(x,y)=1r3[y2xyxyx2]H(x,y)=\frac{1}{r^{3}}\begin{bmatrix}y^{2}&-xy\\ -xy&x^{2}\\ \end{bmatrix}

where r=x2+y2r=\sqrt{x^{2}+y^{2}}. Therefore, the eigenvalues of H(x,y)H(x,y) are given by 0 and r1r^{-1} with the corresponding eigenvectors given by (x,y)(x,y) and (y,x)(-y,x) respectively, which are nothing but simply the normal and tangent vectors to the circle.

Refer to caption
Figure 2: (Section 2.4) Geodesic distances between two points and their projection.

Then, consider the computation tube ΓR={|ϕ|<R}\Gamma^{R}=\{|\phi|<R\} is an annulus with radius R>0R>0 and two points (r,θ)=(1+h,θ1)(r,\theta)=(1+h,\theta_{1}) and (1+h,θ2)ΓhΓR(1+h,\theta_{2})\in\Gamma_{h}\subset\Gamma^{R} written in the polar coordinates, on the hh-level set of ϕ\phi. As shown in Figure 2, the geodesic distance between these two points on Γh\Gamma_{h} is given by (1+h)|θ1θ2|(1+h)|\theta_{1}-\theta_{2}|. Since the geodesic distance between the projections of these two points on Γ\Gamma is |θ1θ2||\theta_{1}-\theta_{2}|, we should adjust the propagation velocity on the hh-level set by a factor of (1+h)(1+h) to account for the difference in the distance travelled.

According to the discussion in the last section, we see that the eigenvalues of our push-forward matrix [IhH(x,y)]1\left[I-hH(x,y)\right]^{-1} are given by 11 and (1hκ)1=1+h(1-h\kappa)^{-1}=1+h where κ\kappa is the curvature of the circle with radius 1+h1+h. This term matches exactly the required factor to align the propagation speed for different level sets.

3 Comparison with Other Embedding Approaches

This section provides a detailed comparison and demonstrates the differences between our proposed method and some other existing embedding methods.

3.1 The Modified Projection Operator [12]

The work [12] introduced a modified projection operator P~=(IϕK)1P\tilde{\mbox{\text@underline{P}}}=(I-\phi K)^{-1}\mbox{\text@underline{P}}, where ϕ\phi is a signed distance representation of the level set function, and KK is the curvature tensor of each level set given by the negative of the level set Hessian. This correction to the projection operator shares some similarities with our proposed approach. Both expressions involve the level set function and its Hessian, and both can produce a solution that is constant along the normal directions of the level sets.

One minor difference is that there is a negative-sign mismatch in the operator. The modified projection operator contains the operator (IϕK)1=(I+ϕH)1(I-\phi K)^{-1}=(I+\phi H)^{-1}, which looks different from our operator (IϕH)1(I-\phi H)^{-1} in the embedding equation. We believe this difference might come from how one defines the sign of the curvature.

The significant difference between these two approaches is the fundamental concept of how we construct the embedding equation. The work of [12] followed [5] using the idea of projection, which does not appear and is not needed in our formulation. Such an operator has to be applied to all surface gradient operators in the PDE and enforces that information propagates only on each level set.

To demonstrate the differences from our proposed approach, we consider applying the techniques from [12] to the advection equation and a general hyperbolic conservation law, and write down explicitly the corresponding equations.

  • As demonstrated in [12], one obtains the embedding equation u~t+𝐕P~u~=0\tilde{u}_{t}+\mathbf{V}\cdot\tilde{\mbox{\text@underline{P}}}\nabla\tilde{u}=0 when using the projection technique for advection equations. It leads to

    u~t+P~T𝐕u~=0,,\tilde{u}_{t}+\tilde{\mbox{\text@underline{P}}}^{T}\mathbf{V}\cdot\nabla\tilde{u}=0,,

    which is different from our formulation u~t+[IϕH]1𝐕u~=0\tilde{u}_{t}+\left[I-\phi H\right]^{-1}\mathbf{V}\cdot\nabla\tilde{u}=0. The approach in [12] requires an extra projection in front of the push-forward operator, which is missing in our formulation.

  • The work in [12] does not consider any general hyperbolic conservation laws. But following the basic principle, we might consider the embedding equation

    u~t+P~𝐅(PΓ(𝐱),u~)=0,\tilde{u}t+\tilde{\mbox{\text@underline{P}}}\nabla\cdot\mathbf{F}(P_{\Gamma}(\mathbf{x}),\tilde{u})=0\,, (3)

    Since the push-forward operator is a function of space, this equation does not match with our formulation (2). Equation (3) has an extra projection operator in front of the divergence operator, which makes it in the non-conservative form. When we convert our approach to a similar non-conservative form, our corresponding equation gives a source term on the right-hand side of the equation. Therefore, these two equations are indeed different from each other.

3.2 The Closest-Point Method [18]

The closest-point method involves substituting standard surface gradients and divergence operators with typical Cartesian derivatives in the embedding space. This substitution comes at the cost of replacing the spatial variable 𝐱\mathbf{x} with the closest-point evaluation cp(𝐱)\operatorname{cp}(\mathbf{x}), i.e., PΓ(𝐱)P_{\Gamma}(\mathbf{x}). As a result, the approximation of the derivative in a local neighborhood involves an extra step of high-order, high-dimensional interpolation, leading to a nonlocal evolution equation. For instance, applying the closest-point method to a surface PDE ut=F[t,𝐱,u,Γu,Γ(Γu/Γu)]u_{t}=F[t,\mathbf{x},u,\nabla_{\Gamma}u,\nabla_{\Gamma}\cdot(\nabla_{\Gamma}u/\|\nabla_{\Gamma}u\|)] with the initial condition u(𝐱,0)=u0(𝐱)u(\mathbf{x},0)=u_{0}(\mathbf{x}) yields

u~t=F[t,cp(𝐱),u~(cp(𝐱)),u~(cp(𝐱)),(u~(cp(𝐱))u~(cp(𝐱)))]\displaystyle\tilde{u}_{t}=F\left[t,\operatorname{cp}(\mathbf{x}),\tilde{u}(\operatorname{cp}(\mathbf{x})),\nabla\tilde{u}(\operatorname{cp}(\mathbf{x})),\nabla\cdot\left(\frac{\nabla\tilde{u}(\operatorname{cp}(\mathbf{x}))}{\|\nabla\tilde{u}(\operatorname{cp}(\mathbf{x}))\|}\right)\right]
u~(𝐱,0)=u0(cp(𝐱)).\displaystyle\tilde{u}(\mathbf{x},0)={u}_{0}(\operatorname{cp}(\mathbf{x}))\,.

Therefore, when we have conservation laws, the method gives

u~t+𝐅~(cp(𝐱),u~(cp(𝐱)))=0\displaystyle\tilde{u}_{t}+\nabla\cdot\mathbf{\tilde{F}}(\operatorname{cp}(\mathbf{x}),\tilde{u}(\operatorname{cp}(\mathbf{x})))=0
u~(𝐱,0)=u0(cp(𝐱)).\displaystyle\tilde{u}(\mathbf{x},0)={u}_{0}(\operatorname{cp}(\mathbf{x}))\,.

Although this equation looks similar to our formulation (2), these two equations are different. The equation from the closest-point method is an evolution equation when one needs to incorporate an interpolation step to obtain u~(cp(𝐱))\tilde{u}(\operatorname{cp}(\mathbf{x})) for 𝐱\mathbf{x} in a small neighborhood of the grid point 𝐱i\mathbf{x}_{i} of interest. In contrast, we are developing an entire PDE-based method where we can easily approximate all partial derivatives using finite-difference methods.

3.3 The Straightforward Embedding Method [25]

If we apply the simple embedding idea in [25] to the surface scalar conservation law (1), we obtain

u~t+𝐅~(𝐱,u~)=0,\displaystyle\tilde{u}t+\nabla\cdot\mathbf{\tilde{F}}(\mathbf{x},\tilde{u})=0,
u~(𝐱,0)=u0(PΓ(𝐱)),\displaystyle\tilde{u}(\mathbf{x},0)=u_{0}(P_{\Gamma}(\mathbf{x}))\,,

where 𝐅~(𝐱,u~):=𝐅(PΓ(𝐱),u~)\mathbf{\tilde{F}}(\mathbf{x},\tilde{u}):=\mathbf{F}(P_{\Gamma}{(\mathbf{x})},\tilde{u}). The function PΓ(𝐱)P_{\Gamma}(\mathbf{x}) is the closest-point function of 𝐱\mathbf{x} onto the interface Γ\Gamma. It can be shown that with such a simple embedding idea, the embedded flux function 𝐅~\mathbf{\tilde{F}} does not generate any flux across different level surfaces. Therefore, this straightforward approach also produces an embedding equation consistent with the surface conservation law. Although this equation looks similar to our formulation (2), how we modify the flux function differs. This straightforward approach does not incorporate an extra operator [IϕH]1\left[I-\phi H\right]^{-1} in the flux function. Because of the lack of this extra factor, information on different level surfaces propagates at different speeds depending on the curvature of the corresponding level surface. The characteristics propagate faster on level sets with more significant curvature and slower on level sets with smaller curvature. Although the solution restricted to the zero level set gives the required solution to the surface problem, solutions on different level set surfaces generally differ from those obtained by our formulation (2).

4 Numerical Implementations

In this section, we summarize the proposed method and discuss the implementation details. Our computational domain is a uniform Cartesian grid of size Δx\Delta x with an embedded tubular region where computations are carried out. The current implementation generates the push-forward matrix for every grid point in the embedded domain, despite a significant proportion of these grid points being unused. To improve memory efficiency, one could use special data structures like a list to store all mesh points within the computational tube efficiently. This approach could significantly reduce the memory requirement for high-dimensional computations. However, further investigation is needed to explore this possibility in the future.

Our proposed computational algorithm is straightforward. The method requires some pre-processing steps, including a step to construct the push-forward matrix and an interpolation step to extend the initial condition on the surface to the computational tube. Then we can solve the modified conservation law in the embedded domain as in a typical problem in the Cartesian space.

Step 1: Compute the closest-points for the grid points. For each grid point 𝐱\mathbf{x}, we determine the corresponding closest-point on Γ\Gamma using PΓ(𝐱)=𝐱ϕ(𝐱)ϕ(𝐱)P_{\Gamma}(\mathbf{x})=\mathbf{x}-\phi(\mathbf{x})\nabla\phi(\mathbf{x}), with ϕ\phi as the signed distance function representation of Γ\Gamma.

Step 2: Determine the computational tube ΓR\Gamma^{R}. Following other embedding methods for solving PDEs on surfaces, we require the tube radius to be small enough so that every grid point within the computational tube has a unique closest-point projection. Mathematically, this condition implies that R<κmax1R<\kappa_{\max}^{-1}, where κmax\kappa_{\max} is the maximal principal curvature of Γ\Gamma. On the other hand, the tube radius has to be large enough to include the whole discretization stencil. In this work, we fix R=3ΔxR=3\Delta x.

Step 3: Construct the push-forward matrix [Iϕ(𝐱)H(𝐱)]1\left[I-\phi(\mathbf{x})H(\mathbf{x})\right]^{-1}. For every grid point 𝐱ΓR\mathbf{x}\in\Gamma^{R}, we compute the Hessian matrix of ϕ\phi using central difference, and therefore [Iϕ(𝐱)H(𝐱)]\left[I-\phi(\mathbf{x})H(\mathbf{x})\right]. We determine its inverse and store it on the disk for later computation.

Step 4: Extend u0u_{0} from Γ\Gamma to ΓR\Gamma^{R}. If the initial data u0u_{0} is smooth enough, we use a high-order interpolation to compute u0(PΓ(𝐱))u_{0}(P_{\Gamma}(\mathbf{x})). However, for a piecewise smooth initial condition, we avoid interpolation and analytically determine the location of the projection of each grid point in the computational tube and directly evaluate the function value.

Step 5: Solve the embedding conservation law (2). Since equation (2) is a Cartesian conservation law posed in a subset of d\mathbb{R}^{d}, we can apply existing numerical methods. In the numerical experiments, we consider the Forward Euler method with the Lax-Friedrichs scheme as the first-order method and the TVDRK3-WENO3 as the third-order method [24]. We have chosen the Lax-Friedrichs flux splitting method in the WENO3. At every time step tnt^{n}, we first compute 𝐅(𝐱,un)\mathbf{F}(\mathbf{x},u^{n}) for every grid point 𝐱ΓR\mathbf{x}\in\Gamma^{R}, and then determine 𝐅~(𝐱,un)\tilde{\mathbf{F}}(\mathbf{x},u^{n}). The numerical fluxes are computed from 𝐅~(𝐱,un)\tilde{\mathbf{F}}(\mathbf{x},u^{n}). In particular, let 𝐅~=(f,g)\tilde{\mathbf{F}}=(f,g), we have the following discretizations. The Forward Euler method with the Lax-Friedrichs method is given by

ui,jn+1ui,jnΔt+fi+1/2,jfi1/2,jΔx+gi,j+1/2gi,j1/2Δy=0,\frac{u^{n+1}_{i,j}-u^{n}_{i,j}}{\Delta t}+\frac{f_{i+1/2,j}-f_{i-1/2,j}}{\Delta x}+\frac{g_{i,j+1/2}-g_{i,j-1/2}}{\Delta y}=0\,,

where

fi1/2,j\displaystyle f_{i-1/2,j} =12[fi1,j+fi,jΔxdΔt(ui,jui1,j)],\displaystyle=\frac{1}{2}\left[f_{i-1,j}+f_{i,j}-\frac{\Delta x}{d\Delta t}(u_{i,j}-u_{i-1,j})\right]\,,
gi,j1/2\displaystyle g_{i,j-1/2} =12[gi,j1+gi,jΔydΔt(ui,jui,j1)]\displaystyle=\frac{1}{2}\left[g_{i,j-1}+g_{i,j}-\frac{\Delta y}{d\Delta t}(u_{i,j}-u_{i,j-1})\right]

with the dimension of the problem given by dd, and Δt\Delta t satisfying the CFL condition

Δtmaxu[|f(u)|Δx+|g(u)|Δy]=CFL1,\Delta t\max_{u}\left[\frac{|f^{\prime}(u)|}{\Delta x}+\frac{|g^{\prime}(u)|}{\Delta y}\right]=\mbox{CFL}\leq 1\,,

while the third-order method is given by

ui,j(1)\displaystyle u^{(1)}_{i,j} =ui,jn+Δt(ui,jn),\displaystyle=u^{n}_{i,j}+\Delta t\mathcal{L}(u_{i,j}^{n}),
ui,j(2)\displaystyle u^{(2)}_{i,j} =34ui,jn+14(ui,j(1)+Δt(ui,j(1))),\displaystyle=\frac{3}{4}u^{n}_{i,j}+\frac{1}{4}\left(u^{(1)}_{i,j}+\Delta t\mathcal{L}(u^{(1)}_{i,j})\right),
ui,jn+1\displaystyle u^{n+1}_{i,j} =13ui,jn+23(ui,j(2)+Δt(ui,j(2))).\displaystyle=\frac{1}{3}u^{n}_{i,j}+\frac{2}{3}\left(u^{(2)}_{i,j}+\Delta t\mathcal{L}(u^{(2)}_{i,j})\right).

Here, (ui,j)=1Δx(f^i+1/2,jf^i1/2,j)1Δy(g^i,j+1/2g^i,j1/2)\mathcal{L}(u_{i,j})=-\frac{1}{\Delta x}\left(\hat{f}_{i+1/2,j}-\hat{f}_{i-1/2,j}\right)-\frac{1}{\Delta y}\left(\hat{g}_{i,j+1/2}-\hat{g}_{i,j-1/2}\right), and f^\hat{f} and g^\hat{g} are the WENO3 fluxes.

When solving the advection equation on Γ\Gamma, we follow the same idea and use the push-forward matrix to modify the propagation velocities:

u~t+[Iϕ(𝐱)H(𝐱)]1𝐕(PΓ(𝐱))u~=0,u~(𝐱,0)=u0(PΓ(𝐱)).\displaystyle\begin{split}&\tilde{u}_{t}+\left[I-\phi(\mathbf{x})H(\mathbf{x})\right]^{-1}\mathbf{V}(P_{\Gamma}(\mathbf{x}))\cdot\nabla\tilde{u}=0,\\ &\tilde{u}(\mathbf{x},0)=u_{0}(P_{\Gamma}(\mathbf{x}))\,.\end{split} (4)

Numerically, we implement the Forward Euler method with the upwind scheme as the first-order method and the TVDRK3 with the standard HJ-WENO3 scheme as the third-order method.

Regarding the boundary conditions on the computational tube, we impose the Neumann boundary condition 𝐧u=0\partial_{\mathbf{n}}u=0 on ΓR\partial\Gamma^{R}, with 𝐧=ϕ\mathbf{n}=\nabla\phi denoting the outward unit normal vector. In the numerical implementation, we follow the embedding idea in [25] and introduce a thin computation layer, (ΓRΓR)=R|ϕ|<R(\Gamma^{R^{\prime}}\setminus\Gamma^{R})={R\leq|\phi|<R^{\prime}}, and solve the extension equation ut+sign(ϕ)𝐧u=0u_{t}+\mbox{sign}(\phi)\mathbf{n}\cdot\nabla u=0 up to the steady-state in all intermediate time steps.

5 Numerical Examples

In this section, we consider various two- and three-dimensional examples to demonstrate the effectiveness and performance of the proposed algorithm. In all numerical examples, the computational domain is chosen to be a square/cube of side-length 22 centered at the origin, and we choose the radius of the inner tube R=3ΔxR=3\Delta x and the outer tube R=8ΔxR^{\prime}=8\Delta x. Unless specified otherwise, the CFL number is always chosen to be 0.50.5 for both first- and third-order methods. The matrix [Iϕ(𝐱)H(𝐱)]\left[I-\phi(\mathbf{x})H(\mathbf{x})\right] is computed by second-order central difference, even though we can explicitly construct the analytical expression when the signed distance function is known. In our examples, we found that the error introduced does not affect the convergence rate.

To study the convergence behavior of our proposed approach, we measure the L1L^{1}-, L2L^{2}-, and LL^{\infty}-errors on Γ\Gamma. Since we compute the solutions on the Cartesian mesh, we first interpolate these gridded solutions on a fine surface mesh by the high-order cubic interpolation implemented using MATLAB interp2 (for curves in two dimensions) or interp3 (for surfaces in three dimensions). Then we integrate these values appropriately using the Trapezoidal rule to obtain approximations of these errors.

5.1 Advection Equation on the Unit Circle

Refer to caption
Figure 3: (Section 5.1 Advection equation on the unit circle) Contour plots of the numerical solutions computed using (a) the first- and (b) the third-order methodss. We choose t=0.5t=0.5 and Δx=0.05\Delta x=0.05.
Refer to caption
Figure 4: (Section 5.1 Advection equation on the unit circle) The numerical errors in the solutions computed using (a) the first- and (b) the third-order methodss. The final time is chosen to be t=0.5t=0.5.

First, we consider the advection equation on the unit circle centered at the origin, ut+uθ=0u_{t}+u_{\theta}=0, where θ\theta is the polar angle. The initial condition is given by u0(θ)=sinθu_{0}(\theta)=\sin{\theta}. This problem can be regarded as the advection on the [0,2π][0,2\pi] interval with periodic boundary conditions. The velocity field is given by 𝐕(𝐱)=(sinθ,cosθ)\mathbf{V}(\mathbf{x})=(-\sin\theta,\cos\theta), and the modified velocity field 𝐕~\tilde{\mathbf{V}} can be computed by left-multiplying the push-forward matrix.

Figure 3 shows the contour plots of the numerical solutions using our proposed approach. We see that the solutions are constant along normal directions as desired. In Figure 4, we show the numerical errors in our solutions computed on various meshes. We can see that the convergence rates of both errors are approximately 11 and 33 when using the first- and the third-order methods, respectively.

5.2 Advection Equation on an Ellipse

Refer to caption
Figure 5: (Section 5.2 Advection equation on an ellipse) Contour plots of the numerical solutions computed using (a) the first- and (b) the third-order methods. We choose t=L/4t=L/4 and Δx=0.025\Delta x=0.025.
Refer to caption
Figure 6: (Section 5.2 Advection equation on an ellipse) The numerical errors in the solutions computed using (a) the first- and (b) the third-order methods. The final time is chosen to be t=L/4t=L/4.

Next, we consider an ellipse given by x2/a2+y2/b2=1\sqrt{x^{2}/a^{2}+y^{2}/b^{2}}=1 with a=0.75a=0.75 and b=1.25b=1.25 and solve the advection equation ut+us=0u_{t}+u_{s}=0 on the interface where ss is the arclength of the ellipse. Since the above representation does not give a signed distance function, we first let f(θ;x,y)=12(x,y)(acosθ,bsinθ)2f(\theta;x,y)=\frac{1}{2}\|(x,y)-(a\cos\theta,b\sin\theta)\|^{2} and determine θ\theta^{*} such that θ=argminθf(θ;x,y)\theta^{*}=\mbox{argmin}_{\theta}f(\theta;x,y). Then, the signed distance function representation is given by

ϕ(x,y)=sign(x2/a2+y2/b21)(x,y)(acosθ,bsinθ).\phi(x,y)=\operatorname{sign}(\sqrt{x^{2}/a^{2}+y^{2}/b^{2}}-1)\|(x,y)-(a\cos\theta^{*},b\sin\theta^{*})\|\,.

We pick the initial condition u0(s)=cos2(2πs/L)u_{0}(s)=\cos^{2}(2\pi s/L) as in [21], where LL is the perimeter of the ellipse. The embedding problem is given by

ut+[Iϕ(𝐱)H(𝐱)]1𝐕(𝐱)u=0, where 𝐕(𝐱)=(yb2,xa2)/x2a4+y2b4u_{t}+\left[I-\phi(\mathbf{x})H(\mathbf{x})\right]^{-1}\mathbf{V}(\mathbf{x})\cdot\nabla u=0,\mbox{ where }\mathbf{V}(\mathbf{x})=\left(-\frac{y}{b^{2}},\frac{x}{a^{2}}\right)/\sqrt{\frac{x^{2}}{a^{4}}+\frac{y^{2}}{b^{4}}}

indicates the advection directions. Figure 5 shows contour plots for the advection equation on the ellipse, and the numerical solutions are constant along the normal directions of the ellipse. Figure 6 shows the L1L^{1}-, L2L^{2}-, and LL^{\infty}-convergence rates of the numerical solutions computed using the first- and the third-order methods, which are approximately 11 and 33, respectively.

5.3 Burgers’ Equation on the Unit Circle

Refer to caption
Figure 7: (Section 5.3 Burgers’ equation on the unit circle) Contour plots of the numerical solutions computed using (a) the first- and (b) the third-order methods. We choose t=1.5t=1.5 and Δx=0.025\Delta x=0.025.
Refer to caption
Figure 8: (Section 5.3 Burgers’ equation on the unit circle) The numerical errors in the solutions computed using (a) the first- and (b) the third-order methods. The final time is chosen to be t=0.9t=0.9.

We consider Burgers’ equation on the unit circle, given by ut+12(u2)θ=0u_{t}+\frac{1}{2}\left(u^{2}\right)_{\theta}=0. The problem can be reformulated as Burgers’ equation on [0,2π][0,2\pi] with periodic boundary conditions, and therefore, we can write the solution implicitly as u(θ,t)=u0(θut)u(\theta,t)=u_{0}(\theta-ut).

In the numerical example, we choose the initial condition u0(θ)=sinθ+0.5u_{0}(\theta)=\sin\theta+0.5. Even with this smooth initial condition, the solution develops a singularity, and the shock forms at ts=1t_{s}=1. Figure 7 shows the numerical solutions obtained by the first- and the third-order methods at the time t=1.5t=1.5 computed on a mesh of Δx=0.025\Delta x=0.025. We see that these solutions are constant along the normal directions. The solution develops a shock at time t>1t>1. The proposed method can capture the discontinuity, and the resolution improves as the order of the numerical method increases. To demonstrate the accuracy of our numerical solution, we compute the numerical solution at t=0.9t=0.9 when the profile is still smooth. Figure 8 shows the numerical errors measured in various norms. We see that the first- and the third-order methods converge at rates of 11 and 33, respectively.

Refer to caption
Figure 9: (Section 5.4 Advection on a star curve) (a) Contour plot of the numerical solution obtained by the third-order method. We also interpolate the numerical solutions on the curve computed using (b) the first- and (c) the third-order methods. We choose t=Lt=L and Δx=0.0125\Delta x=0.0125.

5.4 Advection on a Star Curve

In this example, we consider a star curve given by the polar equation: r(θ)=r0+asin2(bθ)r(\theta)=r_{0}+a\sin^{2}{(b\theta)}, where r0=1,a=0.5r_{0}=1,a=0.5 and b=3b=3. The corresponding level set function is given by ϕ(x,y)=x2+y2r0asin2(barctan(y/x))\phi(x,y)=\sqrt{x^{2}+y^{2}}-r_{0}-a\sin^{2}{(b\arctan{(y/x)})}. Since ϕ\phi is not a signed distance function, we first compute the closest-points of grids and define ϕ~(x,y)=sign(ϕ(x,y))(x,y)PΓ(x,y)\tilde{\phi}(x,y)=\operatorname{sign}(\phi(x,y))\|(x,y)-P_{\Gamma}(x,y)\|. The tangent vector of the star curve can be computed by differentiating (r(θ)cosθ,r(θ)sinθ)(r(\theta)\cos{\theta},r(\theta)\sin{\theta}), where θ=arctan(y/x)\theta=\arctan(y/x). Hence, we define the velocity field 𝐕(x,y)\mathbf{V}(x,y) as

𝐕(x,y):=(y+absin(2bθ)cosθ,x+absin(2bθ)sinθ)(y+absin(2bθ)cosθ,x+absin(2bθ)sinθ)\mathbf{V}(x,y):=\frac{\left(-y+ab\sin{(2b\theta)}\cos{\theta},x+ab\sin{(2b\theta)}\sin{\theta}\right)}{\|\left(-y+ab\sin{(2b\theta)}\cos{\theta},x+ab\sin{(2b\theta)}\sin{\theta}\right)\|}

for (x,y)Γ(x,y)\in\Gamma. The embedding advection equation is ut+[Iϕ(𝐱)H(𝐱)]1𝐕(x,y)u=0u_{t}+\left[I-\phi(\mathbf{x})H(\mathbf{x})\right]^{-1}\mathbf{V}(x,y)\cdot\nabla u=0. In contrast to previous examples, we consider an initial condition with discontinuities, given by

u0(θ)={1,θ[0,π/3)[π,4π/3)2,θ[π/3,2π/3)[4π/3,5π/3)3,θ[2π/3,π)[5π/3,2π).u_{0}(\theta)=\begin{cases}1,&\theta\in[0,\pi/3)\cup[\pi,4\pi/3)\\ 2,&\theta\in[\pi/3,2\pi/3)\cup[4\pi/3,5\pi/3)\\ 3,&\theta\in[2\pi/3,\pi)\cup[5\pi/3,2\pi)\,.\end{cases}

At t=Lt=L, where L10.1964221L\approx 10.1964221 is the perimeter of the star curve, the above advection is a counter-clockwise rotation about the origin by 2π2\pi radians. From Figure 9, we can observe that the numerical solutions are constant along the normal directions and match the exact solution nicely.

5.5 Advection on a Torus

Refer to caption
Figure 10: (Section 5.5 Advection equation on a torus) The numerical errors in the solutions computed using (a) the first- and (b) the third-order methods. The final time is chosen to be t=1t=1.
Refer to caption
Figure 11: (Section 5.5 Advection on a torus) Numerical solutions at t=2π/5t=2\pi/5, 4π/54\pi/5, 6π/56\pi/5, 8π/58\pi/5 and 2π2\pi computed using the third-order method.

Consider a torus in 3\mathbb{R}^{3} given by the parametrization

(x,y,z)=((R+rcosη)cosθ,(R+rcosη)sinθ,rsinη)(x,y,z)=\left((R+r\cos\eta)\cos\theta,(R+r\cos\eta)\sin\theta,r\sin\eta\right)

where θ,η[π,π]\theta,\eta\in[-\pi,\pi], and R=1,r=0.5R=1,r=0.5. The corresponding signed distance function is ϕ(x,y,z)=[z2+(x2+y2R)2]12r.\phi(x,y,z)=\left[z^{2}+\left(\sqrt{x^{2}+y^{2}}-R\right)^{2}\right]^{\frac{1}{2}}-r\,. Compared to the unit sphere, this torus has two different principal curvatures. It is, therefore, a more challenging example to test the performance of our algorithm. Similar to [12, 21], we solve the advection equation ut+uη=0u_{t}+u_{\eta}=0 with the initial condition

u(θ,η,0)=f(η)={g(π+ηπ),η[π,0],g(πηπ),η(0,π],u(\theta,\eta,0)=f(\eta)=\begin{cases}g\left(\frac{\pi+\eta}{\pi}\right),\quad\eta\in[-\pi,0],\\ g\left(\frac{\pi-\eta}{\pi}\right),\quad\eta\in(0,\pi],\end{cases}

where g(x):=(e1x1e1x)/(e1x1+e1x)g(x):=\left(e^{\frac{1}{x-1}}-e^{\frac{1}{x}}\right)/\left(e^{\frac{1}{x-1}}+e^{\frac{1}{x}}\right). The exact solution is given by u(θ,η,t)=f(ηt)u(\theta,\eta,t)=f(\eta-t). In Figure 10, we can observe the first- and the third-order convergence in both errors when using the first- and the third-order methods, respectively. We have plotted the solution at different times in Figure 11. The solution well captures the evolution of the smooth profile.

5.6 Burgers’ Equation on the Unit Sphere

Refer to caption
Figure 12: (Section 5.6 Burgers’ equation on the unit sphere with the initial condition u1u_{1}) Contour plots of the numerical solutions on z=0z=0 obtained by the third-order method at t=0.5,1t=0.5,1 and 1.51.5.
Refer to caption
Figure 13: (Section 5.6 Burgers’ equation on the unit sphere with the initial condition u1u_{1}, WENO3) Numerical solutions at t=0,2t=0,2 and 44 with u1u_{1} as the initial condition and Δx=0.0125\Delta x=0.0125. (a-b) Solutions observed from different angles.
Refer to caption
Figure 14: (Section 5.6 Burgers’ equation on the unit sphere with the initial condition u1u_{1}) The numerical errors in the solutions computed using (a) the first- and (b) the third-order methods. The final time is chosen to be t=0.5t=0.5
Refer to caption
Figure 15: (Section 5.6 Burgers’ equation on the unit sphere with the initial condition u2u_{2}, WENO3) Numerical solutions at t=4π/5,12π/5t=4\pi/5,12\pi/5 and 4π4\pi with u2u_{2} as the initial condition and Δx=0.0125\Delta x=0.0125. (a-b) Solutions observed from different angles.
Refer to caption
Figure 16: (Section 5.6 Burgers’ equation on the unit sphere with the initial condition u2u_{2}) (a) Cross-sections on z=0z=0 at t=π/5t=\pi/5 to 2π2\pi with an increment of π/5\pi/5. The solution is computed on the mesh Δx=0.0125\Delta x=0.0125 using the third-order WENO method. (b) Comparison of the solutions at t=2πt=2\pi on z=0z=0 obtained by the first-order LxF method with Δx=0.05\Delta x=0.05, the third-order WENO method with Δx=0.05\Delta x=0.05 and Δx=0.0125\Delta x=0.0125.
Refer to caption
Figure 17: (Section 5.6 Burgers’ equation on the unit sphere with the initial condition u3u_{3}, WENO3) Numerical solutions at t=4π/5,12π/5t=4\pi/5,12\pi/5 and 4π4\pi with Δx=0.05\Delta x=0.05. (a-b) Solutions observed from different angles.
Refer to caption
Figure 18: (Section 5.6 Burgers’ equation on the unit sphere with the initial condition u3u_{3}, WENO3) Numerical solutions at t=4π/5,12π/5t=4\pi/5,12\pi/5 and 4π4\pi with Δx=0.0125\Delta x=0.0125. (a-b) Solutions observed from different angles.

We consider Burgers’ equation posed on the unit sphere, given by ut+(12u2)θ=0u_{t}+\left(\frac{1}{2}u^{2}\right){\theta}=0, where θ\theta is the azimuthal angle, with three different initial conditions:

  • u1(θ,φ,0)=sinθ+0.5u_{1}(\theta,\varphi,0)=\sin\theta+0.5,

  • u2u_{2} is the characteristic function of a box defined by |φ|<π/4|\varphi|<\pi/4 and |θ|<π/4|\theta|<\pi/4 where φ\varphi and θ\theta are the polar and the azimuthal angle in the spherical coordinate, respectively, and

  • u3u_{3} is a combination of two spherical harmonic modes given by Y2,1+Y4,3Y_{2,-1}+Y_{4,-3}.

The first initial condition provides a relatively simple test example so that we can construct an exact solution. Even though the solution develops a shock later, we can use the short-time solution to test the convergence of the numerical schemes. The second example is slightly more complicated, showing the interaction of a shock and a rarefaction wave. The third initial condition u3u_{3} is the most challenging one. We observe the interaction of multiple shocks.

Figure 12 shows the cross-section of the numerical solution at various times with the initial condition given by u1u_{1} on the z=0z=0 plane. The solution on the sphere is shown in Figure 13. We see that the third-order method can well resolve the discontinuity, and the shock is sharp. We also observe that the solution is indeed constant along the normal directions of the surface. We also compute the errors in the solutions at t=0.5t=0.5 obtained by various meshes to see the convergence rates. From Figure 14, we observe that the convergence rates are roughly 11 and 33 for the first- and the third-order methods, respectively.

Figure 15 shows the numerical solutions with the initial condition given by u2u_{2} and the mesh Δx=0.0125\Delta x=0.0125. Since the initial profile has a sharp discontinuity, the right boundary of the box moves as a shock towards the right-hand side. At the same time, the left border forms a rarefaction wave immediately. Because there is no flux across the upper and the boundary boundaries, these discontinuities should be stationary and do not move in the zenith direction (angle from the polar axis).

To compare these solutions more clearly, we extract the z=0z=0 cross-section of the solution at various times in Figure 16(a). The rarefaction fan catches the solution slightly after t=2π/5t=2\pi/5, and the magnitude of the shock gradually reduces over time. In Figure 16(b), we plot all solutions at the final time t=2πt=2\pi. The accuracy of the third-order method is significantly better than that of the first-order LxF solution. The numerical scheme is highly dissipative.

Figures 17-18 consider a more complicated case given by the initial condition u3u_{3} with the mesh sizes Δx=0.05\Delta x=0.05 and Δx=0.0125\Delta x=0.0125, respectively. Due to the symmetry in the spherical harmonic functions, the solution is symmetric across the equator. Therefore, we concentrate on the upper hemisphere of the unit sphere. Even though the initial condition is smooth, we observe that the solution develops shocks as it evolves in time. Two shocks move towards a stationary shock and interact with each other in a non-straightforward manner.

5.7 Conservation of Mass

Refer to caption
Figure 19: (Section 5.7 Conservation of mass in Burgers’ equation) (a) The integral of uu on the unit circle at t=2πt=2\pi. (b) The change in the integral of uu on the unit circle. (c-d) We repeat the setup in (a-b) but with the exact solution assigned in the outer tube. (e) The integral of uu on the unit sphere as a function of time. (f) The change in the integral of uu on the unit sphere.

The conservation of mass is a fundamental property in nonlinear conservation laws. In this section, we aim to investigate the conservation of the solution uu in Burgers’ equation on the circle and the sphere. Specifically, we are interested in determining how well the numerical solutions preserve the quantity on the interface.

To this end, we consider solving Burgers’ equation on the unit circle using WENO3 with the initial condition u(θ)=1u(\theta)=1 if |θ|π/4|\theta|\leq\pi/4 and u(θ)=0u(\theta)=0 otherwise, as shown in Figure 19(a) and (b). We apply high-order interpolation to the numerical solutions at different times on the unit circle and integrate the total mass. Figure 19(a) shows the percentage of mass lost at the final time t=2πt=2\pi with the numerical solutions computed on various meshes, Δx=4/(n1)\Delta x=4/(n-1) with nn increasing from 81 to 701 in increments of 20. We compare the total mass in the numerical solution with the exact mass π/2\pi/2.

The mass lost in WENO3 at the final time reduces as we refine the mesh. There could be two contributions to this error. The first one is the discretization error. The more grid points we use to sample the circle, the less discretization error we have. The second source comes from the flux through the grid interfaces. The mass lost in high-order finite difference schemes is not surprising, especially for problems with non-periodic boundary conditions [7], since the method requires information from several ghost points outside the computational domain. To see more clearly the variation in total mass, we have presented a box plot of the total mass as a function of time in Figure 19(b). The xx-axis represents different mesh sizes Δx=4/(n1)\Delta x=4/(n-1) with nn ranging from 81 (xx-index equals 1) to 701 (xx-index equals 32) in increments of 20, while the yy-axis shows the median, lower and upper quartiles, and the minimum and maximum values in the total mass on the circle that are not outliers. As we increase the mesh numbers, i.e., move along the xx-axis, we observe that the average mass over the 2π2\pi time increases and approaches the exact mass π/2\pi/2. But more interestingly, the range from the lower to the upper quartile seems to stay roughly the same. This observation implies a non-zero net flux on the computational boundary, which aligns with the results in [4, 7]. For our problem, the boundary of the computational tube does not align with the computational mesh, making the conservation of mass even more challenging. Nevertheless, we find that the change in the total mass is roughly 1-2%. To further demonstrate the major source of the mass lost, we replace the Neumann boundary condition with the exact solution in the outer tube. In Figure 19(c-d), we show the mass lost at the final time as a function of the mesh size and also the box plot of the total mass as a function of time. When we have the exact solution as the boundary condition, we see a significant improvement in the mass loss problem. The change in the total mass is now reduced to the order of O(102)O(10^{-2}).

We also re-examine the box initial condition u2u_{2} as in Section 5.6 and solve Burgers’ equation until t=2πt=2\pi. The exact total mass is given by π/22.2214\pi/\sqrt{2}\approx 2.2214. In Figure 19(e), we show the change in the total mass with solutions computed using the LxF and the WENO3 schemes on different mesh sizes. Similar to the two-dimensional case, the mass approaches the exact mass as we refine the underlying mesh. Comparing the solutions from the LxF and the WENO3, we observe that LxF can better preserve the total mass since it does not require any ghost grid and does not need much information outside the computational boundary. This difference is more evident in the box plot in Figure 19(f). The index in the xx-axis corresponds to the solution computed using n=81n=81 (Δx=0.05\Delta x=0.05), 161 (Δx=0.025\Delta x=0.025), and 321 (Δx=0.0125\Delta x=0.0125). Compared to the circle case, the change in the total mass seems reasonable for such small mesh points.

5.8 Burgers’ Equation on a Torus

Refer to caption
Figure 20: (Section 5.8 Burgers’ equation on a torus, WENO3) Numerical solutions at t=2π/5,6π/5t=2\pi/5,6\pi/5 and 2π2\pi with Δx=0.05\Delta x=0.05. (a-b) Solutions observed from different angles.
Refer to caption
Figure 21: (Section 5.8 Burgers’ equation on a torus, WENO3) Numerical solutions at t=2π/5,6π/5t=2\pi/5,6\pi/5 and 2π2\pi with Δx=0.0125\Delta x=0.0125. (a-b) Solutions observed from different angles.

Finally, we consider Burgers’ equation on the same torus as described in Section 5.5. The embedding equation in this example is given by ut+{[Iϕ(𝐱)H(𝐱)]1𝐅(u)}=0u_{t}+\nabla\cdot\left\{[I-\phi(\mathbf{x})H(\mathbf{x})]^{-1}\mathbf{F}(u)\right\}=0 where 𝐅(u)=12u2(θ^+η^)\mathbf{F}(u)=\frac{1}{2}u^{2}(\mathbf{\hat{\theta}}+\mathbf{\hat{\eta}}) is the flux function constructed along the two principal directions. We consider the smooth initial condition u0(θ,η)=sinθ,cosηu_{0}(\theta,\eta)=\sin\theta,\cos\eta. Figures 20-21 show the solution at various times computed by the mesh given by Δx=0.05\Delta x=0.05 and Δx=0.0125\Delta x=0.0125, respectively. We can see that the resolution in the solution is significantly improved. As we refine the grid, we can much better resolve the shock and clearly see the fine details in the solution.

6 Summary

By revealing that the closest-point function PΓP_{\Gamma} is a family of diffeomorphisms from Γh\Gamma_{h} to Γ\Gamma, we design a natural embedding flux via the push-forward concept from differential geometry. The proposed method does not rely on local coordinates of Γ\Gamma and performs all the computation on Cartesian grids, so we can utilize any well-developed numerical methods. The numerical examples demonstrate that the solution is constant along the normal directions, and the proposed method can achieve high-order convergence.

There are many possible future directions to explore. One simple possibility is to extend the method to solve systems of conservation laws on surfaces. Secondly, since this approach works perfectly well with the level set method, we propose incorporating the method to other interface problems involving surface gradient or solving PDEs and variational problems on moving surfaces. Also, it is interesting to extend the method to PDEs on non-closed surfaces with a boundary, which poses challenges in incorporating boundary conditions in the embedding framework and coupling constraints with the push-forward and projection operator. Parallel implementations will be considered in the future. Finally, a high-order method to compute surface integrals could be developed following recent approaches in [16, 19].

References

  • [1] D. Adalsteinsson and J.A. Sethian. Transport and diffusion of material quantities on propagating interfaces via level set methods. Journal of Computational Physics, 185(1):271–288, 2003.
  • [2] M. Ben-Artzi, J. Falcovitz, and P.G. LeFloch. Hyperbolic conservation laws on the sphere. A geometry-compatible finite volume scheme. J. Comput. Phys., 228(16):5650–5668, 2009.
  • [3] M. Ben-Artzi and P.G. LeFloch. Well-posedness theory for geometry-compatible hyperbolic conservation laws on manifolds. Annales de l’Institut Henri Poincaré C, 24(6):989–1008, 2007.
  • [4] M.J. Berger. On conservation at grid interfaces. SIAM J. Num. Anal., 24(5):967–984, 1987.
  • [5] M. Bertalmıo, L.-T. Cheng, S. Osher, and G. Sapiro. Variational problems and partial differential equations on implicit surfaces. J. Comput. Phys., 174(2):759–780, 2001.
  • [6] J.E. D’Atri and H.K. Nickerson. Divergence-preserving geodesic symmetries. J. Differ. Geom., 3(3-4):467–476, 1969.
  • [7] S. Ding, C.-W. Shu, and M. Zhang. On the conservation of finite difference WENO schemes in non-rectangular domains using the inverse Lax-Wendroff boundary treatments. J. Comput. Phys., 415(109516), 2020.
  • [8] G. Dziuk. Finite elements for the Beltrami operator on arbitrary surfaces. In Partial Differential Equations and Calculus of Variations, pages 142–155. Springer, 1988.
  • [9] G. Dziuk and C.M. Elliott. Finite element methods for surface PDEs. Acta Numerica, 22:289–396, 2013.
  • [10] N. Flyer and G.B. Wright. A radial basis function method for the shallow water equations on a sphere. Proc. R. Soc. A: Math. Phys. Eng. Sci., 465(2106):1949–1976, 2009.
  • [11] A. Gray, E. Abbena, and S. Salamon. Modern differential geometry of curves and surfaces with Mathematica®. Chapman and Hall/CRC, 2017.
  • [12] J.B. Greer. An improvement of a recent Eulerian method for solving PDEs on general geometries. J. Comput. Phys., 29(3):321–352, 2006.
  • [13] J.B. Greer, A.L. Bertozzi, and G. Sapiro. Fourth order partial differential equations on general geometries. J. Comput. Phys., 216(1):216–246, 2006.
  • [14] G.J. Haltiner. Numerical weather prediction. John Wiley & Sons, 1971.
  • [15] T. Y. Hou, Z. Li, S. J. Osher, and H.-K. Zhao. A hybrid method for moving interface problems with applications to the hele-shaw flows. J. Comput. Phys., 134:236–252, 1997.
  • [16] C. Kublik and R. Tsai. Integration over curves and surfaces defined by the closest point mapping. Res. Math. Sci., 3(1):1–17, 2016.
  • [17] N. Lehmann and U. Reif. Notes on the curvature tensor. Graphical models, 74(6):321–325, 2012.
  • [18] C.B. Macdonald and S.J. Ruuth. Level set equations on surfaces via the closest point method. J. Sci. Comput., 35(2):219–240, 2008.
  • [19] L. Martin and R. Tsai. Equivalent Extensions of Hamilton–Jacobi–Bellman Equations on Hypersurfaces. J. Sci. Comput., 84(3):1–29, 2020.
  • [20] M.A. Olshanskii and A. Reusken. A finite element method for surface PDEs: matrix properties. Numerische Mathematik, 114(3):491, 2010.
  • [21] S.J. Ruuth and B. Merriman. A simple embedding method for solving partial differential equations on surfaces. J. Comput. Phys., 227(3):1943–1961, 2008.
  • [22] R.I. Saye. High-order methods for computing distances to implicitly defined surfaces. Comm. App. Math. and Comp. Sci., 9(1):107–141, 2014.
  • [23] J.A. Sethian and Y. Shan. Solving partial differential equations on irregular domains with moving interfaces, with applications to superconformal electrodeposition in semiconductor manufacturing. Journal of Computational Physics, 227(13):6411–6447, 2008.
  • [24] C.-W. Shu. Essentially non-oscillatory and weighted essentially non-oscillatory schemes for hyperbolic conservation laws. Springer, 1998.
  • [25] T. Wong and S. Leung. A fast sweeping method for eikonal equations on implicit surfaces. J. Sci. Comput., 67(3):837–859, 2016.
  • [26] J.J. Xu and H.K. Zhao. An Eulerian formulation for solving partial differential equations along a moving interface. J. Sci. Comput., 19(1):573–594, 2003.