IRData: Accessing synoptic-timescale Reanalysis Data with Iris

This package extends Iris in providing tools for accessing reanalysis data. It uses Iris data structures and methods for handling the data, and extends it by providing functions for using synoptic-timescale reanalysis data from several sources.

The idea is have an API for loading synoptic-timescale reanalysis data into an iris.cube.Cube. That is, for a requirement like:

“From the Twentieth Century Reanalysis version 2c, load the 2m air temperature at 7am (UTC) on 16th October 1987.”

to have code that would find and download the data, and then provide it as a cube, interpolating to the requested time as necessary.

This module provides such an API, for several reanalyses. The request above is:

import datetime
import IRData.twcr as twcr

Data is loaded in two steps:

  1. First a block of data is ‘fetched’ from the reanalysis master archive and stored on local disk (in directory $SCRATCH). This step is slow (archives are typically on tape and may be on the other side of the world). Data is fetched in 1-calendar-month blocks (1 year blocks for 20CR2c).
  2. Then the data for a single point in time is ‘loaded’ from the local disc copy. This step is fast.

There is one sub-package for each of several data sources; each with fetch methods for getting a copy of the data from a remote server to a local filesystem, and load methods for loading iris cubes from the fetched data.

Installation instructions:

Data sources:

Note that this is one person’s personal library: I have no resources for support or extension beyond what is necessary for my own research. You are welcome to re-use any part of it (subject to the license, see below), but you would almost certainly be better advised to copy any bits you like and incoporate them into your own codebase than to rely on the stability of this.

The code in this library is licensed under the terms of the GNU Lesser General Public License. The documentation under the terms of the Open Government Licence.