Natural neighbor nonlinear interpolation


Producing smooth plots

If you want an interpolated surface that has continuous partial derivatives at all points (i.e. a smooth surface), then you will want to use natural neighbor non-linear interpolation. The control parameter igr governs whether Natgrid does linear or non-linear interpolation. If igr is set to 1, then, for a given interpolation point, gradients are estimated at all natural neighbors of this point, and these estimates are blended in to reflect nearby trends.

Examine the code for Example 2. Notice that the only difference between this example and Example 1 is the call to set igr to indicate that gradient estimates are to be used. Compare the plot from example 1 with the plot from example 2. The plot from example 2 has continuous partial derivatives, even at the original data values.

For further background on non-linear natural neighbor interpolation, review the section in the introduction on the interpolation method used in Natgrid. Complete details are in Dr. Watson's book nngridr.

Controlling the influence of the estimated gradients

There are two parameters, called tautness parameters, that can be set to control the influence of the gradient estimates on interpolated values. These parameters are bI and bJ. Increasing the value of bJ decreases the breadth of the region affected by a gradient estimate and increasing the value of bI increases the intensity of the influence of a gradient estimate. A value for bI or bJ can be anything greater than or equal to "1.". The effective upper range for each parameter is about 10., although larger values are allowed.

Increasing bI to values larger than the default value of 1.5 may produce an underflow, since bI is ultimately used in a negative exponent of an exponential function. If an underflow occurs, you need not be concerned about it.

The default values for bI and bJ are chosen to produce a relatively smooth plot for most data sets. You may want to modify the values of bI and bJ to see what effect this has on your interpolations. In general, the effects of changing bJ are fairly subtle. Setting bI and bJ both to "1." essentially produces natural neighbor linear interpolation; increasing their values produces a smoother plot.


home | contents | defs | params | procedures | exmpls | index