Closest point method

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The closest point method (CPM) is an embedding method for solving partial differential equations on surfaces. The closest point method uses standard numerical approaches such as finite differences, finite element or spectral methods in order to solve the embedding partial differential equation (PDE) which is equal to the original PDE on the surface. The solution is computed in a band surrounding the surface in order to be computationally efficient. In order to extend the data off the surface, the closest point method uses a closest point representation. This representation extends function values to be constant along directions normal to the surface.


Closest Point function: Given a surface \mathcal S, cp(\bold x) refers to a (possibly non-unique) point belonging to \mathcal S , which is closest to  \bold x [SE].

Closest point extension: Let \mathcal S , be a smooth surface in  \mathbb R^d . The closest point extension of a function u : \mathcal S  \rightarrow \mathbb R , to a neighborhood  \Omega of \mathcal S , is the function  v: \Omega \rightarrow \mathbb R , defined by  v(\bold x) = u(cp(\bold x)).

Closest point method[edit]

Initialization consists of these steps [EW]:

  • If it is not already given, a closest point representation of the surface is constructed.
  • A computational domain is chosen. Typically this is a band around the surface.
  • Replace surface gradients by standard gradients in \mathbb R^3 .
  • Solution is initialized by extending the initial surface data on to the computational domain using the closest point function.

After initialization, alternate between the following two steps:

  • Using the closest point function, extend the solution off the surface to the computational domain.
  • Compute the solution to the embedding PDE on a Cartesian mesh in the computational domain for one time step.


The surface PDE is extended into  \mathbb R^3 however it is only necessary to solve this new PDE near the surface. Hence, we solve the PDE in a band surrounding the surface for efficient computational purposes.  \Omega_c {x : \| x - cp(x) \|_2 \leq \lambda} where  \lambda is the bandwidth.

Example: Heat equation on a circle[edit]

Using initial profile  u_S (\theta , t) = \sin (\theta) leads to the solution  u_S (\theta, t) = \exp (-t)\sin (\theta) for the heat equation. Forward Euler time-stepping is used with relation  \Delta t = 0.1 \Delta x^2 and degree-four interpolation polynomials for the interpolations. Second-order centered differences are used for the spatial discretization. The CPM results in the expected second order error in the solution  u .


The closest point method can be applied to various PDEs on surfaces. Reaction–diffusion problems on point clouds [RD], eigenvalue problems [EV], and level set equations [LS] are a few examples.

See also[edit]


  • [EM] Ruuth, S. J., & Merriman, B. (2008). A simple embedding method for solving partial differential equations on surfaces.Journal of Computational Physics,227(3), 1943–1961 here
  • [RD] Macdonald, C. B., Merriman, B., & Ruuth, S. J. (2013). Simple computation of reaction-diffusion processes on point clouds. Proceedings of the National Academy of Sciences, 110(23), 9209–9214 here
  • [EV] Macdonald, C. B., Brandman, J., & Ruuth, S. J. (2011). Solving eigenvalue problems on curved surfaces using the Closest Point Method. Journal of Computational Physics, 230(22), 7944–7956. here
  • [LS] Macdonald, C. B., & Ruuth, S. J. (2008). Level set equations on surfaces via the Closest Point Method. Journal of Scientific Computing, 35(2–3), 219–240. here