# WMS:Natural Neighbor Interpolation

Natural neighbor interpolation is also supported in WMS. Natural neighbor interpolation has many positive features. It can be used for both interpolation and extrapolation and it generally works well with clustered scatter points. Natural neighbor interpolation was first introduced by Sibson (1981). A more detailed description of natural neighbor interpolation in multiple dimensions can be found in Owen (1992).

The basic equation used in natural neighbor interpolation is identical to the one used in IDW interpolation:

As with IDW interpolation, the nodal functions can be either constants, gradient planes, or quadratics. The nodal function can be selected using the *Natural Neighbor Interpolation Options* dialog. The difference between IDW interpolation and natural neighbor interpolation is the method used to compute the weights and the method used to select the subset of scatter points used for interpolation.

Natural neighbor interpolation is based on the Thiessen polygon network of the scatter point set. The Thiessen polygon network can be constructed from the Delauney triangulation of a scatter point set. A Delauney triangulation is a TIN that has been constructed so that the Delauney criterion has been satisfied.

There is one Thiessen polygon in the network for each scatter point. The polygon encloses the area that is closer to the enclosed scatter point than any other scatter point. The polygons in the interior of the scatter point set are closed polygons and the polygons on the convex hull of the set are open polygons.

Each Thiessen polygon is constructed using the circumcircles of the triangles resulting from a Delauney triangulation of the scatter points. The vertices of the Thiessen polygons correspond to the centroids of the circumcircles of the triangles.

### Local Coordinates

The weights used in natural neighbor interpolation are based on the concept of local coordinates. Local coordinates define the "neighborliness" or amount of influence any scatter point will have on the computed value at the interpolation point. This neighborliness is entirely dependent on the area of influence of the Thiessen polygons of the surrounding scatter points.

To define the local coordinates for the interpolation point, *P _{n}*, the area of all Thiessen polygons in the network must be known. Temporarily inserting

*P*into the TIN causes the TIN and the corresponding Thiessen network to change, resulting in new Thiessen areas for the polygons in the neighborhood of

_{n}*P*.

_{n}The concept of local coordinates is shown graphically in the following figure. Points 1–10 are scatter points and *P _{n}* is a point where some value associated with points 1–10 is to be interpolated. The dashed lines show the edges of the Thiessen network before

*P*is temporarily inserted into the TIN and the solid lines show the edges of the Thiessen network after

_{n}*P*is inserted.

_{n}Only those scatter points whose Thiessen polygons have been altered by the temporary insertion of *P _{n}* are included in the subset of scatter points used to interpolate a value at

*P*. In this case, only points 1, 4, 5, 6, & 9 are used. The local coordinate for each of these points with respect to

_{n}*P*is defined as the area shared by the Thiessen polygon defined by point

_{n}*P*and the Thiessen polygon defined by each point before point

_{n}*P*is added. The greater the common area, the larger the resulting local coordinate, and the larger the influence or weight the scatter point has on the interpolated value at

_{n}*P*.

_{n}If we define *k(n)* as the Thiessen polygon area of *P _{n}* and

*km(n)*as the difference in the Thiessen polygon area of a neighboring scatter point,

*P*, before and after

_{m}*P*is inserted, then the local coordinate

_{n}*λ*is defined as:

_{m}(n)The local coordinate *λ _{m} (n)* varies between zero and unity and is directly used as the weight, wm(n), in the interpolation equation. If

*P*is at precisely the same location as

_{n}*P*, then the Thiessen polygon areas for

_{m}*P*and

_{n}*P*are identical and

_{m}*λ*has a value of unity. In general, the greater the relative distance

_{m}(n)*P*is from

_{m}*P*, the smaller its influence on the final interpolated value.

_{n}### Extrapolation

As shown in the figure above, the Thiessen polygons for scatter points on the perimeter of the TIN are open-ended polygons. Since such polygons have an infinite area, they cannot be used directly for natural neighbor interpolation. Thus, a special approach is used to facilitate extrapolation with the natural neighbor scheme. Prior to interpolation, the x and y boundaries of the object being interpolated to (grid, mesh, etc.) are determined and a box is placed around the object whose boundaries exceed the limits of the object by approximately 10% (this value can be modified). Four temporary "pseudo-scatter points" are created at the four corners of the box. The inverse distance weighted interpolation scheme with gradient plane nodal functions is then used to estimate a data value at the pseudo-points. From that point on, the pseudo-points with the extrapolated values are included with the actual scatter points in the interpolation process. Consequently, all of the points being interpolated to are guaranteed to be within the convex hull of the scatter point set. Once the interpolation is complete, the pseudo-points are discarded.

## Related Topics

WMS – Watershed Modeling System | ||
---|---|---|

Modules: | Terrain Data • Drainage • Map • Hydrologic Modeling • River • GIS • 2D Grid • 2D Scatter | |

Models: | CE-QUAL-W2 • GSSHA • HEC-1 • HEC-HMS • HEC-RAS • HSPF • MODRAT • NSS • OC Hydrograph • OC Rational • Rational • River Tools • Storm Drain • SMPDBK • SWMM • TR-20 • TR-55 | |

Toolbars: | Modules • Macros • Units • Digitize • Static Tools • Dynamic Tools • Drawing • Get Data Tools | |

Aquaveo |