MATLAB Examples

cpomsec_interp documentation

cpomsec_interp interpolates Antarctic Ice Sheet surface elevation trends from CPOM. Get the data here and follow the SEC link.



dhdt = cpomsec_interp(lati,loni)
dhdt = cpomsec_interp(xi,yi)
dhdt = cpomsec_interp(...,'sensor',satellite)
dhdt = cpomsec_interp(...,'method',InterpolationMethod)
sigma = cpomsec_interp(...,'variable',VariableName)


dhdt = cpomsec_interp(lati,loni) gives values of surface elevation change in m/yr at the geolocations lati,loni.

dhdt = cpomsec_interp(xi,yi) as above, but for polar stereographic (ps71) coordinates xi,yi in meters.

dhdt = cpomsec_interp(...,'sensor',satellite) specifies a sensor for which the trends were obtained. Options are:

  • 'cs2' CryoSat-2: 2010-07-12 to 2015-04-01 (default)
  • 'env' Envisat: 2002-04-09 to 2010-10-18
  • 'ers2' ERS-2: 1995-05-13 to 2003-07-04
  • 'ers1' ERS-1: 1991-08-03 to 1996-06-02

dhdt = cpomsec_interp(...,'method',InterpolationMethod) specifies an interpolation method for interp2. Default is 'linear', but wherever there are grid cells with missing or wildly inaccurate grid cell, note that linear interpolation will result in a larger area of missing or inaccurate data. Depending on what you're doing, you may wish to go with 'nearest' instead.

sigma = cpomsec_interp(...,'variable',VariableName) specifies any of the following datasets:

  • 'dhdt' (m/yr) rate of surface elevation change (SEC) with time (default)
  • 'min_time' (decimal year) the earliest time in the time-series used to calculate dh/dt
  • 'max_time' (decimal year) last time in the time-series used to calculate dh/dt
  • 'slope' (degrees) calculated slope in grid cell from plane fit model processing
  • 'total_measurements_used' total number of contributing measurements used to calculate dh/dt after iterative plane fit editing
  • 'total_sat_measurements' total number of contributing satellite measurements used to calculate dh/dt before iterative plane fit
  • 'rms' (m) r.m.s of the surface corrected elevation residuals to the fit
  • 'chisqr' (m) unreduced chi-sq goodness of fit statistic of dh/dt calculation
  • 'sigma' (m/yr) 1-sigma uncertainty estimate statistic of dh/dt calculation


Below we make a map of surface elevation change for West Antarctica for the epoch 2010 to 2015.

In addition to standard Antarctic Mapping Tools functions, I'm also using the cmocean function (Thyng et al., 2016) to make the fancy red-white-blue colormap and modismoaps to underlay a MODIS Mosaic of Antarctica image.

% Make a 1500 km wide grid at 2 km resolution:
[lat,lon] = psgrid('west antarctica',1500,2);

% Get a value of dh/dt at each grid point:
dhdt = cpomsec_interp(lat,lon);

% Eliminate all data points where uncertainty exceeds 3 m/yr:
sigma = cpomsec_interp(lat,lon,'variable','sigma');
dhdt(sigma>3) = NaN;

% Make a map:
h = pcolorps(lat,lon,dhdt);
set(h,'facealpha',0.8) % makes the trend map semitransparent
axis tight off % eliminates white space, turns off tick labels
caxis([-2 2]) % sets color axis limits
cb = colorbar;
ylabel(cb,'dhdt (m yr^{-1})')
modismoaps % underlays MODIS Mosaic of Antarctica map
mapzoomps('ne') % places an inset map in the upper right corner
cmocean('-balance') % sets colormap to cmocean with red on bottom
scarlabel({'Pine Island Glacier';'Thwaites Glacier';'Crosson Ice Shelf';'Dotson Ice Shelf'},...


To use this function you must have:

1. Antarctic Mapping Tools for Matlab, found here.

2. Surface Elevation Change (SEC) data from CPOM, found here.


If you use this function, please cite the following:

Shepherd, A., Hogg, A., Muir, A., McMillan, M. (2016): Antarctic-CCI-SEC-v1.0, Surface Elevation Changes of the Antarctic Ice Sheet from Satellite Radar Altimetry, Released 29

Greene, C. A., Gwyther, D. E., & Blankenship, D. D. Antarctic Mapping Tools for Matlab. Computers & Geosciences. 104 (2017) pp.151-157.

Author Info

The cpomsec_interp function and this documentation were written by Chad A. Greene of the University of Texas at Austin, May 2018.