Multisource datasets integration: population weighted temperature from ERA5 and¶

This notebook will provide you guidance on how to access and use the https://data.earthdatahub.destine.eu/era5/reanalysis-era5-single-levels-v0.zarr dataset on Earth Data Hub, together with the Hybrid gridded demographic data for the world dataset https://data.earthdatahub.destine.eu/derived-GPWv4-Histsoc/demographics-hybrid-1950-2020-15-min-v0.

ERA5 single level data contains variables describing the global climate and weather for the past 8 decades. Data is available from 1940 onwards on a regular lat-lon grid of 0.25 degrees.

The Hybrid gridded demographic totals for the world contains the 1950-2020 demographic given as 5-year population bands at a 0.25 degree grid resolution.

Goal of this tutorial¶

The goal of this tutorial is to visualize the area-averaged temperature in Europe as a function of time, and compare it with the population-averaged temperature.

What you will learn:¶

  • how to access the data
  • select and reduce the data
  • use different datasets together
  • plot the results

To access datasets on Earth Data Hub (EDH) you need to instruct your tools (xarray, Zarr, etc.) to use EDH personal access token when downloading the data.

To obtain a personal access token you first need to register to the Destination Earth platform platform. Then you can go to Earth Data Hub account settings where you can find your default personal access token or create others. After retrieving your personal access token, please cut and paste it below: ⤵

In [1]:
PAT = "your_personal_access_token"

# e.g. PAT="edh_pat_44bbb7e9192a4c6bb47ddf07d07564eee5d17de8dfc48f7118f88e3bc4a4157f8fe2403f5aa0a2d53441b6922ea9a33a"

Working with EDH data¶

Datasets on Earth Data Hub are often very large and remotely hosted. Typical use imply a selection of the data followed by one or more reduction steps to be performed in a local or distributed Dask environment.

The structure of a workflow that uses EDH data tipically looks like this:

  • data access
  • data selection
  • (optional) data reduction
  • data download
  • further operations and visualization

Xarray and Dask work together following a lazy principle. This means that when you access and manipulate a Zarr store the data is in not immediately downloaded and loaded in memory. Instead, Dask constructs a task graph that represents the operations to be performed. A smart user will first reduce the amount of data that needs to be downloaded and explicitly call compute() on it. Once the compute() operation is complete the data is loaded into memory and available for subsequent fast processing.

Preparing the population data¶

1. Data access¶

To access the data, only the dataset metadata must be downloaded. Xarray does this automatically when you access a Zarr dataset.

In [2]:
import xarray as xr

world_population = xr.open_dataset(
    "https://hedp-data.bopen.eu/public/derived-GPWv4-Histsoc/demographics-hybrid-1950-2020-15-min-v0",
    chunks={},
    engine="zarr",
)
world_population = world_population.demographic_totals
world_population
Out[2]:
<xarray.DataArray 'demographic_totals' (latitude: 720, longitude: 1440,
                                        age_band_lower_bound: 14, year: 71)> Size: 4GB
dask.array<open_dataset-demographic_totals, shape=(720, 1440, 14, 71), dtype=float32, chunksize=(64, 64, 14, 71), chunktype=numpy.ndarray>
Coordinates:
  * age_band_lower_bound  (age_band_lower_bound) int64 112B 0 5 10 ... 55 60 65
  * latitude              (latitude) float64 6kB 90.0 89.75 ... -89.5 -89.75
  * longitude             (longitude) float64 12kB 0.0 0.25 0.5 ... 359.5 359.8
  * year                  (year) int64 568B 1950 1951 1952 ... 2018 2019 2020
xarray.DataArray
'demographic_totals'
  • latitude: 720
  • longitude: 1440
  • age_band_lower_bound: 14
  • year: 71
  • dask.array<chunksize=(64, 64, 14, 71), meta=np.ndarray>
    Array Chunk
    Bytes 3.84 GiB 15.53 MiB
    Shape (720, 1440, 14, 71) (64, 64, 14, 71)
    Dask graph 276 chunks in 2 graph layers
    Data type float32 numpy.ndarray
    720 1 71 14 1440
    • age_band_lower_bound
      (age_band_lower_bound)
      int64
      0 5 10 15 20 25 ... 45 50 55 60 65
      array([ 0,  5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65])
    • latitude
      (latitude)
      float64
      90.0 89.75 89.5 ... -89.5 -89.75
      array([ 90.  ,  89.75,  89.5 , ..., -89.25, -89.5 , -89.75])
    • longitude
      (longitude)
      float64
      0.0 0.25 0.5 ... 359.2 359.5 359.8
      array([0.0000e+00, 2.5000e-01, 5.0000e-01, ..., 3.5925e+02, 3.5950e+02,
             3.5975e+02])
    • year
      (year)
      int64
      1950 1951 1952 ... 2018 2019 2020
      array([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020])
    • age_band_lower_bound
      PandasIndex
      PandasIndex(Index([0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65], dtype='int64', name='age_band_lower_bound'))
    • latitude
      PandasIndex
      PandasIndex(Index([  90.0,  89.75,   89.5,  89.25,   89.0,  88.75,   88.5,  88.25,   88.0,
              87.75,
             ...
              -87.5, -87.75,  -88.0, -88.25,  -88.5, -88.75,  -89.0, -89.25,  -89.5,
             -89.75],
            dtype='float64', name='latitude', length=720))
    • longitude
      PandasIndex
      PandasIndex(Index([   0.0,   0.25,    0.5,   0.75,    1.0,   1.25,    1.5,   1.75,    2.0,
               2.25,
             ...
              357.5, 357.75,  358.0, 358.25,  358.5, 358.75,  359.0, 359.25,  359.5,
             359.75],
            dtype='float64', name='longitude', length=1440))
    • year
      PandasIndex
      PandasIndex(Index([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020],
            dtype='int64', name='year'))

The longitude of the dataset is set from 0 to 360 degrees, which makes it uncomfortable to deal with data in the European area when using xarray:

In [3]:
world_population.sel(age_band_lower_bound=0, year=2020).plot(vmax=50_000, cmap="YlGnBu_r")
Out[3]:
<matplotlib.collections.QuadMesh at 0x7f571d6dcf50>
No description has been provided for this image

We can roll the longitude to a -180 to 180 extent:

In [4]:
xr.set_options(keep_attrs=True)

world_population = world_population.assign_coords(longitude=(((world_population.longitude + 180) % 360) - 180))
world_population = world_population.roll(longitude=int(len(world_population.longitude) / 2), roll_coords=True)
world_population
Out[4]:
<xarray.DataArray 'demographic_totals' (latitude: 720, longitude: 1440,
                                        age_band_lower_bound: 14, year: 71)> Size: 4GB
dask.array<rechunk-merge, shape=(720, 1440, 14, 71), dtype=float32, chunksize=(64, 64, 14, 71), chunktype=numpy.ndarray>
Coordinates:
  * age_band_lower_bound  (age_band_lower_bound) int64 112B 0 5 10 ... 55 60 65
  * latitude              (latitude) float64 6kB 90.0 89.75 ... -89.5 -89.75
  * year                  (year) int64 568B 1950 1951 1952 ... 2018 2019 2020
  * longitude             (longitude) float64 12kB -180.0 -179.8 ... 179.5 179.8
xarray.DataArray
'demographic_totals'
  • latitude: 720
  • longitude: 1440
  • age_band_lower_bound: 14
  • year: 71
  • dask.array<chunksize=(64, 64, 14, 71), meta=np.ndarray>
    Array Chunk
    Bytes 3.84 GiB 15.53 MiB
    Shape (720, 1440, 14, 71) (64, 64, 14, 71)
    Dask graph 276 chunks in 6 graph layers
    Data type float32 numpy.ndarray
    720 1 71 14 1440
    • age_band_lower_bound
      (age_band_lower_bound)
      int64
      0 5 10 15 20 25 ... 45 50 55 60 65
      array([ 0,  5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65])
    • latitude
      (latitude)
      float64
      90.0 89.75 89.5 ... -89.5 -89.75
      array([ 90.  ,  89.75,  89.5 , ..., -89.25, -89.5 , -89.75])
    • year
      (year)
      int64
      1950 1951 1952 ... 2018 2019 2020
      array([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020])
    • longitude
      (longitude)
      float64
      -180.0 -179.8 ... 179.5 179.8
      array([-180.  , -179.75, -179.5 , ...,  179.25,  179.5 ,  179.75])
    • age_band_lower_bound
      PandasIndex
      PandasIndex(Index([0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65], dtype='int64', name='age_band_lower_bound'))
    • latitude
      PandasIndex
      PandasIndex(Index([  90.0,  89.75,   89.5,  89.25,   89.0,  88.75,   88.5,  88.25,   88.0,
              87.75,
             ...
              -87.5, -87.75,  -88.0, -88.25,  -88.5, -88.75,  -89.0, -89.25,  -89.5,
             -89.75],
            dtype='float64', name='latitude', length=720))
    • year
      PandasIndex
      PandasIndex(Index([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020],
            dtype='int64', name='year'))
    • longitude
      PandasIndex
      PandasIndex(Index([ -180.0, -179.75,  -179.5, -179.25,  -179.0, -178.75,  -178.5, -178.25,
              -178.0, -177.75,
             ...
               177.5,  177.75,   178.0,  178.25,   178.5,  178.75,   179.0,  179.25,
               179.5,  179.75],
            dtype='float64', name='longitude', length=1440))
In [5]:
world_population.sel(age_band_lower_bound=0, year=2020).plot(vmax=50_000, cmap="YlGnBu_r")
Out[5]:
<matplotlib.collections.QuadMesh at 0x7f571d72eb10>
No description has been provided for this image

2. Data selection¶

On the world data, we perform a geographical selection corresponding to continental Europe:

In [6]:
europe_population = world_population.sel(latitude=slice(71, 36), longitude=slice(-10,35))
europe_population
Out[6]:
<xarray.DataArray 'demographic_totals' (latitude: 141, longitude: 181,
                                        age_band_lower_bound: 14, year: 71)> Size: 101MB
dask.array<getitem, shape=(141, 181, 14, 71), dtype=float32, chunksize=(64, 64, 14, 71), chunktype=numpy.ndarray>
Coordinates:
  * age_band_lower_bound  (age_band_lower_bound) int64 112B 0 5 10 ... 55 60 65
  * latitude              (latitude) float64 1kB 71.0 70.75 70.5 ... 36.25 36.0
  * year                  (year) int64 568B 1950 1951 1952 ... 2018 2019 2020
  * longitude             (longitude) float64 1kB -10.0 -9.75 ... 34.75 35.0
xarray.DataArray
'demographic_totals'
  • latitude: 141
  • longitude: 181
  • age_band_lower_bound: 14
  • year: 71
  • dask.array<chunksize=(52, 24, 14, 71), meta=np.ndarray>
    Array Chunk
    Bytes 96.77 MiB 15.53 MiB
    Shape (141, 181, 14, 71) (64, 64, 14, 71)
    Dask graph 12 chunks in 7 graph layers
    Data type float32 numpy.ndarray
    141 1 71 14 181
    • age_band_lower_bound
      (age_band_lower_bound)
      int64
      0 5 10 15 20 25 ... 45 50 55 60 65
      array([ 0,  5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65])
    • latitude
      (latitude)
      float64
      71.0 70.75 70.5 ... 36.5 36.25 36.0
      array([71.  , 70.75, 70.5 , 70.25, 70.  , 69.75, 69.5 , 69.25, 69.  , 68.75,
             68.5 , 68.25, 68.  , 67.75, 67.5 , 67.25, 67.  , 66.75, 66.5 , 66.25,
             66.  , 65.75, 65.5 , 65.25, 65.  , 64.75, 64.5 , 64.25, 64.  , 63.75,
             63.5 , 63.25, 63.  , 62.75, 62.5 , 62.25, 62.  , 61.75, 61.5 , 61.25,
             61.  , 60.75, 60.5 , 60.25, 60.  , 59.75, 59.5 , 59.25, 59.  , 58.75,
             58.5 , 58.25, 58.  , 57.75, 57.5 , 57.25, 57.  , 56.75, 56.5 , 56.25,
             56.  , 55.75, 55.5 , 55.25, 55.  , 54.75, 54.5 , 54.25, 54.  , 53.75,
             53.5 , 53.25, 53.  , 52.75, 52.5 , 52.25, 52.  , 51.75, 51.5 , 51.25,
             51.  , 50.75, 50.5 , 50.25, 50.  , 49.75, 49.5 , 49.25, 49.  , 48.75,
             48.5 , 48.25, 48.  , 47.75, 47.5 , 47.25, 47.  , 46.75, 46.5 , 46.25,
             46.  , 45.75, 45.5 , 45.25, 45.  , 44.75, 44.5 , 44.25, 44.  , 43.75,
             43.5 , 43.25, 43.  , 42.75, 42.5 , 42.25, 42.  , 41.75, 41.5 , 41.25,
             41.  , 40.75, 40.5 , 40.25, 40.  , 39.75, 39.5 , 39.25, 39.  , 38.75,
             38.5 , 38.25, 38.  , 37.75, 37.5 , 37.25, 37.  , 36.75, 36.5 , 36.25,
             36.  ])
    • year
      (year)
      int64
      1950 1951 1952 ... 2018 2019 2020
      array([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020])
    • longitude
      (longitude)
      float64
      -10.0 -9.75 -9.5 ... 34.75 35.0
      array([-10.  ,  -9.75,  -9.5 ,  -9.25,  -9.  ,  -8.75,  -8.5 ,  -8.25,  -8.  ,
              -7.75,  -7.5 ,  -7.25,  -7.  ,  -6.75,  -6.5 ,  -6.25,  -6.  ,  -5.75,
              -5.5 ,  -5.25,  -5.  ,  -4.75,  -4.5 ,  -4.25,  -4.  ,  -3.75,  -3.5 ,
              -3.25,  -3.  ,  -2.75,  -2.5 ,  -2.25,  -2.  ,  -1.75,  -1.5 ,  -1.25,
              -1.  ,  -0.75,  -0.5 ,  -0.25,   0.  ,   0.25,   0.5 ,   0.75,   1.  ,
               1.25,   1.5 ,   1.75,   2.  ,   2.25,   2.5 ,   2.75,   3.  ,   3.25,
               3.5 ,   3.75,   4.  ,   4.25,   4.5 ,   4.75,   5.  ,   5.25,   5.5 ,
               5.75,   6.  ,   6.25,   6.5 ,   6.75,   7.  ,   7.25,   7.5 ,   7.75,
               8.  ,   8.25,   8.5 ,   8.75,   9.  ,   9.25,   9.5 ,   9.75,  10.  ,
              10.25,  10.5 ,  10.75,  11.  ,  11.25,  11.5 ,  11.75,  12.  ,  12.25,
              12.5 ,  12.75,  13.  ,  13.25,  13.5 ,  13.75,  14.  ,  14.25,  14.5 ,
              14.75,  15.  ,  15.25,  15.5 ,  15.75,  16.  ,  16.25,  16.5 ,  16.75,
              17.  ,  17.25,  17.5 ,  17.75,  18.  ,  18.25,  18.5 ,  18.75,  19.  ,
              19.25,  19.5 ,  19.75,  20.  ,  20.25,  20.5 ,  20.75,  21.  ,  21.25,
              21.5 ,  21.75,  22.  ,  22.25,  22.5 ,  22.75,  23.  ,  23.25,  23.5 ,
              23.75,  24.  ,  24.25,  24.5 ,  24.75,  25.  ,  25.25,  25.5 ,  25.75,
              26.  ,  26.25,  26.5 ,  26.75,  27.  ,  27.25,  27.5 ,  27.75,  28.  ,
              28.25,  28.5 ,  28.75,  29.  ,  29.25,  29.5 ,  29.75,  30.  ,  30.25,
              30.5 ,  30.75,  31.  ,  31.25,  31.5 ,  31.75,  32.  ,  32.25,  32.5 ,
              32.75,  33.  ,  33.25,  33.5 ,  33.75,  34.  ,  34.25,  34.5 ,  34.75,
              35.  ])
    • age_band_lower_bound
      PandasIndex
      PandasIndex(Index([0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65], dtype='int64', name='age_band_lower_bound'))
    • latitude
      PandasIndex
      PandasIndex(Index([ 71.0, 70.75,  70.5, 70.25,  70.0, 69.75,  69.5, 69.25,  69.0, 68.75,
             ...
             38.25,  38.0, 37.75,  37.5, 37.25,  37.0, 36.75,  36.5, 36.25,  36.0],
            dtype='float64', name='latitude', length=141))
    • year
      PandasIndex
      PandasIndex(Index([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020],
            dtype='int64', name='year'))
    • longitude
      PandasIndex
      PandasIndex(Index([-10.0, -9.75,  -9.5, -9.25,  -9.0, -8.75,  -8.5, -8.25,  -8.0, -7.75,
             ...
             32.75,  33.0, 33.25,  33.5, 33.75,  34.0, 34.25,  34.5, 34.75,  35.0],
            dtype='float64', name='longitude', length=181))

This is a relatively small dataset, we don't need to worry too much about the download size.

3. Data reduction¶

Next, we calculate the total population for each and every year. Notice that the data spans fron 1950 to 2020.

In [7]:
europe_population_bands_total = europe_population.sum("age_band_lower_bound")
europe_population_bands_total
Out[7]:
<xarray.DataArray 'demographic_totals' (latitude: 141, longitude: 181, year: 71)> Size: 7MB
dask.array<sum-aggregate, shape=(141, 181, 71), dtype=float32, chunksize=(64, 64, 71), chunktype=numpy.ndarray>
Coordinates:
  * latitude   (latitude) float64 1kB 71.0 70.75 70.5 70.25 ... 36.5 36.25 36.0
  * year       (year) int64 568B 1950 1951 1952 1953 ... 2017 2018 2019 2020
  * longitude  (longitude) float64 1kB -10.0 -9.75 -9.5 ... 34.5 34.75 35.0
xarray.DataArray
'demographic_totals'
  • latitude: 141
  • longitude: 181
  • year: 71
  • dask.array<chunksize=(52, 24, 71), meta=np.ndarray>
    Array Chunk
    Bytes 6.91 MiB 1.11 MiB
    Shape (141, 181, 71) (64, 64, 71)
    Dask graph 12 chunks in 12 graph layers
    Data type float32 numpy.ndarray
    71 181 141
    • latitude
      (latitude)
      float64
      71.0 70.75 70.5 ... 36.5 36.25 36.0
      array([71.  , 70.75, 70.5 , 70.25, 70.  , 69.75, 69.5 , 69.25, 69.  , 68.75,
             68.5 , 68.25, 68.  , 67.75, 67.5 , 67.25, 67.  , 66.75, 66.5 , 66.25,
             66.  , 65.75, 65.5 , 65.25, 65.  , 64.75, 64.5 , 64.25, 64.  , 63.75,
             63.5 , 63.25, 63.  , 62.75, 62.5 , 62.25, 62.  , 61.75, 61.5 , 61.25,
             61.  , 60.75, 60.5 , 60.25, 60.  , 59.75, 59.5 , 59.25, 59.  , 58.75,
             58.5 , 58.25, 58.  , 57.75, 57.5 , 57.25, 57.  , 56.75, 56.5 , 56.25,
             56.  , 55.75, 55.5 , 55.25, 55.  , 54.75, 54.5 , 54.25, 54.  , 53.75,
             53.5 , 53.25, 53.  , 52.75, 52.5 , 52.25, 52.  , 51.75, 51.5 , 51.25,
             51.  , 50.75, 50.5 , 50.25, 50.  , 49.75, 49.5 , 49.25, 49.  , 48.75,
             48.5 , 48.25, 48.  , 47.75, 47.5 , 47.25, 47.  , 46.75, 46.5 , 46.25,
             46.  , 45.75, 45.5 , 45.25, 45.  , 44.75, 44.5 , 44.25, 44.  , 43.75,
             43.5 , 43.25, 43.  , 42.75, 42.5 , 42.25, 42.  , 41.75, 41.5 , 41.25,
             41.  , 40.75, 40.5 , 40.25, 40.  , 39.75, 39.5 , 39.25, 39.  , 38.75,
             38.5 , 38.25, 38.  , 37.75, 37.5 , 37.25, 37.  , 36.75, 36.5 , 36.25,
             36.  ])
    • year
      (year)
      int64
      1950 1951 1952 ... 2018 2019 2020
      array([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020])
    • longitude
      (longitude)
      float64
      -10.0 -9.75 -9.5 ... 34.75 35.0
      array([-10.  ,  -9.75,  -9.5 ,  -9.25,  -9.  ,  -8.75,  -8.5 ,  -8.25,  -8.  ,
              -7.75,  -7.5 ,  -7.25,  -7.  ,  -6.75,  -6.5 ,  -6.25,  -6.  ,  -5.75,
              -5.5 ,  -5.25,  -5.  ,  -4.75,  -4.5 ,  -4.25,  -4.  ,  -3.75,  -3.5 ,
              -3.25,  -3.  ,  -2.75,  -2.5 ,  -2.25,  -2.  ,  -1.75,  -1.5 ,  -1.25,
              -1.  ,  -0.75,  -0.5 ,  -0.25,   0.  ,   0.25,   0.5 ,   0.75,   1.  ,
               1.25,   1.5 ,   1.75,   2.  ,   2.25,   2.5 ,   2.75,   3.  ,   3.25,
               3.5 ,   3.75,   4.  ,   4.25,   4.5 ,   4.75,   5.  ,   5.25,   5.5 ,
               5.75,   6.  ,   6.25,   6.5 ,   6.75,   7.  ,   7.25,   7.5 ,   7.75,
               8.  ,   8.25,   8.5 ,   8.75,   9.  ,   9.25,   9.5 ,   9.75,  10.  ,
              10.25,  10.5 ,  10.75,  11.  ,  11.25,  11.5 ,  11.75,  12.  ,  12.25,
              12.5 ,  12.75,  13.  ,  13.25,  13.5 ,  13.75,  14.  ,  14.25,  14.5 ,
              14.75,  15.  ,  15.25,  15.5 ,  15.75,  16.  ,  16.25,  16.5 ,  16.75,
              17.  ,  17.25,  17.5 ,  17.75,  18.  ,  18.25,  18.5 ,  18.75,  19.  ,
              19.25,  19.5 ,  19.75,  20.  ,  20.25,  20.5 ,  20.75,  21.  ,  21.25,
              21.5 ,  21.75,  22.  ,  22.25,  22.5 ,  22.75,  23.  ,  23.25,  23.5 ,
              23.75,  24.  ,  24.25,  24.5 ,  24.75,  25.  ,  25.25,  25.5 ,  25.75,
              26.  ,  26.25,  26.5 ,  26.75,  27.  ,  27.25,  27.5 ,  27.75,  28.  ,
              28.25,  28.5 ,  28.75,  29.  ,  29.25,  29.5 ,  29.75,  30.  ,  30.25,
              30.5 ,  30.75,  31.  ,  31.25,  31.5 ,  31.75,  32.  ,  32.25,  32.5 ,
              32.75,  33.  ,  33.25,  33.5 ,  33.75,  34.  ,  34.25,  34.5 ,  34.75,
              35.  ])
    • latitude
      PandasIndex
      PandasIndex(Index([ 71.0, 70.75,  70.5, 70.25,  70.0, 69.75,  69.5, 69.25,  69.0, 68.75,
             ...
             38.25,  38.0, 37.75,  37.5, 37.25,  37.0, 36.75,  36.5, 36.25,  36.0],
            dtype='float64', name='latitude', length=141))
    • year
      PandasIndex
      PandasIndex(Index([1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
             1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
             1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
             1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
             1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
             2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020],
            dtype='int64', name='year'))
    • longitude
      PandasIndex
      PandasIndex(Index([-10.0, -9.75,  -9.5, -9.25,  -9.0, -8.75,  -8.5, -8.25,  -8.0, -7.75,
             ...
             32.75,  33.0, 33.25,  33.5, 33.75,  34.0, 34.25,  34.5, 34.75,  35.0],
            dtype='float64', name='longitude', length=181))

4. Data download¶

This is the phase where we explicitly trigger the download of the data. To do so we will call compute() on the European total population. The result will be small enought to easily fit into memory. Remember to assign the return of the compute() function to a new variable, so that the data is kept in memory.

We can measure the time it takes:

In [8]:
%%time

europe_population_bands_total_computed = europe_population_bands_total.compute()
CPU times: user 874 ms, sys: 255 ms, total: 1.13 s
Wall time: 865 ms

Preparing ERA5-single levels data¶

We will now follow the same logic to load ERA5 single levels data.

In [9]:
era5_single_levels = xr.open_dataset(
    f"https://edh:{PAT}@data.earthdatahub.destine.eu/era5/reanalysis-era5-single-levels-v0.zarr",
    chunks={},
    engine="zarr",
    storage_options={"client_kwargs": {"trust_env": True}},
)
era5_single_levels
Out[9]:
<xarray.Dataset> Size: 256TB
Dimensions:           (valid_time: 742824, latitude: 721, longitude: 1440)
Coordinates:
    entireAtmosphere  float32 4B ...
  * latitude          (latitude) float64 6kB 90.0 89.75 89.5 ... -89.75 -90.0
  * longitude         (longitude) float64 12kB 0.0 0.25 0.5 ... 359.5 359.8
    number            int64 8B ...
    surface           float64 8B ...
  * valid_time        (valid_time) datetime64[ns] 6MB 1940-01-01 ... 2024-09-...
Data variables: (12/83)
    alnid             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    alnip             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    aluvd             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    aluvp             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    blh               (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    cdir              (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    ...                ...
    viiwe             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    viiwn             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    vilwd             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    vilwe             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    vilwn             (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    z                 (valid_time, latitude, longitude) float32 3TB dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
Attributes:
    Conventions:             CF-1.7
    GRIB_centre:             ecmf
    GRIB_centreDescription:  European Centre for Medium-Range Weather Forecasts
    GRIB_edition:            1
    GRIB_subCentre:          0
    history:                 2024-10-02T12:52 GRIB to CDM+CF via cfgrib-0.9.1...
    institution:             European Centre for Medium-Range Weather Forecasts
xarray.Dataset
    • valid_time: 742824
    • latitude: 721
    • longitude: 1440
    • entireAtmosphere
      ()
      float32
      ...
      long_name :
      original GRIB coordinate for key: level(entireAtmosphere)
      units :
      1
      [1 values with dtype=float32]
    • latitude
      (latitude)
      float64
      90.0 89.75 89.5 ... -89.75 -90.0
      long_name :
      latitude
      standard_name :
      latitude
      stored_direction :
      decreasing
      units :
      degrees_north
      array([ 90.  ,  89.75,  89.5 , ..., -89.5 , -89.75, -90.  ])
    • longitude
      (longitude)
      float64
      0.0 0.25 0.5 ... 359.2 359.5 359.8
      long_name :
      longitude
      standard_name :
      longitude
      units :
      degrees_east
      array([0.0000e+00, 2.5000e-01, 5.0000e-01, ..., 3.5925e+02, 3.5950e+02,
             3.5975e+02])
    • number
      ()
      int64
      ...
      long_name :
      ensemble member numerical id
      standard_name :
      realization
      units :
      1
      [1 values with dtype=int64]
    • surface
      ()
      float64
      ...
      long_name :
      original GRIB coordinate for key: level(surface)
      units :
      1
      [1 values with dtype=float64]
    • valid_time
      (valid_time)
      datetime64[ns]
      1940-01-01 ... 2024-09-26T23:00:00
      array(['1940-01-01T00:00:00.000000000', '1940-01-01T01:00:00.000000000',
             '1940-01-01T02:00:00.000000000', ..., '2024-09-26T21:00:00.000000000',
             '2024-09-26T22:00:00.000000000', '2024-09-26T23:00:00.000000000'],
            dtype='datetime64[ns]')
    • alnid
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      alnid
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Near IR albedo for diffuse radiation (climatological)
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      18
      GRIB_shortName :
      alnid
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      Near IR albedo for diffuse radiation (climatological)
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • alnip
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      alnip
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Near IR albedo for direct radiation (climatological)
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      17
      GRIB_shortName :
      alnip
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      Near IR albedo for direct radiation (climatological)
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • aluvd
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      aluvd
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      UV visible albedo for diffuse radiation (climatological)
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      16
      GRIB_shortName :
      aluvd
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      UV visible albedo for diffuse radiation (climatological)
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • aluvp
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      aluvp
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      UV visible albedo for direct radiation (climatological)
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      15
      GRIB_shortName :
      aluvp
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      UV visible albedo for direct radiation (climatological)
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • blh
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      blh
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Boundary layer height
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      159
      GRIB_shortName :
      blh
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Boundary layer height
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • cdir
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      cdir
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface direct short-wave radiation, clear sky
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228022
      GRIB_shortName :
      cdir
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface direct short-wave radiation, clear sky
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • cl
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      cl
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake cover
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      26
      GRIB_shortName :
      cl
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      Lake cover
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • cp
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      lwe_thickness_of_convective_precipitation_amount
      GRIB_cfVarName :
      cp
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Convective precipitation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      143
      GRIB_shortName :
      cp
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Convective precipitation
      standard_name :
      lwe_thickness_of_convective_precipitation_amount
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • crr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      crr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Convective rain rate
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228218
      GRIB_shortName :
      crr
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2 s**-1
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Convective rain rate
      standard_name :
      unknown
      units :
      kg m**-2 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • d2m
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      d2m
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      2 metre dewpoint temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      168
      GRIB_shortName :
      2d
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      2 metre dewpoint temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • dl
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      dl
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake total depth
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228007
      GRIB_shortName :
      dl
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Lake total depth
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • e
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      lwe_thickness_of_water_evaporation_amount
      GRIB_cfVarName :
      e
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Evaporation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      182
      GRIB_shortName :
      e
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m of water equivalent
      last_restart_dim_updated :
      742824
      long_name :
      Evaporation
      standard_name :
      lwe_thickness_of_water_evaporation_amount
      units :
      m of water equivalent
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • fdir
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      fdir
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Total sky direct short-wave (solar) radiation at surface
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228021
      GRIB_shortName :
      fdir
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Total sky direct short-wave (solar) radiation at surface
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • flsr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      flsr
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Forecast logarithm of surface roughness for heat
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      245
      GRIB_shortName :
      flsr
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      Numeric
      last_restart_dim_updated :
      742824
      long_name :
      Forecast logarithm of surface roughness for heat
      standard_name :
      unknown
      units :
      Numeric
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • hcc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      hcc
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      High cloud cover
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      188
      GRIB_shortName :
      hcc
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      High cloud cover
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ie
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ie
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Instantaneous moisture flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      232
      GRIB_shortName :
      ie
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2 s**-1
      last_restart_dim_updated :
      742824
      long_name :
      Instantaneous moisture flux
      standard_name :
      unknown
      units :
      kg m**-2 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ilspf
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ilspf
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Instantaneous large-scale surface precipitation fraction
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228217
      GRIB_shortName :
      ilspf
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Instantaneous large-scale surface precipitation fraction
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • inss
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      inss
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Instantaneous northward turbulent surface stress
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      230
      GRIB_shortName :
      inss
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      N m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Instantaneous northward turbulent surface stress
      standard_name :
      unknown
      units :
      N m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ishf
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ishf
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Instantaneous surface sensible heat flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      231
      GRIB_shortName :
      ishf
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      W m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Instantaneous surface sensible heat flux
      standard_name :
      unknown
      units :
      W m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • istl1
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      istl1
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Ice temperature layer 1
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      35
      GRIB_shortName :
      istl1
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      depthBelowLandLayer
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Ice temperature layer 1
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • istl2
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      istl2
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Ice temperature layer 2
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      36
      GRIB_shortName :
      istl2
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      depthBelowLandLayer
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Ice temperature layer 2
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • istl3
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      istl3
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Ice temperature layer 3
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      37
      GRIB_shortName :
      istl3
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      depthBelowLandLayer
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Ice temperature layer 3
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • istl4
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      istl4
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Ice temperature layer 4
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      38
      GRIB_shortName :
      istl4
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      depthBelowLandLayer
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Ice temperature layer 4
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lblt
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lblt
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake bottom temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228010
      GRIB_shortName :
      lblt
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Lake bottom temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lcc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lcc
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Low cloud cover
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      186
      GRIB_shortName :
      lcc
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      Low cloud cover
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • licd
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      licd
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake ice total depth
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228014
      GRIB_shortName :
      licd
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Lake ice total depth
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lict
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lict
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake ice surface temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228013
      GRIB_shortName :
      lict
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Lake ice surface temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lmld
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lmld
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake mix-layer depth
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228009
      GRIB_shortName :
      lmld
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Lake mix-layer depth
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lmlt
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lmlt
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake mix-layer temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228008
      GRIB_shortName :
      lmlt
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Lake mix-layer temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lshf
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lshf
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake shape factor
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228012
      GRIB_shortName :
      lshf
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      dimensionless
      last_restart_dim_updated :
      742824
      long_name :
      Lake shape factor
      standard_name :
      unknown
      units :
      dimensionless
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lsp
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      lwe_thickness_of_stratiform_precipitation_amount
      GRIB_cfVarName :
      lsp
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Large-scale precipitation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      142
      GRIB_shortName :
      lsp
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Large-scale precipitation
      standard_name :
      lwe_thickness_of_stratiform_precipitation_amount
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lspf
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lspf
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Large-scale precipitation fraction
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      50
      GRIB_shortName :
      lspf
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      s
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Large-scale precipitation fraction
      standard_name :
      unknown
      units :
      s
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • lsrr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      lsrr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Large scale rain rate
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228219
      GRIB_shortName :
      lsrr
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2 s**-1
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Large scale rain rate
      standard_name :
      unknown
      units :
      kg m**-2 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ltlt
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ltlt
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Lake total layer temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228011
      GRIB_shortName :
      ltlt
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Lake total layer temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • mcc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      mcc
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Medium cloud cover
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      187
      GRIB_shortName :
      mcc
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      Medium cloud cover
      standard_name :
      unknown
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • mn2t
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      mn2t
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Minimum temperature at 2 metres since previous post-processing
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      202
      GRIB_shortName :
      mn2t
      GRIB_stepType :
      max
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Minimum temperature at 2 metres since previous post-processing
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • mntpr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      mntpr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Minimum total precipitation rate since previous post-processing
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228227
      GRIB_shortName :
      mntpr
      GRIB_stepType :
      max
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2 s**-1
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Minimum total precipitation rate since previous post-processing
      standard_name :
      unknown
      units :
      kg m**-2 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • msl
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      air_pressure_at_mean_sea_level
      GRIB_cfVarName :
      msl
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Mean sea level pressure
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      151
      GRIB_shortName :
      msl
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      Pa
      last_restart_dim_updated :
      742824
      long_name :
      Mean sea level pressure
      standard_name :
      air_pressure_at_mean_sea_level
      units :
      Pa
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • mx2t
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      mx2t
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Maximum temperature at 2 metres since previous post-processing
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      201
      GRIB_shortName :
      mx2t
      GRIB_stepType :
      max
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Maximum temperature at 2 metres since previous post-processing
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • mxtpr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      mxtpr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Maximum total precipitation rate since previous post-processing
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228226
      GRIB_shortName :
      mxtpr
      GRIB_stepType :
      max
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2 s**-1
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Maximum total precipitation rate since previous post-processing
      standard_name :
      unknown
      units :
      kg m**-2 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • pev
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      pev
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Potential evaporation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228251
      GRIB_shortName :
      pev
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Potential evaporation
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ptype
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ptype
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/longitude
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Precipitation type
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      260015
      GRIB_shortName :
      ptype
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (Code table 4.201)
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Precipitation type
      standard_name :
      unknown
      units :
      (Code table 4.201)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ro
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ro
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Runoff
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      205
      GRIB_shortName :
      ro
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Runoff
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • skt
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      skt
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Skin temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      235
      GRIB_shortName :
      skt
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Skin temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • slhf
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_upward_latent_heat_flux
      GRIB_cfVarName :
      slhf
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface latent heat flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      147
      GRIB_shortName :
      slhf
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface latent heat flux
      standard_name :
      surface_upward_latent_heat_flux
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • sp
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_air_pressure
      GRIB_cfVarName :
      sp
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface pressure
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      134
      GRIB_shortName :
      sp
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      Pa
      last_restart_dim_updated :
      742824
      long_name :
      Surface pressure
      standard_name :
      surface_air_pressure
      units :
      Pa
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • sro
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      sro
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface runoff
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      8
      GRIB_shortName :
      sro
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Surface runoff
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • sshf
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_upward_sensible_heat_flux
      GRIB_cfVarName :
      sshf
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface sensible heat flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      146
      GRIB_shortName :
      sshf
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface sensible heat flux
      standard_name :
      surface_upward_sensible_heat_flux
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ssr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_net_downward_shortwave_flux
      GRIB_cfVarName :
      ssr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface net short-wave (solar) radiation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      176
      GRIB_shortName :
      ssr
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface net short-wave (solar) radiation
      standard_name :
      surface_net_downward_shortwave_flux
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ssrc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_net_downward_shortwave_flux_assuming_clear_sky
      GRIB_cfVarName :
      ssrc
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface net short-wave (solar) radiation, clear sky
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      210
      GRIB_shortName :
      ssrc
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface net short-wave (solar) radiation, clear sky
      standard_name :
      surface_net_downward_shortwave_flux_assuming_clear_sky
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ssrd
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_downwelling_shortwave_flux_in_air
      GRIB_cfVarName :
      ssrd
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface short-wave (solar) radiation downwards
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      169
      GRIB_shortName :
      ssrd
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface short-wave (solar) radiation downwards
      standard_name :
      surface_downwelling_shortwave_flux_in_air
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ssrdc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ssrdc
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface short-wave (solar) radiation downward clear-sky
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228129
      GRIB_shortName :
      ssrdc
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface short-wave (solar) radiation downward clear-sky
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ssro
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ssro
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Sub-surface runoff
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      9
      GRIB_shortName :
      ssro
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Sub-surface runoff
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • sst
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      sst
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Sea surface temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      34
      GRIB_shortName :
      sst
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      Sea surface temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • str
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_net_upward_longwave_flux
      GRIB_cfVarName :
      str
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface net long-wave (thermal) radiation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      177
      GRIB_shortName :
      str
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface net long-wave (thermal) radiation
      standard_name :
      surface_net_upward_longwave_flux
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • strc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      surface_net_downward_longwave_flux_assuming_clear_sky
      GRIB_cfVarName :
      strc
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface net long-wave (thermal) radiation, clear sky
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      211
      GRIB_shortName :
      strc
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface net long-wave (thermal) radiation, clear sky
      standard_name :
      surface_net_downward_longwave_flux_assuming_clear_sky
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • strd
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      strd
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface long-wave (thermal) radiation downwards
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      175
      GRIB_shortName :
      strd
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface long-wave (thermal) radiation downwards
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • strdc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      strdc
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Surface long-wave (thermal) radiation downward clear-sky
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228130
      GRIB_shortName :
      strdc
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Surface long-wave (thermal) radiation downward clear-sky
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • t2m
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      t2m
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      2 metre temperature
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      167
      GRIB_shortName :
      2t
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      K
      last_restart_dim_updated :
      742824
      long_name :
      2 metre temperature
      standard_name :
      unknown
      units :
      K
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tcc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      cloud_area_fraction
      GRIB_cfVarName :
      tcc
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Total cloud cover
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      164
      GRIB_shortName :
      tcc
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      (0 - 1)
      last_restart_dim_updated :
      742824
      long_name :
      Total cloud cover
      standard_name :
      cloud_area_fraction
      units :
      (0 - 1)
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tciw
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      tciw
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Total column cloud ice water
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      79
      GRIB_shortName :
      tciw
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Total column cloud ice water
      standard_name :
      unknown
      units :
      kg m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tclw
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      tclw
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Total column cloud liquid water
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      78
      GRIB_shortName :
      tclw
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Total column cloud liquid water
      standard_name :
      unknown
      units :
      kg m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tcrw
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      tcrw
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Total column rain water
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228089
      GRIB_shortName :
      tcrw
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      kg m**-2
      GRIB_uvRelativeToGrid :
      0
      last_restart_dim_updated :
      742824
      long_name :
      Total column rain water
      standard_name :
      unknown
      units :
      kg m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tisr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      tisr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      TOA incident short-wave (solar) radiation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      212
      GRIB_shortName :
      tisr
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      TOA incident short-wave (solar) radiation
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tp
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      tp
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Total precipitation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228
      GRIB_shortName :
      tp
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m
      last_restart_dim_updated :
      742824
      long_name :
      Total precipitation
      standard_name :
      unknown
      units :
      m
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tsr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      toa_net_upward_shortwave_flux
      GRIB_cfVarName :
      tsr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Top net short-wave (solar) radiation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      178
      GRIB_shortName :
      tsr
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Top net short-wave (solar) radiation
      standard_name :
      toa_net_upward_shortwave_flux
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • tsrc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      tsrc
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Top net short-wave (solar) radiation, clear sky
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      208
      GRIB_shortName :
      tsrc
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Top net short-wave (solar) radiation, clear sky
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ttr
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      toa_outgoing_longwave_flux
      GRIB_cfVarName :
      ttr
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Top net long-wave (thermal) radiation
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      179
      GRIB_shortName :
      ttr
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Top net long-wave (thermal) radiation
      standard_name :
      toa_outgoing_longwave_flux
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • ttrc
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      ttrc
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Top net long-wave (thermal) radiation, clear sky
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      209
      GRIB_shortName :
      ttrc
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Top net long-wave (thermal) radiation, clear sky
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • u10
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      u10
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      10 metre U wind component
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      165
      GRIB_shortName :
      10u
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m s**-1
      last_restart_dim_updated :
      742824
      long_name :
      10 metre U wind component
      standard_name :
      unknown
      units :
      m s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • u100
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      u100
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      100 metre U wind component
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228246
      GRIB_shortName :
      100u
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m s**-1
      last_restart_dim_updated :
      742824
      long_name :
      100 metre U wind component
      standard_name :
      unknown
      units :
      m s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • u10n
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      u10n
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      10 metre u-component of neutral wind
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228131
      GRIB_shortName :
      u10n
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m s**-1
      last_restart_dim_updated :
      742824
      long_name :
      10 metre u-component of neutral wind
      standard_name :
      unknown
      units :
      m s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • uvb
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      uvb
      GRIB_dataType :
      fc
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Downward UV radiation at the surface
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      57
      GRIB_shortName :
      uvb
      GRIB_stepType :
      accum
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      J m**-2
      last_restart_dim_updated :
      742824
      long_name :
      Downward UV radiation at the surface
      standard_name :
      unknown
      units :
      J m**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • v10
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      v10
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      10 metre V wind component
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      166
      GRIB_shortName :
      10v
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m s**-1
      last_restart_dim_updated :
      742824
      long_name :
      10 metre V wind component
      standard_name :
      unknown
      units :
      m s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • v100
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      v100
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      100 metre V wind component
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228247
      GRIB_shortName :
      100v
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m s**-1
      last_restart_dim_updated :
      742824
      long_name :
      100 metre V wind component
      standard_name :
      unknown
      units :
      m s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • v10n
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      v10n
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      10 metre v-component of neutral wind
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      228132
      GRIB_shortName :
      v10n
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m s**-1
      last_restart_dim_updated :
      742824
      long_name :
      10 metre v-component of neutral wind
      standard_name :
      unknown
      units :
      m s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • viiwd
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      viiwd
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Vertical integral of divergence of cloud frozen water flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      162080
      GRIB_shortName :
      viiwd
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      entireAtmosphere
      GRIB_units :
      kg m**-2 s**-1
      last_restart_dim_updated :
      742824
      long_name :
      Vertical integral of divergence of cloud frozen water flux
      standard_name :
      unknown
      units :
      kg m**-2 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • viiwe
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      viiwe
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Vertical integral of eastward cloud frozen water flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      162090
      GRIB_shortName :
      viiwe
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      entireAtmosphere
      GRIB_units :
      kg m**-1 s**-1
      last_restart_dim_updated :
      742824
      long_name :
      Vertical integral of eastward cloud frozen water flux
      standard_name :
      unknown
      units :
      kg m**-1 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • viiwn
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      viiwn
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Vertical integral of northward cloud frozen water flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      162091
      GRIB_shortName :
      viiwn
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      entireAtmosphere
      GRIB_units :
      kg m**-1 s**-1
      last_restart_dim_updated :
      742824
      long_name :
      Vertical integral of northward cloud frozen water flux
      standard_name :
      unknown
      units :
      kg m**-1 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • vilwd
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      vilwd
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Vertical integral of divergence of cloud liquid water flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      162079
      GRIB_shortName :
      vilwd
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      entireAtmosphere
      GRIB_units :
      kg m**-2 s**-1
      last_restart_dim_updated :
      742824
      long_name :
      Vertical integral of divergence of cloud liquid water flux
      standard_name :
      unknown
      units :
      kg m**-2 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • vilwe
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      vilwe
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Vertical integral of eastward cloud liquid water flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      162088
      GRIB_shortName :
      vilwe
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      entireAtmosphere
      GRIB_units :
      kg m**-1 s**-1
      last_restart_dim_updated :
      742824
      long_name :
      Vertical integral of eastward cloud liquid water flux
      standard_name :
      unknown
      units :
      kg m**-1 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • vilwn
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      unknown
      GRIB_cfVarName :
      vilwn
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Vertical integral of northward cloud liquid water flux
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      162089
      GRIB_shortName :
      vilwn
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      entireAtmosphere
      GRIB_units :
      kg m**-1 s**-1
      last_restart_dim_updated :
      742824
      long_name :
      Vertical integral of northward cloud liquid water flux
      standard_name :
      unknown
      units :
      kg m**-1 s**-1
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • z
      (valid_time, latitude, longitude)
      float32
      dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
      GRIB_NV :
      0
      GRIB_Nx :
      1440
      GRIB_Ny :
      721
      GRIB_cfName :
      geopotential
      GRIB_cfVarName :
      z
      GRIB_dataType :
      an
      GRIB_gridDefinitionDescription :
      Latitude/Longitude Grid
      GRIB_gridType :
      regular_ll
      GRIB_iDirectionIncrementInDegrees :
      0.25
      GRIB_iScansNegatively :
      0
      GRIB_jDirectionIncrementInDegrees :
      0.25
      GRIB_jPointsAreConsecutive :
      0
      GRIB_jScansPositively :
      0
      GRIB_latitudeOfFirstGridPointInDegrees :
      90.0
      GRIB_latitudeOfLastGridPointInDegrees :
      -90.0
      GRIB_longitudeOfFirstGridPointInDegrees :
      0.0
      GRIB_longitudeOfLastGridPointInDegrees :
      359.75
      GRIB_missingValue :
      3.4028234663852886e+38
      GRIB_name :
      Geopotential
      GRIB_numberOfPoints :
      1038240
      GRIB_paramId :
      129
      GRIB_shortName :
      z
      GRIB_stepType :
      instant
      GRIB_stepUnits :
      1
      GRIB_totalNumber :
      0
      GRIB_typeOfLevel :
      surface
      GRIB_units :
      m**2 s**-2
      last_restart_dim_updated :
      742824
      long_name :
      Geopotential
      standard_name :
      geopotential
      units :
      m**2 s**-2
      Array Chunk
      Bytes 2.81 TiB 67.50 MiB
      Shape (742824, 721, 1440) (4320, 64, 64)
      Dask graph 47472 chunks in 2 graph layers
      Data type float32 numpy.ndarray
      1440 721 742824
    • latitude
      PandasIndex
      PandasIndex(Index([  90.0,  89.75,   89.5,  89.25,   89.0,  88.75,   88.5,  88.25,   88.0,
              87.75,
             ...
             -87.75,  -88.0, -88.25,  -88.5, -88.75,  -89.0, -89.25,  -89.5, -89.75,
              -90.0],
            dtype='float64', name='latitude', length=721))
    • longitude
      PandasIndex
      PandasIndex(Index([   0.0,   0.25,    0.5,   0.75,    1.0,   1.25,    1.5,   1.75,    2.0,
               2.25,
             ...
              357.5, 357.75,  358.0, 358.25,  358.5, 358.75,  359.0, 359.25,  359.5,
             359.75],
            dtype='float64', name='longitude', length=1440))
    • valid_time
      PandasIndex
      PandasIndex(DatetimeIndex(['1940-01-01 00:00:00', '1940-01-01 01:00:00',
                     '1940-01-01 02:00:00', '1940-01-01 03:00:00',
                     '1940-01-01 04:00:00', '1940-01-01 05:00:00',
                     '1940-01-01 06:00:00', '1940-01-01 07:00:00',
                     '1940-01-01 08:00:00', '1940-01-01 09:00:00',
                     ...
                     '2024-09-26 14:00:00', '2024-09-26 15:00:00',
                     '2024-09-26 16:00:00', '2024-09-26 17:00:00',
                     '2024-09-26 18:00:00', '2024-09-26 19:00:00',
                     '2024-09-26 20:00:00', '2024-09-26 21:00:00',
                     '2024-09-26 22:00:00', '2024-09-26 23:00:00'],
                    dtype='datetime64[ns]', name='valid_time', length=742824, freq=None))
  • Conventions :
    CF-1.7
    GRIB_centre :
    ecmf
    GRIB_centreDescription :
    European Centre for Medium-Range Weather Forecasts
    GRIB_edition :
    1
    GRIB_subCentre :
    0
    history :
    2024-10-02T12:52 GRIB to CDM+CF via cfgrib-0.9.14.1/ecCodes-2.38.0 with {"source": ".xarray-ecmwf-cache/60b4e879cc647fea654b5515e1f182e4.grib", "filter_by_keys": {}, "encode_cf": ["parameter", "time", "geography", "vertical"]}
    institution :
    European Centre for Medium-Range Weather Forecasts

From the dataset we extract the 2 metre temperature:

In [10]:
t2m = era5_single_levels.t2m - 273.15 # to celsius
t2m.attrs["units"] = "°C"
t2m
Out[10]:
<xarray.DataArray 't2m' (valid_time: 742824, latitude: 721, longitude: 1440)> Size: 3TB
dask.array<sub, shape=(742824, 721, 1440), dtype=float32, chunksize=(4320, 64, 64), chunktype=numpy.ndarray>
Coordinates:
    entireAtmosphere  float32 4B ...
  * latitude          (latitude) float64 6kB 90.0 89.75 89.5 ... -89.75 -90.0
  * longitude         (longitude) float64 12kB 0.0 0.25 0.5 ... 359.5 359.8
    number            int64 8B ...
    surface           float64 8B ...
  * valid_time        (valid_time) datetime64[ns] 6MB 1940-01-01 ... 2024-09-...
Attributes: (12/31)
    GRIB_NV:                                  0
    GRIB_Nx:                                  1440
    GRIB_Ny:                                  721
    GRIB_cfName:                              unknown
    GRIB_cfVarName:                           t2m
    GRIB_dataType:                            an
    ...                                       ...
    GRIB_typeOfLevel:                         surface
    GRIB_units:                               K
    last_restart_dim_updated:                 742824
    long_name:                                2 metre temperature
    standard_name:                            unknown
    units:                                    °C
xarray.DataArray
't2m'
  • valid_time: 742824
  • latitude: 721
  • longitude: 1440
  • dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    Array Chunk
    Bytes 2.81 TiB 67.50 MiB
    Shape (742824, 721, 1440) (4320, 64, 64)
    Dask graph 47472 chunks in 3 graph layers
    Data type float32 numpy.ndarray
    1440 721 742824
    • entireAtmosphere
      ()
      float32
      ...
      long_name :
      original GRIB coordinate for key: level(entireAtmosphere)
      units :
      1
      [1 values with dtype=float32]
    • latitude
      (latitude)
      float64
      90.0 89.75 89.5 ... -89.75 -90.0
      long_name :
      latitude
      standard_name :
      latitude
      stored_direction :
      decreasing
      units :
      degrees_north
      array([ 90.  ,  89.75,  89.5 , ..., -89.5 , -89.75, -90.  ])
    • longitude
      (longitude)
      float64
      0.0 0.25 0.5 ... 359.2 359.5 359.8
      long_name :
      longitude
      standard_name :
      longitude
      units :
      degrees_east
      array([0.0000e+00, 2.5000e-01, 5.0000e-01, ..., 3.5925e+02, 3.5950e+02,
             3.5975e+02])
    • number
      ()
      int64
      ...
      long_name :
      ensemble member numerical id
      standard_name :
      realization
      units :
      1
      [1 values with dtype=int64]
    • surface
      ()
      float64
      ...
      long_name :
      original GRIB coordinate for key: level(surface)
      units :
      1
      [1 values with dtype=float64]
    • valid_time
      (valid_time)
      datetime64[ns]
      1940-01-01 ... 2024-09-26T23:00:00
      array(['1940-01-01T00:00:00.000000000', '1940-01-01T01:00:00.000000000',
             '1940-01-01T02:00:00.000000000', ..., '2024-09-26T21:00:00.000000000',
             '2024-09-26T22:00:00.000000000', '2024-09-26T23:00:00.000000000'],
            dtype='datetime64[ns]')
    • latitude
      PandasIndex
      PandasIndex(Index([  90.0,  89.75,   89.5,  89.25,   89.0,  88.75,   88.5,  88.25,   88.0,
              87.75,
             ...
             -87.75,  -88.0, -88.25,  -88.5, -88.75,  -89.0, -89.25,  -89.5, -89.75,
              -90.0],
            dtype='float64', name='latitude', length=721))
    • longitude
      PandasIndex
      PandasIndex(Index([   0.0,   0.25,    0.5,   0.75,    1.0,   1.25,    1.5,   1.75,    2.0,
               2.25,
             ...
              357.5, 357.75,  358.0, 358.25,  358.5, 358.75,  359.0, 359.25,  359.5,
             359.75],
            dtype='float64', name='longitude', length=1440))
    • valid_time
      PandasIndex
      PandasIndex(DatetimeIndex(['1940-01-01 00:00:00', '1940-01-01 01:00:00',
                     '1940-01-01 02:00:00', '1940-01-01 03:00:00',
                     '1940-01-01 04:00:00', '1940-01-01 05:00:00',
                     '1940-01-01 06:00:00', '1940-01-01 07:00:00',
                     '1940-01-01 08:00:00', '1940-01-01 09:00:00',
                     ...
                     '2024-09-26 14:00:00', '2024-09-26 15:00:00',
                     '2024-09-26 16:00:00', '2024-09-26 17:00:00',
                     '2024-09-26 18:00:00', '2024-09-26 19:00:00',
                     '2024-09-26 20:00:00', '2024-09-26 21:00:00',
                     '2024-09-26 22:00:00', '2024-09-26 23:00:00'],
                    dtype='datetime64[ns]', name='valid_time', length=742824, freq=None))
  • GRIB_NV :
    0
    GRIB_Nx :
    1440
    GRIB_Ny :
    721
    GRIB_cfName :
    unknown
    GRIB_cfVarName :
    t2m
    GRIB_dataType :
    an
    GRIB_gridDefinitionDescription :
    Latitude/Longitude Grid
    GRIB_gridType :
    regular_ll
    GRIB_iDirectionIncrementInDegrees :
    0.25
    GRIB_iScansNegatively :
    0
    GRIB_jDirectionIncrementInDegrees :
    0.25
    GRIB_jPointsAreConsecutive :
    0
    GRIB_jScansPositively :
    0
    GRIB_latitudeOfFirstGridPointInDegrees :
    90.0
    GRIB_latitudeOfLastGridPointInDegrees :
    -90.0
    GRIB_longitudeOfFirstGridPointInDegrees :
    0.0
    GRIB_longitudeOfLastGridPointInDegrees :
    359.75
    GRIB_missingValue :
    3.4028234663852886e+38
    GRIB_name :
    2 metre temperature
    GRIB_numberOfPoints :
    1038240
    GRIB_paramId :
    167
    GRIB_shortName :
    2t
    GRIB_stepType :
    instant
    GRIB_stepUnits :
    1
    GRIB_totalNumber :
    0
    GRIB_typeOfLevel :
    surface
    GRIB_units :
    K
    last_restart_dim_updated :
    742824
    long_name :
    2 metre temperature
    standard_name :
    unknown
    units :
    °C

We perform the same coordinate rolling as we did before:

In [11]:
t2m = t2m.assign_coords(longitude=(((t2m.longitude + 180) % 360) - 180))
t2m = t2m.roll(longitude=int(len(t2m.longitude) / 2), roll_coords=True)
t2m
Out[11]:
<xarray.DataArray 't2m' (valid_time: 742824, latitude: 721, longitude: 1440)> Size: 3TB
dask.array<rechunk-merge, shape=(742824, 721, 1440), dtype=float32, chunksize=(4320, 64, 64), chunktype=numpy.ndarray>
Coordinates:
    entireAtmosphere  float32 4B ...
  * latitude          (latitude) float64 6kB 90.0 89.75 89.5 ... -89.75 -90.0
    number            int64 8B ...
    surface           float64 8B ...
  * valid_time        (valid_time) datetime64[ns] 6MB 1940-01-01 ... 2024-09-...
  * longitude         (longitude) float64 12kB -180.0 -179.8 ... 179.5 179.8
Attributes: (12/31)
    GRIB_NV:                                  0
    GRIB_Nx:                                  1440
    GRIB_Ny:                                  721
    GRIB_cfName:                              unknown
    GRIB_cfVarName:                           t2m
    GRIB_dataType:                            an
    ...                                       ...
    GRIB_typeOfLevel:                         surface
    GRIB_units:                               K
    last_restart_dim_updated:                 742824
    long_name:                                2 metre temperature
    standard_name:                            unknown
    units:                                    °C
xarray.DataArray
't2m'
  • valid_time: 742824
  • latitude: 721
  • longitude: 1440
  • dask.array<chunksize=(4320, 64, 64), meta=np.ndarray>
    Array Chunk
    Bytes 2.81 TiB 67.50 MiB
    Shape (742824, 721, 1440) (4320, 64, 64)
    Dask graph 47472 chunks in 7 graph layers
    Data type float32 numpy.ndarray
    1440 721 742824
    • entireAtmosphere
      ()
      float32
      ...
      long_name :
      original GRIB coordinate for key: level(entireAtmosphere)
      units :
      1
      [1 values with dtype=float32]
    • latitude
      (latitude)
      float64
      90.0 89.75 89.5 ... -89.75 -90.0
      long_name :
      latitude
      standard_name :
      latitude
      stored_direction :
      decreasing
      units :
      degrees_north
      array([ 90.  ,  89.75,  89.5 , ..., -89.5 , -89.75, -90.  ])
    • number
      ()
      int64
      ...
      long_name :
      ensemble member numerical id
      standard_name :
      realization
      units :
      1
      [1 values with dtype=int64]
    • surface
      ()
      float64
      ...
      long_name :
      original GRIB coordinate for key: level(surface)
      units :
      1
      [1 values with dtype=float64]
    • valid_time
      (valid_time)
      datetime64[ns]
      1940-01-01 ... 2024-09-26T23:00:00
      array(['1940-01-01T00:00:00.000000000', '1940-01-01T01:00:00.000000000',
             '1940-01-01T02:00:00.000000000', ..., '2024-09-26T21:00:00.000000000',
             '2024-09-26T22:00:00.000000000', '2024-09-26T23:00:00.000000000'],
            dtype='datetime64[ns]')
    • longitude
      (longitude)
      float64
      -180.0 -179.8 ... 179.5 179.8
      long_name :
      longitude
      standard_name :
      longitude
      units :
      degrees_east
      array([-180.  , -179.75, -179.5 , ...,  179.25,  179.5 ,  179.75])
    • latitude
      PandasIndex
      PandasIndex(Index([  90.0,  89.75,   89.5,  89.25,   89.0,  88.75,   88.5,  88.25,   88.0,
              87.75,
             ...
             -87.75,  -88.0, -88.25,  -88.5, -88.75,  -89.0, -89.25,  -89.5, -89.75,
              -90.0],
            dtype='float64', name='latitude', length=721))
    • valid_time
      PandasIndex
      PandasIndex(DatetimeIndex(['1940-01-01 00:00:00', '1940-01-01 01:00:00',
                     '1940-01-01 02:00:00', '1940-01-01 03:00:00',
                     '1940-01-01 04:00:00', '1940-01-01 05:00:00',
                     '1940-01-01 06:00:00', '1940-01-01 07:00:00',
                     '1940-01-01 08:00:00', '1940-01-01 09:00:00',
                     ...
                     '2024-09-26 14:00:00', '2024-09-26 15:00:00',
                     '2024-09-26 16:00:00', '2024-09-26 17:00:00',
                     '2024-09-26 18:00:00', '2024-09-26 19:00:00',
                     '2024-09-26 20:00:00', '2024-09-26 21:00:00',
                     '2024-09-26 22:00:00', '2024-09-26 23:00:00'],
                    dtype='datetime64[ns]', name='valid_time', length=742824, freq=None))
    • longitude
      PandasIndex
      PandasIndex(Index([ -180.0, -179.75,  -179.5, -179.25,  -179.0, -178.75,  -178.5, -178.25,
              -178.0, -177.75,
             ...
               177.5,  177.75,   178.0,  178.25,   178.5,  178.75,   179.0,  179.25,
               179.5,  179.75],
            dtype='float64', name='longitude', length=1440))
  • GRIB_NV :
    0
    GRIB_Nx :
    1440
    GRIB_Ny :
    721
    GRIB_cfName :
    unknown
    GRIB_cfVarName :
    t2m
    GRIB_dataType :
    an
    GRIB_gridDefinitionDescription :
    Latitude/Longitude Grid
    GRIB_gridType :
    regular_ll
    GRIB_iDirectionIncrementInDegrees :
    0.25
    GRIB_iScansNegatively :
    0
    GRIB_jDirectionIncrementInDegrees :
    0.25
    GRIB_jPointsAreConsecutive :
    0
    GRIB_jScansPositively :
    0
    GRIB_latitudeOfFirstGridPointInDegrees :
    90.0
    GRIB_latitudeOfLastGridPointInDegrees :
    -90.0
    GRIB_longitudeOfFirstGridPointInDegrees :
    0.0
    GRIB_longitudeOfLastGridPointInDegrees :
    359.75
    GRIB_missingValue :
    3.4028234663852886e+38
    GRIB_name :
    2 metre temperature
    GRIB_numberOfPoints :
    1038240
    GRIB_paramId :
    167
    GRIB_shortName :
    2t
    GRIB_stepType :
    instant
    GRIB_stepUnits :
    1
    GRIB_totalNumber :
    0
    GRIB_typeOfLevel :
    surface
    GRIB_units :
    K
    last_restart_dim_updated :
    742824
    long_name :
    2 metre temperature
    standard_name :
    unknown
    units :
    °C

Also, we perform a geographical selection corresponding to continental Europe and a temporal selection of the years between 1950 and 2020.

In [12]:
t2m_europe = t2m.sel(latitude=slice(71, 36), longitude=slice(-10,35))
t2m_europe_1950_2020 = t2m_europe.sel(valid_time=slice("1950", "2020"))
t2m_europe_1950_2020
Out[12]:
<xarray.DataArray 't2m' (valid_time: 622392, latitude: 141, longitude: 181)> Size: 64GB
dask.array<getitem, shape=(622392, 141, 181), dtype=float32, chunksize=(4320, 64, 64), chunktype=numpy.ndarray>
Coordinates:
    entireAtmosphere  float32 4B ...
  * latitude          (latitude) float64 1kB 71.0 70.75 70.5 ... 36.5 36.25 36.0
    number            int64 8B ...
    surface           float64 8B ...
  * valid_time        (valid_time) datetime64[ns] 5MB 1950-01-01 ... 2020-12-...
  * longitude         (longitude) float64 1kB -10.0 -9.75 -9.5 ... 34.75 35.0
Attributes: (12/31)
    GRIB_NV:                                  0
    GRIB_Nx:                                  1440
    GRIB_Ny:                                  721
    GRIB_cfName:                              unknown
    GRIB_cfVarName:                           t2m
    GRIB_dataType:                            an
    ...                                       ...
    GRIB_typeOfLevel:                         surface
    GRIB_units:                               K
    last_restart_dim_updated:                 742824
    long_name:                                2 metre temperature
    standard_name:                            unknown
    units:                                    °C
xarray.DataArray
't2m'
  • valid_time: 622392
  • latitude: 141
  • longitude: 181
  • dask.array<chunksize=(3048, 52, 24), meta=np.ndarray>
    Array Chunk
    Bytes 59.17 GiB 67.50 MiB
    Shape (622392, 141, 181) (4320, 64, 64)
    Dask graph 1740 chunks in 9 graph layers
    Data type float32 numpy.ndarray
    181 141 622392
    • entireAtmosphere
      ()
      float32
      ...
      long_name :
      original GRIB coordinate for key: level(entireAtmosphere)
      units :
      1
      [1 values with dtype=float32]
    • latitude
      (latitude)
      float64
      71.0 70.75 70.5 ... 36.5 36.25 36.0
      long_name :
      latitude
      standard_name :
      latitude
      stored_direction :
      decreasing
      units :
      degrees_north
      array([71.  , 70.75, 70.5 , 70.25, 70.  , 69.75, 69.5 , 69.25, 69.  , 68.75,
             68.5 , 68.25, 68.  , 67.75, 67.5 , 67.25, 67.  , 66.75, 66.5 , 66.25,
             66.  , 65.75, 65.5 , 65.25, 65.  , 64.75, 64.5 , 64.25, 64.  , 63.75,
             63.5 , 63.25, 63.  , 62.75, 62.5 , 62.25, 62.  , 61.75, 61.5 , 61.25,
             61.  , 60.75, 60.5 , 60.25, 60.  , 59.75, 59.5 , 59.25, 59.  , 58.75,
             58.5 , 58.25, 58.  , 57.75, 57.5 , 57.25, 57.  , 56.75, 56.5 , 56.25,
             56.  , 55.75, 55.5 , 55.25, 55.  , 54.75, 54.5 , 54.25, 54.  , 53.75,
             53.5 , 53.25, 53.  , 52.75, 52.5 , 52.25, 52.  , 51.75, 51.5 , 51.25,
             51.  , 50.75, 50.5 , 50.25, 50.  , 49.75, 49.5 , 49.25, 49.  , 48.75,
             48.5 , 48.25, 48.  , 47.75, 47.5 , 47.25, 47.  , 46.75, 46.5 , 46.25,
             46.  , 45.75, 45.5 , 45.25, 45.  , 44.75, 44.5 , 44.25, 44.  , 43.75,
             43.5 , 43.25, 43.  , 42.75, 42.5 , 42.25, 42.  , 41.75, 41.5 , 41.25,
             41.  , 40.75, 40.5 , 40.25, 40.  , 39.75, 39.5 , 39.25, 39.  , 38.75,
             38.5 , 38.25, 38.  , 37.75, 37.5 , 37.25, 37.  , 36.75, 36.5 , 36.25,
             36.  ])
    • number
      ()
      int64
      ...
      long_name :
      ensemble member numerical id
      standard_name :
      realization
      units :
      1
      [1 values with dtype=int64]
    • surface
      ()
      float64
      ...
      long_name :
      original GRIB coordinate for key: level(surface)
      units :
      1
      [1 values with dtype=float64]
    • valid_time
      (valid_time)
      datetime64[ns]
      1950-01-01 ... 2020-12-31T23:00:00
      array(['1950-01-01T00:00:00.000000000', '1950-01-01T01:00:00.000000000',
             '1950-01-01T02:00:00.000000000', ..., '2020-12-31T21:00:00.000000000',
             '2020-12-31T22:00:00.000000000', '2020-12-31T23:00:00.000000000'],
            dtype='datetime64[ns]')
    • longitude
      (longitude)
      float64
      -10.0 -9.75 -9.5 ... 34.75 35.0
      long_name :
      longitude
      standard_name :
      longitude
      units :
      degrees_east
      array([-10.  ,  -9.75,  -9.5 ,  -9.25,  -9.  ,  -8.75,  -8.5 ,  -8.25,  -8.  ,
              -7.75,  -7.5 ,  -7.25,  -7.  ,  -6.75,  -6.5 ,  -6.25,  -6.  ,  -5.75,
              -5.5 ,  -5.25,  -5.  ,  -4.75,  -4.5 ,  -4.25,  -4.  ,  -3.75,  -3.5 ,
              -3.25,  -3.  ,  -2.75,  -2.5 ,  -2.25,  -2.  ,  -1.75,  -1.5 ,  -1.25,
              -1.  ,  -0.75,  -0.5 ,  -0.25,   0.  ,   0.25,   0.5 ,   0.75,   1.  ,
               1.25,   1.5 ,   1.75,   2.  ,   2.25,   2.5 ,   2.75,   3.  ,   3.25,
               3.5 ,   3.75,   4.  ,   4.25,   4.5 ,   4.75,   5.  ,   5.25,   5.5 ,
               5.75,   6.  ,   6.25,   6.5 ,   6.75,   7.  ,   7.25,   7.5 ,   7.75,
               8.  ,   8.25,   8.5 ,   8.75,   9.  ,   9.25,   9.5 ,   9.75,  10.  ,
              10.25,  10.5 ,  10.75,  11.  ,  11.25,  11.5 ,  11.75,  12.  ,  12.25,
              12.5 ,  12.75,  13.  ,  13.25,  13.5 ,  13.75,  14.  ,  14.25,  14.5 ,
              14.75,  15.  ,  15.25,  15.5 ,  15.75,  16.  ,  16.25,  16.5 ,  16.75,
              17.  ,  17.25,  17.5 ,  17.75,  18.  ,  18.25,  18.5 ,  18.75,  19.  ,
              19.25,  19.5 ,  19.75,  20.  ,  20.25,  20.5 ,  20.75,  21.  ,  21.25,
              21.5 ,  21.75,  22.  ,  22.25,  22.5 ,  22.75,  23.  ,  23.25,  23.5 ,
              23.75,  24.  ,  24.25,  24.5 ,  24.75,  25.  ,  25.25,  25.5 ,  25.75,
              26.  ,  26.25,  26.5 ,  26.75,  27.  ,  27.25,  27.5 ,  27.75,  28.  ,
              28.25,  28.5 ,  28.75,  29.  ,  29.25,  29.5 ,  29.75,  30.  ,  30.25,
              30.5 ,  30.75,  31.  ,  31.25,  31.5 ,  31.75,  32.  ,  32.25,  32.5 ,
              32.75,  33.  ,  33.25,  33.5 ,  33.75,  34.  ,  34.25,  34.5 ,  34.75,
              35.  ])
    • latitude
      PandasIndex
      PandasIndex(Index([ 71.0, 70.75,  70.5, 70.25,  70.0, 69.75,  69.5, 69.25,  69.0, 68.75,
             ...
             38.25,  38.0, 37.75,  37.5, 37.25,  37.0, 36.75,  36.5, 36.25,  36.0],
            dtype='float64', name='latitude', length=141))
    • valid_time
      PandasIndex
      PandasIndex(DatetimeIndex(['1950-01-01 00:00:00', '1950-01-01 01:00:00',
                     '1950-01-01 02:00:00', '1950-01-01 03:00:00',
                     '1950-01-01 04:00:00', '1950-01-01 05:00:00',
                     '1950-01-01 06:00:00', '1950-01-01 07:00:00',
                     '1950-01-01 08:00:00', '1950-01-01 09:00:00',
                     ...
                     '2020-12-31 14:00:00', '2020-12-31 15:00:00',
                     '2020-12-31 16:00:00', '2020-12-31 17:00:00',
                     '2020-12-31 18:00:00', '2020-12-31 19:00:00',
                     '2020-12-31 20:00:00', '2020-12-31 21:00:00',
                     '2020-12-31 22:00:00', '2020-12-31 23:00:00'],
                    dtype='datetime64[ns]', name='valid_time', length=622392, freq=None))
    • longitude
      PandasIndex
      PandasIndex(Index([-10.0, -9.75,  -9.5, -9.25,  -9.0, -8.75,  -8.5, -8.25,  -8.0, -7.75,
             ...
             32.75,  33.0, 33.25,  33.5, 33.75,  34.0, 34.25,  34.5, 34.75,  35.0],
            dtype='float64', name='longitude', length=181))
  • GRIB_NV :
    0
    GRIB_Nx :
    1440
    GRIB_Ny :
    721
    GRIB_cfName :
    unknown
    GRIB_cfVarName :
    t2m
    GRIB_dataType :
    an
    GRIB_gridDefinitionDescription :
    Latitude/Longitude Grid
    GRIB_gridType :
    regular_ll
    GRIB_iDirectionIncrementInDegrees :
    0.25
    GRIB_iScansNegatively :
    0
    GRIB_jDirectionIncrementInDegrees :
    0.25
    GRIB_jPointsAreConsecutive :
    0
    GRIB_jScansPositively :
    0
    GRIB_latitudeOfFirstGridPointInDegrees :
    90.0
    GRIB_latitudeOfLastGridPointInDegrees :
    -90.0
    GRIB_longitudeOfFirstGridPointInDegrees :
    0.0
    GRIB_longitudeOfLastGridPointInDegrees :
    359.75
    GRIB_missingValue :
    3.4028234663852886e+38
    GRIB_name :
    2 metre temperature
    GRIB_numberOfPoints :
    1038240
    GRIB_paramId :
    167
    GRIB_shortName :
    2t
    GRIB_stepType :
    instant
    GRIB_stepUnits :
    1
    GRIB_totalNumber :
    0
    GRIB_typeOfLevel :
    surface
    GRIB_units :
    K
    last_restart_dim_updated :
    742824
    long_name :
    2 metre temperature
    standard_name :
    unknown
    units :
    °C

The ERA5 single levels dataset is way bigger than the population one. When we access a sample of the 2 metre temperature, xarray must download every chunk that includes a portion of the selected data.

To estimate the size of the download, we can use the costing.py module. This estimate must be done before we apply any reduction operation.

In [13]:
import costing

costing.estimate_download_size(t2m, t2m_europe_1950_2020)
estimated_needed_chunks: 1740
estimated_memory_size: 123.155 GB
estimated_download_size: 12.316 GB

This amount of data could be easily downloaded from Earth Data Hub, thanks to data compression. However, the result of the compute() wouldn't fit into memory. We thus perform a reduction operation before triggering the download and computation, which greatly reduces the size of the result that will be kept in memory.

We compute the annual average of the 2 metre temperature:

In [14]:
t2m_europe_yearly_mean = t2m_europe_1950_2020.resample(valid_time="YS").mean()
t2m_europe_yearly_mean
Out[14]:
<xarray.DataArray 't2m' (valid_time: 71, latitude: 141, longitude: 181)> Size: 7MB
dask.array<transpose, shape=(71, 141, 181), dtype=float32, chunksize=(1, 64, 64), chunktype=numpy.ndarray>
Coordinates:
    entireAtmosphere  float32 4B ...
  * latitude          (latitude) float64 1kB 71.0 70.75 70.5 ... 36.5 36.25 36.0
    number            int64 8B ...
    surface           float64 8B ...
  * longitude         (longitude) float64 1kB -10.0 -9.75 -9.5 ... 34.75 35.0
  * valid_time        (valid_time) datetime64[ns] 568B 1950-01-01 ... 2020-01-01
Attributes: (12/31)
    GRIB_NV:                                  0
    GRIB_Nx:                                  1440
    GRIB_Ny:                                  721
    GRIB_cfName:                              unknown
    GRIB_cfVarName:                           t2m
    GRIB_dataType:                            an
    ...                                       ...
    GRIB_typeOfLevel:                         surface
    GRIB_units:                               K
    last_restart_dim_updated:                 742824
    long_name:                                2 metre temperature
    standard_name:                            unknown
    units:                                    °C
xarray.DataArray
't2m'
  • valid_time: 71
  • latitude: 141
  • longitude: 181
  • dask.array<chunksize=(1, 52, 24), meta=np.ndarray>
    Array Chunk
    Bytes 6.91 MiB 16.00 kiB
    Shape (71, 141, 181) (1, 64, 64)
    Dask graph 852 chunks in 157 graph layers
    Data type float32 numpy.ndarray
    181 141 71
    • entireAtmosphere
      ()
      float32
      ...
      long_name :
      original GRIB coordinate for key: level(entireAtmosphere)
      units :
      1
      [1 values with dtype=float32]
    • latitude
      (latitude)
      float64
      71.0 70.75 70.5 ... 36.5 36.25 36.0
      long_name :
      latitude
      standard_name :
      latitude
      stored_direction :
      decreasing
      units :
      degrees_north
      array([71.  , 70.75, 70.5 , 70.25, 70.  , 69.75, 69.5 , 69.25, 69.  , 68.75,
             68.5 , 68.25, 68.  , 67.75, 67.5 , 67.25, 67.  , 66.75, 66.5 , 66.25,
             66.  , 65.75, 65.5 , 65.25, 65.  , 64.75, 64.5 , 64.25, 64.  , 63.75,
             63.5 , 63.25, 63.  , 62.75, 62.5 , 62.25, 62.  , 61.75, 61.5 , 61.25,
             61.  , 60.75, 60.5 , 60.25, 60.  , 59.75, 59.5 , 59.25, 59.  , 58.75,
             58.5 , 58.25, 58.  , 57.75, 57.5 , 57.25, 57.  , 56.75, 56.5 , 56.25,
             56.  , 55.75, 55.5 , 55.25, 55.  , 54.75, 54.5 , 54.25, 54.  , 53.75,
             53.5 , 53.25, 53.  , 52.75, 52.5 , 52.25, 52.  , 51.75, 51.5 , 51.25,
             51.  , 50.75, 50.5 , 50.25, 50.  , 49.75, 49.5 , 49.25, 49.  , 48.75,
             48.5 , 48.25, 48.  , 47.75, 47.5 , 47.25, 47.  , 46.75, 46.5 , 46.25,
             46.  , 45.75, 45.5 , 45.25, 45.  , 44.75, 44.5 , 44.25, 44.  , 43.75,
             43.5 , 43.25, 43.  , 42.75, 42.5 , 42.25, 42.  , 41.75, 41.5 , 41.25,
             41.  , 40.75, 40.5 , 40.25, 40.  , 39.75, 39.5 , 39.25, 39.  , 38.75,
             38.5 , 38.25, 38.  , 37.75, 37.5 , 37.25, 37.  , 36.75, 36.5 , 36.25,
             36.  ])
    • number
      ()
      int64
      ...
      long_name :
      ensemble member numerical id
      standard_name :
      realization
      units :
      1
      [1 values with dtype=int64]
    • surface
      ()
      float64
      ...
      long_name :
      original GRIB coordinate for key: level(surface)
      units :
      1
      [1 values with dtype=float64]
    • longitude
      (longitude)
      float64
      -10.0 -9.75 -9.5 ... 34.75 35.0
      long_name :
      longitude
      standard_name :
      longitude
      units :
      degrees_east
      array([-10.  ,  -9.75,  -9.5 ,  -9.25,  -9.  ,  -8.75,  -8.5 ,  -8.25,  -8.  ,
              -7.75,  -7.5 ,  -7.25,  -7.  ,  -6.75,  -6.5 ,  -6.25,  -6.  ,  -5.75,
              -5.5 ,  -5.25,  -5.  ,  -4.75,  -4.5 ,  -4.25,  -4.  ,  -3.75,  -3.5 ,
              -3.25,  -3.  ,  -2.75,  -2.5 ,  -2.25,  -2.  ,  -1.75,  -1.5 ,  -1.25,
              -1.  ,  -0.75,  -0.5 ,  -0.25,   0.  ,   0.25,   0.5 ,   0.75,   1.  ,
               1.25,   1.5 ,   1.75,   2.  ,   2.25,   2.5 ,   2.75,   3.  ,   3.25,
               3.5 ,   3.75,   4.  ,   4.25,   4.5 ,   4.75,   5.  ,   5.25,   5.5 ,
               5.75,   6.  ,   6.25,   6.5 ,   6.75,   7.  ,   7.25,   7.5 ,   7.75,
               8.  ,   8.25,   8.5 ,   8.75,   9.  ,   9.25,   9.5 ,   9.75,  10.  ,
              10.25,  10.5 ,  10.75,  11.  ,  11.25,  11.5 ,  11.75,  12.  ,  12.25,
              12.5 ,  12.75,  13.  ,  13.25,  13.5 ,  13.75,  14.  ,  14.25,  14.5 ,
              14.75,  15.  ,  15.25,  15.5 ,  15.75,  16.  ,  16.25,  16.5 ,  16.75,
              17.  ,  17.25,  17.5 ,  17.75,  18.  ,  18.25,  18.5 ,  18.75,  19.  ,
              19.25,  19.5 ,  19.75,  20.  ,  20.25,  20.5 ,  20.75,  21.  ,  21.25,
              21.5 ,  21.75,  22.  ,  22.25,  22.5 ,  22.75,  23.  ,  23.25,  23.5 ,
              23.75,  24.  ,  24.25,  24.5 ,  24.75,  25.  ,  25.25,  25.5 ,  25.75,
              26.  ,  26.25,  26.5 ,  26.75,  27.  ,  27.25,  27.5 ,  27.75,  28.  ,
              28.25,  28.5 ,  28.75,  29.  ,  29.25,  29.5 ,  29.75,  30.  ,  30.25,
              30.5 ,  30.75,  31.  ,  31.25,  31.5 ,  31.75,  32.  ,  32.25,  32.5 ,
              32.75,  33.  ,  33.25,  33.5 ,  33.75,  34.  ,  34.25,  34.5 ,  34.75,
              35.  ])
    • valid_time
      (valid_time)
      datetime64[ns]
      1950-01-01 ... 2020-01-01
      array(['1950-01-01T00:00:00.000000000', '1951-01-01T00:00:00.000000000',
             '1952-01-01T00:00:00.000000000', '1953-01-01T00:00:00.000000000',
             '1954-01-01T00:00:00.000000000', '1955-01-01T00:00:00.000000000',
             '1956-01-01T00:00:00.000000000', '1957-01-01T00:00:00.000000000',
             '1958-01-01T00:00:00.000000000', '1959-01-01T00:00:00.000000000',
             '1960-01-01T00:00:00.000000000', '1961-01-01T00:00:00.000000000',
             '1962-01-01T00:00:00.000000000', '1963-01-01T00:00:00.000000000',
             '1964-01-01T00:00:00.000000000', '1965-01-01T00:00:00.000000000',
             '1966-01-01T00:00:00.000000000', '1967-01-01T00:00:00.000000000',
             '1968-01-01T00:00:00.000000000', '1969-01-01T00:00:00.000000000',
             '1970-01-01T00:00:00.000000000', '1971-01-01T00:00:00.000000000',
             '1972-01-01T00:00:00.000000000', '1973-01-01T00:00:00.000000000',
             '1974-01-01T00:00:00.000000000', '1975-01-01T00:00:00.000000000',
             '1976-01-01T00:00:00.000000000', '1977-01-01T00:00:00.000000000',
             '1978-01-01T00:00:00.000000000', '1979-01-01T00:00:00.000000000',
             '1980-01-01T00:00:00.000000000', '1981-01-01T00:00:00.000000000',
             '1982-01-01T00:00:00.000000000', '1983-01-01T00:00:00.000000000',
             '1984-01-01T00:00:00.000000000', '1985-01-01T00:00:00.000000000',
             '1986-01-01T00:00:00.000000000', '1987-01-01T00:00:00.000000000',
             '1988-01-01T00:00:00.000000000', '1989-01-01T00:00:00.000000000',
             '1990-01-01T00:00:00.000000000', '1991-01-01T00:00:00.000000000',
             '1992-01-01T00:00:00.000000000', '1993-01-01T00:00:00.000000000',
             '1994-01-01T00:00:00.000000000', '1995-01-01T00:00:00.000000000',
             '1996-01-01T00:00:00.000000000', '1997-01-01T00:00:00.000000000',
             '1998-01-01T00:00:00.000000000', '1999-01-01T00:00:00.000000000',
             '2000-01-01T00:00:00.000000000', '2001-01-01T00:00:00.000000000',
             '2002-01-01T00:00:00.000000000', '2003-01-01T00:00:00.000000000',
             '2004-01-01T00:00:00.000000000', '2005-01-01T00:00:00.000000000',
             '2006-01-01T00:00:00.000000000', '2007-01-01T00:00:00.000000000',
             '2008-01-01T00:00:00.000000000', '2009-01-01T00:00:00.000000000',
             '2010-01-01T00:00:00.000000000', '2011-01-01T00:00:00.000000000',
             '2012-01-01T00:00:00.000000000', '2013-01-01T00:00:00.000000000',
             '2014-01-01T00:00:00.000000000', '2015-01-01T00:00:00.000000000',
             '2016-01-01T00:00:00.000000000', '2017-01-01T00:00:00.000000000',
             '2018-01-01T00:00:00.000000000', '2019-01-01T00:00:00.000000000',
             '2020-01-01T00:00:00.000000000'], dtype='datetime64[ns]')
    • latitude
      PandasIndex
      PandasIndex(Index([ 71.0, 70.75,  70.5, 70.25,  70.0, 69.75,  69.5, 69.25,  69.0, 68.75,
             ...
             38.25,  38.0, 37.75,  37.5, 37.25,  37.0, 36.75,  36.5, 36.25,  36.0],
            dtype='float64', name='latitude', length=141))
    • longitude
      PandasIndex
      PandasIndex(Index([-10.0, -9.75,  -9.5, -9.25,  -9.0, -8.75,  -8.5, -8.25,  -8.0, -7.75,
             ...
             32.75,  33.0, 33.25,  33.5, 33.75,  34.0, 34.25,  34.5, 34.75,  35.0],
            dtype='float64', name='longitude', length=181))
    • valid_time
      PandasIndex
      PandasIndex(DatetimeIndex(['1950-01-01', '1951-01-01', '1952-01-01', '1953-01-01',
                     '1954-01-01', '1955-01-01', '1956-01-01', '1957-01-01',
                     '1958-01-01', '1959-01-01', '1960-01-01', '1961-01-01',
                     '1962-01-01', '1963-01-01', '1964-01-01', '1965-01-01',
                     '1966-01-01', '1967-01-01', '1968-01-01', '1969-01-01',
                     '1970-01-01', '1971-01-01', '1972-01-01', '1973-01-01',
                     '1974-01-01', '1975-01-01', '1976-01-01', '1977-01-01',
                     '1978-01-01', '1979-01-01', '1980-01-01', '1981-01-01',
                     '1982-01-01', '1983-01-01', '1984-01-01', '1985-01-01',
                     '1986-01-01', '1987-01-01', '1988-01-01', '1989-01-01',
                     '1990-01-01', '1991-01-01', '1992-01-01', '1993-01-01',
                     '1994-01-01', '1995-01-01', '1996-01-01', '1997-01-01',
                     '1998-01-01', '1999-01-01', '2000-01-01', '2001-01-01',
                     '2002-01-01', '2003-01-01', '2004-01-01', '2005-01-01',
                     '2006-01-01', '2007-01-01', '2008-01-01', '2009-01-01',
                     '2010-01-01', '2011-01-01', '2012-01-01', '2013-01-01',
                     '2014-01-01', '2015-01-01', '2016-01-01', '2017-01-01',
                     '2018-01-01', '2019-01-01', '2020-01-01'],
                    dtype='datetime64[ns]', name='valid_time', freq='YS-JAN'))
  • GRIB_NV :
    0
    GRIB_Nx :
    1440
    GRIB_Ny :
    721
    GRIB_cfName :
    unknown
    GRIB_cfVarName :
    t2m
    GRIB_dataType :
    an
    GRIB_gridDefinitionDescription :
    Latitude/Longitude Grid
    GRIB_gridType :
    regular_ll
    GRIB_iDirectionIncrementInDegrees :
    0.25
    GRIB_iScansNegatively :
    0
    GRIB_jDirectionIncrementInDegrees :
    0.25
    GRIB_jPointsAreConsecutive :
    0
    GRIB_jScansPositively :
    0
    GRIB_latitudeOfFirstGridPointInDegrees :
    90.0
    GRIB_latitudeOfLastGridPointInDegrees :
    -90.0
    GRIB_longitudeOfFirstGridPointInDegrees :
    0.0
    GRIB_longitudeOfLastGridPointInDegrees :
    359.75
    GRIB_missingValue :
    3.4028234663852886e+38
    GRIB_name :
    2 metre temperature
    GRIB_numberOfPoints :
    1038240
    GRIB_paramId :
    167
    GRIB_shortName :
    2t
    GRIB_stepType :
    instant
    GRIB_stepUnits :
    1
    GRIB_totalNumber :
    0
    GRIB_typeOfLevel :
    surface
    GRIB_units :
    K
    last_restart_dim_updated :
    742824
    long_name :
    2 metre temperature
    standard_name :
    unknown
    units :
    °C

At this point, the resulting dataset small enough to call compute() on it. Remember to assign the return of the compute() function to a new variable, so that the data is kept in memory.

We can measure the time it takes:

In [15]:
%%time

t2m_europe_yearly_mean_computed = t2m_europe_yearly_mean.compute()
CPU times: user 19min 36s, sys: 5min 31s, total: 25min 7s
Wall time: 8min 59s

Area-weighted 2 metre temperature vs population-weighted 2 metre temperature¶

To compute the area-weighted 2 metre temperature trend in Europe, we need to spatially average the temperature data using the areas of the latitude-longitude grid cells as weights:

In [17]:
import numpy as np

weights = np.cos(np.deg2rad(t2m_europe_yearly_mean_computed.latitude))
weights.name = "weights"

t2m_europe_yearly_mean_area_weighted = t2m_europe_yearly_mean_computed.weighted(weights).mean(("longitude", "latitude"))
t2m_europe_yearly_mean_area_weighted
Out[17]:
<xarray.DataArray 't2m' (valid_time: 71)> Size: 568B
array([ 9.73143245,  9.54077568,  9.30266422,  9.65744633,  9.14167472,
        9.19113411,  8.39374605,  9.56572026,  9.29620918,  9.78678239,
        9.63911762,  9.99801575,  9.05815576,  8.92954205,  9.29800933,
        8.8260963 ,  9.29124349,  9.59479709,  9.21513626,  8.96015133,
        9.25737186,  9.33365114,  9.48211979,  9.33031631,  9.75456766,
        9.86438628,  9.00002637,  9.37511701,  8.84580254,  9.11709609,
        8.87549476,  9.29087939,  9.65754524,  9.7386082 ,  9.44506196,
        8.77296716,  9.2368825 ,  8.87974788,  9.69230407, 10.37366402,
       10.38624748,  9.59619789,  9.82628151,  9.38199912, 10.123129  ,
        9.89640215,  9.20763148,  9.88151595,  9.81225687, 10.29441204,
       10.41770865, 10.06531496, 10.3884738 , 10.31476037, 10.12192511,
       10.08604738, 10.41532098, 10.57369915, 10.46482174, 10.37075119,
        9.66206254, 10.51831596, 10.11687097, 10.28761378, 10.97883414,
       10.86744654, 10.65587192, 10.60293839, 10.90643005, 10.8906737 ,
       11.19913625])
Coordinates:
    entireAtmosphere  float32 4B 0.0
    number            int64 8B 0
    surface           float64 8B 0.0
  * valid_time        (valid_time) datetime64[ns] 568B 1950-01-01 ... 2020-01-01
Attributes: (12/31)
    GRIB_NV:                                  0
    GRIB_Nx:                                  1440
    GRIB_Ny:                                  721
    GRIB_cfName:                              unknown
    GRIB_cfVarName:                           t2m
    GRIB_dataType:                            an
    ...                                       ...
    GRIB_typeOfLevel:                         surface
    GRIB_units:                               K
    last_restart_dim_updated:                 742824
    long_name:                                2 metre temperature
    standard_name:                            unknown
    units:                                    °C
xarray.DataArray
't2m'
  • valid_time: 71
  • 9.731 9.541 9.303 9.657 9.142 9.191 ... 10.66 10.6 10.91 10.89 11.2
    array([ 9.73143245,  9.54077568,  9.30266422,  9.65744633,  9.14167472,
            9.19113411,  8.39374605,  9.56572026,  9.29620918,  9.78678239,
            9.63911762,  9.99801575,  9.05815576,  8.92954205,  9.29800933,
            8.8260963 ,  9.29124349,  9.59479709,  9.21513626,  8.96015133,
            9.25737186,  9.33365114,  9.48211979,  9.33031631,  9.75456766,
            9.86438628,  9.00002637,  9.37511701,  8.84580254,  9.11709609,
            8.87549476,  9.29087939,  9.65754524,  9.7386082 ,  9.44506196,
            8.77296716,  9.2368825 ,  8.87974788,  9.69230407, 10.37366402,
           10.38624748,  9.59619789,  9.82628151,  9.38199912, 10.123129  ,
            9.89640215,  9.20763148,  9.88151595,  9.81225687, 10.29441204,
           10.41770865, 10.06531496, 10.3884738 , 10.31476037, 10.12192511,
           10.08604738, 10.41532098, 10.57369915, 10.46482174, 10.37075119,
            9.66206254, 10.51831596, 10.11687097, 10.28761378, 10.97883414,
           10.86744654, 10.65587192, 10.60293839, 10.90643005, 10.8906737 ,
           11.19913625])
    • entireAtmosphere
      ()
      float32
      0.0
      long_name :
      original GRIB coordinate for key: level(entireAtmosphere)
      units :
      1
      array(0., dtype=float32)
    • number
      ()
      int64
      0
      long_name :
      ensemble member numerical id
      standard_name :
      realization
      units :
      1
      array(0)
    • surface
      ()
      float64
      0.0
      long_name :
      original GRIB coordinate for key: level(surface)
      units :
      1
      array(0.)
    • valid_time
      (valid_time)
      datetime64[ns]
      1950-01-01 ... 2020-01-01
      array(['1950-01-01T00:00:00.000000000', '1951-01-01T00:00:00.000000000',
             '1952-01-01T00:00:00.000000000', '1953-01-01T00:00:00.000000000',
             '1954-01-01T00:00:00.000000000', '1955-01-01T00:00:00.000000000',
             '1956-01-01T00:00:00.000000000', '1957-01-01T00:00:00.000000000',
             '1958-01-01T00:00:00.000000000', '1959-01-01T00:00:00.000000000',
             '1960-01-01T00:00:00.000000000', '1961-01-01T00:00:00.000000000',
             '1962-01-01T00:00:00.000000000', '1963-01-01T00:00:00.000000000',
             '1964-01-01T00:00:00.000000000', '1965-01-01T00:00:00.000000000',
             '1966-01-01T00:00:00.000000000', '1967-01-01T00:00:00.000000000',
             '1968-01-01T00:00:00.000000000', '1969-01-01T00:00:00.000000000',
             '1970-01-01T00:00:00.000000000', '1971-01-01T00:00:00.000000000',
             '1972-01-01T00:00:00.000000000', '1973-01-01T00:00:00.000000000',
             '1974-01-01T00:00:00.000000000', '1975-01-01T00:00:00.000000000',
             '1976-01-01T00:00:00.000000000', '1977-01-01T00:00:00.000000000',
             '1978-01-01T00:00:00.000000000', '1979-01-01T00:00:00.000000000',
             '1980-01-01T00:00:00.000000000', '1981-01-01T00:00:00.000000000',
             '1982-01-01T00:00:00.000000000', '1983-01-01T00:00:00.000000000',
             '1984-01-01T00:00:00.000000000', '1985-01-01T00:00:00.000000000',
             '1986-01-01T00:00:00.000000000', '1987-01-01T00:00:00.000000000',
             '1988-01-01T00:00:00.000000000', '1989-01-01T00:00:00.000000000',
             '1990-01-01T00:00:00.000000000', '1991-01-01T00:00:00.000000000',
             '1992-01-01T00:00:00.000000000', '1993-01-01T00:00:00.000000000',
             '1994-01-01T00:00:00.000000000', '1995-01-01T00:00:00.000000000',
             '1996-01-01T00:00:00.000000000', '1997-01-01T00:00:00.000000000',
             '1998-01-01T00:00:00.000000000', '1999-01-01T00:00:00.000000000',
             '2000-01-01T00:00:00.000000000', '2001-01-01T00:00:00.000000000',
             '2002-01-01T00:00:00.000000000', '2003-01-01T00:00:00.000000000',
             '2004-01-01T00:00:00.000000000', '2005-01-01T00:00:00.000000000',
             '2006-01-01T00:00:00.000000000', '2007-01-01T00:00:00.000000000',
             '2008-01-01T00:00:00.000000000', '2009-01-01T00:00:00.000000000',
             '2010-01-01T00:00:00.000000000', '2011-01-01T00:00:00.000000000',
             '2012-01-01T00:00:00.000000000', '2013-01-01T00:00:00.000000000',
             '2014-01-01T00:00:00.000000000', '2015-01-01T00:00:00.000000000',
             '2016-01-01T00:00:00.000000000', '2017-01-01T00:00:00.000000000',
             '2018-01-01T00:00:00.000000000', '2019-01-01T00:00:00.000000000',
             '2020-01-01T00:00:00.000000000'], dtype='datetime64[ns]')
    • valid_time
      PandasIndex
      PandasIndex(DatetimeIndex(['1950-01-01', '1951-01-01', '1952-01-01', '1953-01-01',
                     '1954-01-01', '1955-01-01', '1956-01-01', '1957-01-01',
                     '1958-01-01', '1959-01-01', '1960-01-01', '1961-01-01',
                     '1962-01-01', '1963-01-01', '1964-01-01', '1965-01-01',
                     '1966-01-01', '1967-01-01', '1968-01-01', '1969-01-01',
                     '1970-01-01', '1971-01-01', '1972-01-01', '1973-01-01',
                     '1974-01-01', '1975-01-01', '1976-01-01', '1977-01-01',
                     '1978-01-01', '1979-01-01', '1980-01-01', '1981-01-01',
                     '1982-01-01', '1983-01-01', '1984-01-01', '1985-01-01',
                     '1986-01-01', '1987-01-01', '1988-01-01', '1989-01-01',
                     '1990-01-01', '1991-01-01', '1992-01-01', '1993-01-01',
                     '1994-01-01', '1995-01-01', '1996-01-01', '1997-01-01',
                     '1998-01-01', '1999-01-01', '2000-01-01', '2001-01-01',
                     '2002-01-01', '2003-01-01', '2004-01-01', '2005-01-01',
                     '2006-01-01', '2007-01-01', '2008-01-01', '2009-01-01',
                     '2010-01-01', '2011-01-01', '2012-01-01', '2013-01-01',
                     '2014-01-01', '2015-01-01', '2016-01-01', '2017-01-01',
                     '2018-01-01', '2019-01-01', '2020-01-01'],
                    dtype='datetime64[ns]', name='valid_time', freq='YS-JAN'))
  • GRIB_NV :
    0
    GRIB_Nx :
    1440
    GRIB_Ny :
    721
    GRIB_cfName :
    unknown
    GRIB_cfVarName :
    t2m
    GRIB_dataType :
    an
    GRIB_gridDefinitionDescription :
    Latitude/Longitude Grid
    GRIB_gridType :
    regular_ll
    GRIB_iDirectionIncrementInDegrees :
    0.25
    GRIB_iScansNegatively :
    0
    GRIB_jDirectionIncrementInDegrees :
    0.25
    GRIB_jPointsAreConsecutive :
    0
    GRIB_jScansPositively :
    0
    GRIB_latitudeOfFirstGridPointInDegrees :
    90.0
    GRIB_latitudeOfLastGridPointInDegrees :
    -90.0
    GRIB_longitudeOfFirstGridPointInDegrees :
    0.0
    GRIB_longitudeOfLastGridPointInDegrees :
    359.75
    GRIB_missingValue :
    3.4028234663852886e+38
    GRIB_name :
    2 metre temperature
    GRIB_numberOfPoints :
    1038240
    GRIB_paramId :
    167
    GRIB_shortName :
    2t
    GRIB_stepType :
    instant
    GRIB_stepUnits :
    1
    GRIB_totalNumber :
    0
    GRIB_typeOfLevel :
    surface
    GRIB_units :
    K
    last_restart_dim_updated :
    742824
    long_name :
    2 metre temperature
    standard_name :
    unknown
    units :
    °C

To compute the population-weighted 2 metre temperature we will follow the same logic, but this time we will use the population data as weight. To make the population data and temperature data compatible we need to transform the valid_time coordinate of the temperature data to the yearcoordinate of the population data so that the two data array can be easily multiplied:

In [18]:
# shorten the names and replace the valid_time coordiate
temperature = t2m_europe_yearly_mean_computed.assign_coords({"year" : t2m_europe_yearly_mean_computed.valid_time.dt.year}).swap_dims({"valid_time": "year"}).drop_vars("valid_time")
population = europe_population_bands_total_computed

# compute the population wheighted temperature
t2m_europe_yearly_mean_population_weighted = (temperature * population).sum(dim=["latitude", "longitude"]) / population.sum(dim=["latitude", "longitude"])

Finally, we can compare the area-weighted temperature with the population-weighted temperature in the same graph. The first one is the average temperature experienced by the territory, while the second represents the average temperature experienced by people. Notice that the latter is higher than the fisrt.

In [19]:
import matplotlib.pyplot as plt

plt.figure(figsize=(10, 6))
plt.plot(t2m_europe_yearly_mean_area_weighted.valid_time.dt.year, t2m_europe_yearly_mean_area_weighted, marker='o', label='Area-Weighted Average Temperature')
plt.plot(t2m_europe_yearly_mean_population_weighted.year, t2m_europe_yearly_mean_population_weighted, marker='o', label='Population-Weighted Average Temperature')
plt.legend()
plt.title("Europe area Average Temperature (1950-2020)", fontsize=14)
plt.xlabel("Year", fontsize=12)
plt.ylabel("Average Temperature", fontsize=12)
plt.grid(True)
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
No description has been provided for this image