MATLAB Examples

albmap_data documentation

albmap_data loads data from Le Brocq et al.'s ALBMAP datasets.

See also albmap_interp.



This function requires a set of Matlab tools and the ALBMAP dataset. Get them here:


Z = albmap_data(variable)
Z = albmap_data(variable,lati,loni)
Z = albmap_data(variable,xi,yi)
Z = albmap_data(...,'buffer',extrakm)
[Z,Lat,Lon] = albmap_data(...)
[Z,x,y] = albmap_data(...,'xy')


Z = albmap_data(variable) loads a specified variable for the whole ice sheet. The variable can be:

  • 'topg' (m) bedrock topography
  • 'lsrf' (m) lower ice surface elevation
  • 'usrf' (m) 'upper ice surface elevation
  • 'mask' grounded/floating mask
  • 'firn' (m) firn correction
  • 'temp' (deg C) surface air temperature
  • 'accr' (m) accumulation - Van de berg et al
  • 'acca' (m) accumulation - Arthern et al
  • 'ghffm' (mW / m^2) geothermal heat flux - Fox Maule et al
  • 'ghfsr' (mW / m^2) geothermal heat flux - Shapiro & Ritzwoller
  • 'mask_plus' mask plus ice free areas & ice streams
  • 'glmask' grounding line uncertainty mask
  • 'bmask' bed/bathymetry modification mask
  • 'umask' thickness/surface modification mask
  • 'topg2' bedrock topography (incl. curvebed)
  • 'lsrf2' lower ice surface elevation (incl. curvebed)

Z = albmap_data(variable,lati,loni) returns only enough BedMachine data to fully encompass a set of points given by geo coordinates lati,loni. This is a good way to save computer memory, only loading, analyzing, and plotting the data you need to work in a region of interest.

Z = albmap_data(variable,xi,yi) As above, but for polar stereographic coordinates xi, yi in meters (ps71). The function automatically determines whether input coordinates are geo or polar stereographic via the islatlon function.

Z = albmap_data(...,'buffer',extrakm) as above, but adds a buffer around the input coordinates. This option is useful for loading only the data in your region of interest, plus a little extra around the sides for good measure.

[Z,Lat,Lon] = albmap_data(...) returns gridded geo coordinates corresponding to each pixel in Z.

[Z,x,y] = albmap_data(...,'xy') returns polar stereographic meters (ps71) as 1d arrays x,y when the 'xy' tag is included.

Example 1: An image

Here's a whole continent of bed elevation data:

bed = albmap_data('topg');

cb = colorbar;
ylabel(cb,'bed elevation (m)')

Example 2: Geolocated data

Here's the same bed topography, but with corresponding coordinates. And let's make it nice with hillshade and a crameri colormap:

[bed,Lat,Lon] = albmap_data('topg');

axis tight off
cb = colorbar;
ylabel(cb,'bed elevation (m)')

Example 3: Masking

Now do the same as above, but mask out everything that is not grounded ice:

% Load the mask:
mask = albmap_data('mask');

% Set non-grounded-ice pixels to NaN:
bed(mask~=1) = NaN;

axis tight off
cb = colorbar;
ylabel(cb,'bed elevation (m)')

Add some surface elevation contours:

% Load surface elevation data:
sfz = albmap_data('usrf');

% Plot contours:

% recenter colormap:

Example 4: Regional analysis

Suppose you have eight GPS receivers around Amery Ice Shelf, and let's say these are their locations:

lat = -71 + 1.5*randn(8,1);
lon = 70 + 2*randn(8,1);


axis off

You can get just enough ALBMAP data to fill this map by specifying the locations of the GPS receivers (and include a few extra kilometers as a buffer) or you can just specify the limits of the current axes with the built-in xlim and ylim functions:

% Load ALBMAP surface temperature data:
[T,x,y] = albmap_data('temp',xlim,ylim,'xy');

hold on
h = imagesc(x,y,T);
uistack(h,'bottom') % places temperature on bottom

cmocean thermal
cb = colorbar;
ylabel(cb,'surface temperature (\circC)')


If you use ALBMAP data, please cite the Le Brocq paper listed below. And if this function is useful for you, please do me a kindness and cite my Antarctic Mapping Tools paper.

Le Brocq, Anne M; Payne, Antony J; Vieli, Andreas (2010): An improved Antarctic dataset for high resolution numerical ice sheet models (ALBMAP v1). Earth System Science Data, 2(2), 247-260,

Le Brocq, Anne M; Payne, Antony J; Vieli, Andreas (2010): Antarctic dataset in NetCDF format. PANGAEA,

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

Author Info

This function and supporting documentation were written by Chad A. Greene, October 2018.