SphereKit is a spatial interpolation toolkit developed by the National Center for Geographic Information and Analysis (NCGIA) under its initiative to evaluate the roles of GIS in global change research. This software package is particularly useful for the comparison of interpolation algorithms. It runs on most UNIX-based machines and its source code is available over the internet from NCGIA.
One of the unique features of SphereKit is that it works directly on the spherical geometry of the earth. Thus, distances, areas, and directions are spherically based, and interpolation can be carried out over large distances, without distortions induced by the use of planar projections. Projections are applied only for display purposes after any analytic computations have been carried out. Included interpolation algorithms that have been adapted to the sphere include inverse distance weighting, thin plate splines, multiquadrics, triangulation-based, and kriging. For kriging, the three primary semivariogram models (exponential, Gaussian, and spherical) were modified to permit the functions to be globally smooth.
A second unique feature of SphereKit is its capacity to incorporate knowledge or information about the underlying processes that produced the spatial variations. This "smart interpolation" is accomplished by permitting the user to perform the interpolation on a derived variable defined as a mathematical formula of other independent or dependent variables. The formula is inverted automatically following interpolation. An example is the use of elevation information to improve the accuracy of interpolation of temperature. Air tempertures tend to fall off with altitude at approximately 6 degrees C /km. Applying this formula and using the built-in digital elevation model (DEM) permits interpolation to be performed on temperatures reduced to mean sea level. The altitude effect is restored automatically following the interpolation. The overall effect of the smartly interpolated temperature fields is that low temperatures are correctly predicted at high altitude locations, even in the absence of high altitude observational stations (a common nuisance). In this example, knowledge of the physics of the problem is used to select sea level-reduced temperatures as the appropriate interpolation variable.
A final feature of SphereKit is its integrated error analysis capabilities. The package can be used to compare the relative performance of interpolation algorithms or parameter settings using cross-validation, before carrying out the actual interpolation. The cross-validation errors, defined at the network locations, can themselves be interpolated to a uniform grid to reduce spatial bias. The implications of performing such a second interpolation are discussed, as the results are dependent on the interpolation method employed.
As an example, SphereKit was used to interpolate global temperatures and precipitation for the early months of 1996. A comparison of the interpolated fields using several algorithms is presented. In traditional kriging applications in the geosciences, autocorrelations are present only at realtively small distances, and planar methods suffice. However, climate exhibits correlations over scales of thousands of km, and correlations (both positive and negative) are evident at nearly all spatial scales. Comparisons of kriging using different moving window sizes demonstrates the value of utilizing large-scale information.