# Regridding Overview

The following is by Dennis Shea (NCAR):

Regridding is the process of interpolating from one grid resolution to a different grid resolution. This could involve temporal, vertical or spatial ('horizontal') interpolations.  However, most commonly, regridding refers to spatial interpolation. There are numerous grid interpolation methods and users should choose the method appropriate for the intended task. Using an inappropriate interpolation scheme may lead to misleading results. Further, most climate grids are georeferenced on a sphere where pole singularities and the convergence of the longitude meridions can be issues that need to be addressed.

Grids used in climate research fall into several categories: regular, rectilinear, curvilinear and unstructured. For our purposes, grids described by one-dimensional latitude and longitude coordinates ([*]) will be called rectilinear; grids where the coordinates are two-dimensional ([*][*]) will be called curvilinear; and, grids in which the grid coordinates require a list of nodes (connectivity information) will be called unstructured. Why the variety of grids? Reasons include advances in computer capabilities, computational efficiency, addressing pole singularities and physical constraints.

Quantitative evaluation of data contained on different grids requires regridding to a common grid. There are many regridding methods. Classic interpolation methods include: bilinear, nearest neighbor, inverse distance, spline, binning, spectral and triangulation. Certain applications of regridded data may necessitate two specialized interpolation methods to achieve required physical (eg, flux conservation) or mathematical (eg, higher order derivatives) requirements: conservative and patch

The most commonly used methods of climate grid interpolation are bilinear, conservative and patch. The bilinear method is easy to program and apply when the source and destination grids are rectilinear. Virtually all data processing tools provide a function to implement some form of bilinear interpolation for rectilinear grids. However, curvilinear and unstructured grids may involve sophisticated searching algorithms to determine the points surrounding the location to be interpolated.

Some interpolation schemes use a multi-step approach. Initially,  the user specifies the type of interpolation to be performed (eg, bilinear, conservative or patch) and the source and destination grid spatial coordinates. The software then generates a netCDF file which contains an array of weights. Depending upon the grid structures and the sizes, this may take a significant amount of time due to searching requirements. Finally, the user can read the generated weights and perform a 'sparse matrix multiply' to effect the regridding. This is a very fast operation and is ideally suited to processing a large number of grids.

Which Spatial Interpolation Method Should be used?

The choice of which method to use should be guided by a combination of the intended use of the interpolated data and the structure of the original variable. Most geophysical variables (eg., temperature) are highly spatially correlated at all time scales. Some variables (eg., precipitation) may have little or no spatial correlation at high frequency sampling (eg., 3-hourly) but on monthly, seasonal or annual mean time scales may be 'reasonably' smooth is space. In other instances, there may be physical requirements (e.g., conservation of energy) that require a specific interpolation method. There are data for which no interpolation method should be used. An example would be categorical data for land (eg., desert, rain forest, ...).

For smoothly varying variables, bilinear interpolation is adequate for many applications. For discontinuous variables (eg, 3 hourly precipitation), bilinear interpolation may not be appropriate. For example, consider a 3-hourly precipitation data set at 0.25 degree resolution (eg., TRMM) that is to be interpolated to a 2 degree grid.  At the equator, within each 2 degree grid there are 64 0.25 grid points. Many grid points may have no precipiation (0.0) while a few have large values (eg., local convective activity). If bilinear interpolation was used, it would use the four grid ponts nearest the 2 degree target grid point.  The nearby grid points could be all zero or include high values. In this case, conservative interpolation would be a good approach. Computing the curl of the wind stress requires that highly accurate derivatives be computed. In this case, patch interpolation would be appropriate. Deriving a new grid for categorical data (eg, land surface type) would be best accomplished with a nearest neighbor algorithm because interpolating different categories may result in a totally bogus result.

Non-linear quantities should always be computed on the original grid and, subsequently, interpolated to the destination grid. Note that the results will be different than if the original variables on the source grid were interpolated to the destination grid and then the non-linear computations performed.

Vector interpolation (eg, U, V) should be performed on the vector pair simultaneously. Interpolating U, then separately, interpolating V may be adequate for some purposes, but not if the interpolated vector components were subsequently used to derive (say) divergence. An indirect approach would be to (a) calculate the scalar quantities vorticity and divergence on the source grid; (b) interpolate these scalar quantities to the destination grid using standard methods; and then, (c) derive the U and V from the rotational and divergent wind components.

Extrapolation: In some cases, a regridding algorithm may extrapolate rather than interpolate. A common example is extrapolating vertical profiles in mountain regions to (say) 1000hPa. In some cases, the extrapolation can be guided by physical principles. For example, using the standard lapse rate may be acceptable when extrapolating temperature or geopotential via the hydrostatic equation. However, generally, any extrapolated values should be used and interpreted with the utmost caution.

Occassionally, someone might say, "I have a 5x5 grid containing precipitation but I need a 0.1x0.1 grid so I'll interpolate to the 0.1x0.1 resolution. Of course, this interpolation can be performed but this provides no additional information than the original 5x5 grid.

References

http://www.earthsystemmodeling.org/esmf_releases/public/ESMF_5_2_0rp1/esmf_5_2_0rp1_regridding_status.html