ESMF_5_2_0r regridding: features, grids, and numerical results
This page describes the regridding functionality provided by ESMF. Regridding, also called remapping or interpolation, is the process of changing the grid that underlies data values while preserving qualities of the original data. Different kinds of transformations are appropriate for different problems. Regridding may be needed when communicating data between Earth system model components such as land and atmosphere, or between different data sets to support operations such as visualization.
Regridding can be broken into two stages. The first stage is generation of an interpolation weight matrix that describes how points in the source grid contribute to points in the destination grid. The second stage is the multiplication of values on the source grid by the interpolation weight matrix to produce values on the destination grid. This occurs through a parallel sparse matrix multiply.
There are two options for accessing ESMF regridding functionality: integrated and offline. Integrated regridding means that interpolation weights are generated via subroutine calls during the execution of the user's code. The integrated regridding can also perform the sparse matrix multiply. Offline regridding means that interpolation weights are generated by a separate ESMF application, not within the user code. Offline interpolation weight generation is provided by the ESMF_RegridWeightGen application , which internally uses the integrated ESMF regridding.
The tables on this page show the capabilities supported by ESMF regridding. The first tables show the level of regridding support for a variety of source and destination grids. The integrated regridding can currently support both Cartesian and spherical coordinate systems, while the offline regridding supports only spherical coordinates. More details on specific features and numerical results are provided below that, along with references.
Legend
Supported (completely and automatically tested) | |
Supported (partially and/or manually tested) | |
Should work, but not yet tested | |
Not supported |
Supported grids in the integrated regridding
2D meshes with elements that can be represented by combinations of triangles or quadrilaterals are supported. Cubed sphere grids are supported as an ESMF Mesh. Two coordinate systems are currently supported in the integrated regridding, Cartesian and spherical. These tables cover testing of generating and applying interpolation weights.
Cartesian
2D regional grids | 3D regional grids | ||||
Logically rectangular | Mesh | Logically rectangular | Mesh | ||
2D regional grids | Logically rectangular | Mesh | |||
3D regional grids | Logically rectangular | Mesh |
Spherical
2D global grids | 2D regional grids | ||||
Logically rectangular | Mesh | Logically rectangular | Mesh | ||
2D global grids | Logically rectangular | Mesh | |||
2D regional grids | Logically rectangular | Mesh |
Supported grids in the offline regridding
2D meshes with elements that can be represented by combinations of triangles or quadrilaterals are supported. This includes meshes with elements that are pentagons, hexagons, and other polygons. The user does not have to decompose their elements into triangles and quadrilaterals since ESMF does it for them internally. Cubed sphere grids are supported as an ESMF Mesh. The offline regridding is currently restricted to spherical coordinate systems. This table covers testing of generating interpolation weights.
Spherical
2D global grids | 2D regional grids | ||||
Logically rectangular | Mesh | Logically rectangular | Mesh | ||
2D global grids | Logically rectangular | Mesh | |||
2D regional grids | Logically rectangular | Mesh |
Capabilities of ESMF regridding
There are several different capabilities available in each of these applications. The following symbols and keywords are used:
Bilinear - Linear interpolation in 2 or 3 dimensions. [1]Patch - Patch rendezvous method of taking the least squares fit of the surrounding surface patches. [2,3]
Conservative - First order area averaged conservation is based on the ratio of source cell area overlapped with the corresponding destination cell area.
Destination masking - Allow some points (usually representative of land masses) of the destination grid to not be included in the interpolation.
Source masking - Allow some points of the source grid to not be included in the interpolation.
Ignore unmapped points - ESMF option to ignore points which lie outside of the interpolation space instead of issuing an error.
Full circle average - ESMF option to use all of the latitude points directly surrounding a pole to calculate an artificial pole value.
N-point average - ESMF option for a user to specify the number of points of the latitude line directly surrounding a pole to calculate an artificial pole value. This option is useful when the full circle average may yield a zero valued vector field.
No pole - ESMF option to not use a pole value at all, the grid ends at the top and bottom rows of latitude points that are given.
Integrated regridding capabilities
Capabilities | Description | Bilinear | Patch | Conservative |
---|---|---|---|---|
Regridding | ||||
Masking (Logically rectangular grids only) |
Destination | Source | Ignore unmapped points | |
Pole options | Full circle average | N/A | ||
N-point average | N/A | |||
No pole |
Offline regridding capabilities
Capabilities | Description | Bilinear | Patch | Conservative |
---|---|---|---|---|
Regridding | ||||
Masking (Logically rectangular grids only) |
Destination | Source | Ignore unmapped points | |
Pole options | Full circle average | N/A | ||
N-point average | N/A | |||
No pole |
Numerical results of ESMF regridding
The following table presents some specific examples of numerical results of the ESMF regridding capabilities. The numerical test cases that were evaluated for this table were computed using global grids. The results were collected from the ESMF_RegridWeightGenCheck external demo. All of the results in this table were generated by regridding a second order spherical harmonic-like field F = 2 + cos^2(theta)*cos(2*phi).
Methods | Grids [source to destination] |
Largest negative weight | Interpolation average error | Conservation relative error | Notes |
---|---|---|---|---|---|
Bilinear | Lat-lon 1 degree to Lat-lon 2.5 degree |
-5.99e-15 | 3.00e-05 | N/A | This test was done with no masking and the full circle average pole option. |
Cubed sphere grid (ne30np4-t2.nc) to Lat-lon 1.9x2.5 degree (fv1.9x2.5_050503.nc) |
0 | 4.12e-05 | N/A | ||
Patch | Lat-lon 1 degree to Lat-lon 2.5 degree |
-6.20e-02 | 2.92e-05 | N/A | This test was done with no masking and the full circle average pole option. |
Cubed sphere grid (ne30np4-t2.nc) to Lat-lon 1.9x2.5 degree (fv1.9x2.5_050503.nc) |
-6.40e-02 | 3.52e-05 | N/A | ||
Conservative | Lat-lon 1 degree to Lat-lon 2.5 degree |
0 | 2.47e-04 | 3.34e-13 | This test was done with no masking and the no pole option. |
Cubed sphere grid (ne30np4-t2.nc) to Lat-lon 1.9x2.5 degree (fv1.9x2.5_050503.nc) |
0 | 3.77e-04 | 2.59e-13 |
References
[1] W.H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flannery.Numerical Recipes in C - The Art of Scientific Computing, Second Edition, pp. 123-128.
New York, Cambridge University Press, 1999.
[2] Khoei S.A. Gharehbaghi A, R.
The superconvergent patch recovery technique and data transfer operators in 3d plasticity problems.
Finite Elements in Analysis and Design, 43(8), 2007.
[3] K.C. Hung, H. Gu, Z. Zong.
A modified superconvergent patch recovery method and its application to large deformation problems.
Finite Elements in Analysis and Design, 40(5-6), 2004.