ERA-Interim Vertical Coordinate Conventions
and
Numerical Attributes

Data Support Section
Computational and Information Systems Laboratory
National Center for Atmospheric Research1
Boulder, Colorado

20 October 2008


1The National Center for Atmospheric Research is sponsored by the National Science Foundation.

Contents


Introduction

ERA-15 and ERA-Interim model levels
Diagram illustrates orientation of 31 model levels in ERA-15 (left), and 60 model levels in ERA-40 and ERA-Interim (right). Used with permission of European Centre for Medium-Range Weather Forecasts (ECMWF).
The ERA-Interim (and ERA-40) vertical dimension is defined by an eta ( ) coordinate whereby a purely pressure coordinate at the top and upper levels of the model atmosphere transitions to a hybrid pressure-sigma coordinate at mid- to low-levels, and finally to a terrain-following sigma ( ) coordinate at the lowest few levels and model surface. See figure at right. Pressure in the eta coordinate is a function of surface pressure Ps and a pair of time-independent coefficients denoted by a and b that vary in the vertical, but not the horizontal, direction. In this case

pk(, , t) = ak + bk Ps(, , t)

where k is a generalized vertical index, longitude, latitude, t time, and s is simply "surface". This relationship is of no mean practical utility, playing an essential role in computing vertical integrals and derivatives, finite difference forms of derived fields such as geopotential height, and vertical interpolation schemes, to name just a few. The rest of this document provides details about ERA-Interim vertical coordinate conventions and numerical values of the ak's and bk's. Operational aspects of the ERA-Interim vertical coordinate can be viewed as part of the ECMWF Integrated Forecast System (IFS) documentation package, Part III: Dynamics and Numerical procedures, 2.2.1: Vertical Discretization.


ERA-Interim vertical coordinate conventions (ERA-Interim and ERA-40 share identical conventions and values)

The following schematic illustrates the arrangement of ERA-Interim "full" model levels, and model "half-levels", which in this document are referred to as model "interfaces". A model "layer" includes a single model level, and is bounded by two model interfaces, one above, and one below. The uppermost interface of the model represents the top of the atmosphere (TOA) where the pressure is uniformly zero, and the lowermost interface of the model represents the surface where the pressure is given by the surface pressure Ps. In ERA-Interim, model level data is archived on 60 model levels arranged from top to bottom, and the coefficients a and b are specified for the 61 model interfaces (see for example ERA-40 Archive document referenced below, 2002), also arranged from top to bottom. Model levels (implying archived data), and a and b at interfaces are highlighted in red in the schematic.


                                                                                  a (Pa)      b (Pa Pa-1)

================== TOP OF MODEL ATMOSPHERE ===================== i = 1         a =  0.00000   b = 0.00000

  ---------------------- model level ------- (data) ---------- j = 1           a = 10.00000   b = 0.00000

========================= interface ============================ i = 2         a = 20.00000   b = 0.00000

  ---------------------- model level ------- (data) ---------- j = 2           a = 28.21708   b = 0.00000

========================= interface ============================ i = 3         a = 38.42530   b = 0.00000





  ---------------------- model level ------- (data) ---------- j - 1

========================= interface ============================ i - 1

  ---------------------- model level ------- (data) ---------- j

========================= interface ============================ i

  ---------------------- model level ------- (data) ---------- j + 1





========================= interface ============================ i = 59        a =  7.36774   b = 0.99402

  ---------------------- model level ------- (data) ---------- j = 59          a =  3.68387   b = 0.99582

========================= interface ============================ i = 60        a =  0.00000   b = 0.99763

  ---------------------- model level ------- (data) ---------- j = 60 = J      a =  0.00000   b = 0.99881

======================= MODEL SURFACE ========================== i = 61 = I    a =  0.00000   b = 1.00000
  
In the next section we describe how the numerical values of all the a and b are defined or derived.

Contents


Numerical values of a and b coefficients

The 61 model interface, or half-level, a and b coefficients highlighted in red in the diagram below are taken directly from the Grid Definition Section (GDS) of ERA-Interim model level grib records. (The GDS of a grib record can be examined by decoding the grib record with the EMOSLIB "gribex" subroutine and printing out the values of the "ksec2" and "psec2" arrays returned by gribex. The values of the 61 a and b coefficients are stored in words 11 to 132 of psec2, i.e. the "vertical coordinate parameters", a total of 122 values.)

In contrast, ERA-Interim model level grib records do not contain information about the 60 a and b coefficients for model levels (i.e. "full" levels). In this case a and b must be derived.

The simplest approach, which is implied for example in Section 3.2 of the ERA-40 Archive document (2002), is to obtain the model level a and b coefficients by averaging the interface a and b coefficients immediately above and below the model level. In the Archive document, pressure at model levels is defined by

pj = ½(pi-1 + p1)

where pi-1 is the interface pressure immediately above model level j, and pi is the interface pressure immediately below model level j. Note that for convenience and schematic purposes only we have used the subscripting conventions in the diagram shown above. These subscripts in no way are meant to define any sort of computational indexing. The same pressure at the model level j can be also written in terms of its own a and b's:

pj = aj + bj Ps

Expanding pi-1 and pi, we have

pj = ½(ai-1 + bi-1 Ps) + ½(ai + bi Ps)

or

pj = ½(ai-1 + ai) + ½(bi-1 + bi) Ps

which implies aj = ½(ai-1 + ai) and bj = ½(bi-1 + bi).

An alternative method of obtaining model level a's and b's involves the use of an equation for pj derived by Simmons and Burridge (1981) in an energy and angular-momentum conserving vertical finite-difference scheme. Namely, for all model levels except the uppermost model level,

pj = ½(pi - pi-1) / ln( pi / pi-1 ).

(This is Equation 3.17 of Simmons and Burridge; pj at the uppermost model level is given as one-half the positive difference of the pressure of the interfaces bounding the uppermost model level.) Since pi and pi-1 are functions of Ps, for a given model level one may compute a range of pj's for a range of Ps. It is then straight forward to compute aj and bj for the given model level from linear regression (x = Ps, y = pj, y = aj + bj x). Linear regression is more than justified due to the high correlation of Ps and pj, approaching nearly unity where the slope is nonzero (model level 24 and below for ERA-Interim). This is repeated for all model levels. Trenberth et al (1993) documented this methodology, which has been applied in numerous studies of ECMWF reanalyses (e.g. Trenberth et al, 2002).

In the following schematic, model level a and b coefficients obtained by averaging model interface a's and b's are shown in small print at model levels. Conversely, model level a's and b's obtained using Equation 3.17 of Simmons and Burridge (1981) and linear regression are shown in normal print at model levels.



  i      j              a (Pa)              b (Pa Pa-1)

  1==============      0.00000   =======   0.0000000000
         1-------     10.00000   -------   0.0000000000
                       10.00000                     0.0000000000
  2==============     20.00000   =======   0.0000000000
         2-------     28.21708   -------   0.0000000000
                       29.21265                     0.0000000000
  3==============     38.42530   =======   0.0000000000
         3-------     49.98032   -------   0.0000000000
                       51.03655                     0.0000000000
  4==============     63.64780   =======   0.0000000000
         4-------     78.55990   -------   0.0000000000
                       79.64240                     0.0000000000
  5==============     95.63700   =======   0.0000000000
         5-------    113.95865   -------   0.0000000000
                      115.06000                     0.0000000000
  6==============    134.48300   =======   0.0000000000
         6-------    156.40275   -------   0.0000000000
                      157.53350                     0.0000000000
  7==============    180.58400   =======   0.0000000000
         7-------    206.49757   -------   0.0000000000
                      207.68150                     0.0000000000
  8==============    234.77900   =======   0.0000000000
         8-------    265.36379   -------   0.0000000000
                      266.63750                     0.0000000000
  9==============    298.49600   =======   0.0000000000
         9-------    334.81736   -------   0.0000000000
                      336.23400                     0.0000000000
 10==============    373.97200   =======   0.0000000000
        10-------    417.65684   -------   0.0000000000
                      419.29500                     0.0000000000
 11==============    464.61800   =======   0.0000000000
        11-------    518.15328   -------   0.0000000000
                      520.13450                     0.0000000000
 12==============    575.65100   =======   0.0000000000
        12-------    641.97983   -------   0.0000000000
                      644.43450                     0.0000000000
 13==============    713.21800   =======   0.0000000000
        13-------    795.39773   -------   0.0000000000
                      798.43900                     0.0000000000
 14==============    883.66000   =======   0.0000000000
        14-------    985.47705   -------   0.0000000000
                      989.24500                     0.0000000000
 15==============   1094.83000   =======   0.0000000000
        15-------   1220.98141   -------   0.0000000000
                     1225.65000                      0.0000000000
 16==============   1356.47000   =======   0.0000000000
        16-------   1512.77059   -------   0.0000000000
                     1518.55500                      0.0000000000
 17==============   1680.64000   =======   0.0000000000
        17-------   1874.28858   -------   0.0000000000
                     1881.45500                      0.0000000000
 18==============   2082.27000   =======   0.0000000000
        18-------   2322.20062   -------   0.0000000000
                     2331.08000                      0.0000000000
 19==============   2579.89000   =======   0.0000000000
        19-------   2877.15401   -------   0.0000000000
                     2888.15500                      0.0000000000
 20==============   3196.42000   =======   0.0000000000
        20-------   3564.72489   -------   0.0000000000
                     3578.35500                      0.0000000000
 21==============   3960.29000   =======   0.0000000000
        21-------   4416.61251   -------   0.0000000000
                     4433.50000                      0.0000000000
 22==============   4906.71000   =======   0.0000000000
        22-------   5443.47153   -------   0.0000000000
                     5462.36500                      0.0000000000
 23==============   6018.02000   =======   0.0000000000
        23-------   6641.50297   -------   0.0000000000
                     6662.32500                      0.0000000000
 24==============   7306.63000   =======   0.0000000000
        24-------   8013.73416   -------   0.0000357072
                     8035.84000                      0.0000379118
 25==============   8765.05000   =======   0.0000758235
        25-------   9547.94455   -------   0.0002582745
                     9570.58500                      0.0002686093
 26==============  10376.12000   =======   0.0004613950
        26-------  11205.26776   -------   0.0011050095
                     11226.76000                     0.0011382775
 27==============  12077.40000   =======   0.0018151600
        27-------  12907.86276   -------   0.0033758375
                     12926.35000                     0.0034481400
 28==============  13775.30000   =======   0.0050811200
        28-------  14563.16574   -------   0.0079925049
                     14577.55000                     0.0081120100
 29==============  15379.80000   =======   0.0111429000
        29-------  16089.64450   -------   0.0157437621
                     16099.65000                     0.0159104000
 30==============  16819.50000   =======   0.0206779000
        30-------  17426.43396   -------   0.0271913249
                     17432.35000                     0.0273995500
 31==============  18045.20000   =======   0.0341212000
        31-------  18534.04796   -------   0.0426640634
                     18536.45000                     0.0429058000
 32==============  19027.70000   =======   0.0516904000
        32-------  19391.86413   -------   0.0623432068
                     19391.40000                     0.0626121000
 33==============  19755.10000   =======   0.0735338000
        33-------  19991.39244   -------   0.0863148755
                     19988.65000                     0.0866042500
 34==============  20222.20000   =======   0.0996747000
        34-------  20330.53822   -------   0.1145456939
                     20326.05000                     0.1148488500
 35==============  20429.90000   =======   0.1300230000
        35-------  20412.95420   -------   0.1468931238
                     20407.20000                     0.1472035000
 36==============  20384.50000   =======   0.1643840000
        36-------  20247.54377   -------   0.1831184931
                     20240.95000                     0.1834300000
 37==============  20097.40000   =======   0.2024760000
        37-------  19847.90837   -------   0.2228975265
                     19840.85000                     0.2232045000
 38==============  19584.30000   =======   0.2439330000
        38-------  19231.75199   -------   0.2658305349
                     19224.55000                     0.2661280000
 39==============  18864.80000   =======   0.2883230000
        39-------  18420.17664   -------   0.3114553888
                     18413.10000                     0.3117390000
 40==============  17961.40000   =======   0.3351550000
        40-------  17437.18529   -------   0.3592572773
                     17430.45000                     0.3595235000
 41==============  16899.50000   =======   0.3838920000
        41-------  16309.17935   -------   0.4086814167
                     16302.95000                     0.4089275000
 42==============  15706.40000   =======   0.4339630000
        42-------  15064.35888   -------   0.4591434825
                     15058.75000                     0.4593675000
 43==============  14411.10000   =======   0.4847720000
        43-------  13732.06950   -------   0.5100402350
                     13727.15000                     0.5102410000
 44==============  13043.20000   =======   0.5357100000
        44-------  12342.20552   -------   0.5607618683
                     12338.00000                     0.5609390000
 45==============  11632.80000   =======   0.5861680000
        45-------  10924.65395   -------   0.6107037189
                     10921.15000                     0.6108575000
 46==============  10209.50000   =======   0.6355470000
        46-------   9508.77831   -------   0.6592766211
                     9505.93000                      0.6594080000
 47==============   8802.36000   =======   0.6832690000
        47-------   8122.84150   -------   0.7059171133
                     8120.58000                      0.7060275000
 48==============   7438.80000   =======   0.7287860000
        48-------   6793.32107   -------   0.7501002561
                     6791.56000                      0.7501915000
 49==============   6144.32000   =======   0.7715970000
        49-------   5544.40298   -------   0.7913508267
                     5543.05000                      0.7914250000
 50==============   4941.78000   =======   0.8112530000
        50-------   4397.38096   -------   0.8292546819
                     4396.34500                      0.8293140000
 51==============   3850.91000   =======   0.8473750000
        51-------   3370.10331   -------   0.8634693838
                     3369.30500                      0.8635160000
 52==============   2887.70000   =======   0.8796570000
        52-------   2476.36323   -------   0.8937345668
                     2475.74000                      0.8937705000
 53==============   2063.78000   =======   0.9078840000
        53-------   1725.33559   -------   0.9198849561
                     1724.84500                      0.9199120000
 54==============   1385.91000   =======   0.9319400000
        54-------   1121.01763   -------   0.9418612920
                     1120.63600                      0.9418810000
 55==============    855.36200   =======   0.9518220000
        55-------    661.63000   -------   0.9597198053
                      661.34750                      0.9597335000
 56==============    467.33300   =======   0.9676450000
        56-------    339.05225   -------   0.9736451215
                      338.86350                      0.9736540000
 57==============    210.39400   =======   0.9796630000
        57-------    138.24579   -------   0.9839613161
                      138.14160                      0.9839665000
 58==============     65.88920   =======   0.9882700000
        58-------     36.66772   -------   0.9911418983
                       36.62847                      0.9911445000
 59==============      7.36774   =======   0.9940190000
        59-------      3.68805   -------   0.9958234116
                        3.68387                      0.9958245000
 60==============      0.00000   =======   0.9976300000
        60-------      0.00000   -------   0.9988145314
                        0.00000                      0.9988150000
 61==============      0.00000   =======   1.0000000000

Assuming a surface pressure Ps of 105 Pa (1000 hPa), the following figure shows the resulting difference in pressure at model levels for the two methods. It is clear that the averaging method yields pressures systematically higher than the alternative method, by as much as 27 Pa (0.27 hPa) at model mid-levels.
ERA-Interim model level pressure difference
ERA-Interim model level pressure difference, pave - p3.17, where the subscript "ave" refers to pressure computed with model a's and b's obtained by averaging the interface a's and b's immediately above and below the model level, and similarly the subscript "3.17" refers to pressure computed with model a's and b's obtained by using Equation 3.17 of Simmons and Burridge (1981) and the methodology of Trenberth et al (1993). A surface pressure Ps of 105 Pa (1000 hPa) is assumed in this example.
For general purposes, the averaged model level a's and b's are quite sufficient, introducing a potential error of no more than 0.3 hPa in model level pressure. On the other hand, model level a's and b's obtained using the alternative method build in the natural log and are more suited to intensive computational projects, such as vertical interpolation, where accuracy and internal consistency are of primary importance.

Contents


On-line a and b coefficients

For convenience, we provide individual web pages listing the coefficients described above, as well as Fortran 77 subroutines for retrieving and storing the coefficients in one-dimensional arrays.

Interface level ("half-level") a coefficients, Pa, Fortran 77 subroutine get_a_interface

Interface level ("half-level") b coefficients, Pa Pa-1, Fortran 77 subroutine get_b_interface

Model level ("full-level") a coefficients, Simmons and Burridge (1981) and Trenberth et al (1993), Pa, Fortran 77 subroutine get_a_model_alt

Model level ("full-level") b coefficients, Simmons and Burridge (1981) and Trenberth et al (1993), Pa Pa-1, Fortran 77 subroutine get_b_model_alt

Model level ("full-level") a coefficients, averaging, Pa, Fortran 77 subroutine get_a_model_ave

Model level ("full-level") b coefficients, averaging, Pa Pa-1, Fortran 77 subroutine get_b_model_ave

We also offer a netCDF file containing all ERA-Interim model level coordinate variables and metadata (9516 bytes): ERA-Interim_coordvars.nc. ("Shift middle click" to download.) The metadata is as follows (ncdump -h ERA-Interim_coordvars.nc):


netcdf ERA-Interim_coordvars {
dimensions:
        lvl = 60 ;
        lvlp1 = 61 ;
        lat = 256 ;
        lon = 512 ;
variables:
        int lvl(lvl) ;
                lvl:long_name = "model level" ;
                lvl:units = "dimensionless index" ;
        int lvlp1(lvlp1) ;
                lvlp1:long_name = "interface level" ;
                lvlp1:units = "dimensionless index" ;
        float lat(lat) ;
                lat:long_name = "latitude" ;
                lat:units = "degrees north" ;
        float lon(lon) ;
                lon:long_name = "longitude" ;
                lon:units = "degrees east" ;
        float a_model_alt(lvl) ;
                a_model_alt:long_name = "a model alt" ;
                a_model_alt:units = "Pa" ;
        float b_model_alt(lvl) ;
                b_model_alt:long_name = "b model alt" ;
                b_model_alt:units = "Pa Pa**-1" ;
        float a_model_ave(lvl) ;
                a_model_ave:long_name = "a model ave" ;
                a_model_ave:units = "Pa" ;
        float b_model_ave(lvl) ;
                b_model_ave:long_name = "b model ave" ;
                b_model_ave:units = "Pa Pa**-1" ;
        float a_interface(lvlp1) ;
                a_interface:long_name = "a interface" ;
                a_interface:units = "Pa" ;
        float b_interface(lvlp1) ;
                b_interface:long_name = "b interface" ;
                b_interface:units = "Pa Pa**-1" ;
        float g_wgt(lat) ;
                g_wgt:long_name = "Gaussian weights" ;
                g_wgt:units = "dimensionless" ;
        int reduced_pts(lat) ;
                reduced_pts:long_name = "Reduced Gaussian points" ;
                reduced_pts:units = "unitless" ;

// global attributes:
                :center = "98 (ECMWF)" ;
                :subcenter = "0 (ECMWF)" ;
                :reanalysis = "ERA-Interim" ;
                :data = "ERA-Interim model coordinate variables" ;
                :model_level_synonymous = "full level" ;
                :interface_level_synonymous = "half level" ;
                :_model_alt_explanation = "model level coefficients obtained using equation 3.17 of Simmons and Burridge (1981) and methodology of Trenberth et al (1993)" ;
                :_model_ave_explanation = "model level coefficients obtained by averaging interface level coefficients immediately above and below given model level" ;
                :vertical_parameter_convention = "top to bottom" ;
                :longitudinal_convention = "east to west" ;
                :latitudinal_convention = "north to south" ;
                :Simmons_and_Burridge_1981 = "An energy and angular-momentum conserving finite-difference scheme and hybrid vertical coordinates. Mon. Wea. Rev., 109, 758-766." ;
                :Trenberth_et_al_1993 = "Vertical interpolation and truncation of model-coordinate data. NCAR Technical Note NCAR/TN-396+STR, 54 pp." ;
}

}

Contents


References

European Centre for Medium-Range Weather Forecasts, 2002: The ERA-40 Archive. Reading, ECMWF, 40 pp. (On-line and A4 PostScript versions are available from the ECMWF ERA-40 Project Plan link.)

Simmons, A. J., and D. M. Burridge, 1981: An energy and angular-momentum conserving finite-difference scheme and hybrid vertical coordinates. Mon. Wea. Rev., 109, 758-766.

Simmons, A. J., S. Uppala, D. Dee, and S. Kobayashi, 2007: ERA-Interim: New ECMWF reanalysis products from 1989 onwards. ECMWF Newsletter No. 110 — Winter 2006/07.

Trenberth, K. E., J. C. Berry, and L. E. Buja, 1993: Vertical interpolation and truncation of model-coordinate data. NCAR Technical Note NCAR/TN-396+STR, 54 pp.

Trenberth, K. E., D. P. Stepaniak, and J. M. Caron, 2002: Accuracy of atmospheric energy budgets. J. Climate, 15, 3343-3360.

Contents


Web page written and maintained by David Stepaniak
davestep@ucar.edu
Last modified 20th October 2008.

DSS, the Data Support Section in CISL at NCAR.

Contents