MERRA implementation details

From Geos-chem
Revision as of 17:11, 16 August 2010 by Bmy (Talk | contribs) (Required coding changes in GEOS-Chem)

Jump to: navigation, search

NOTE: Page under construction!

On this page we list the necessary modifications to GEOS-Chem for MERRA compatibility.


The GMAO MERRA data product is a 30-year reanalysis done with the GEOS-5.2.0 assimilation system. Therefore, within GEOS-Chem we can (for the most part) treat MERRA in the same way as we do for the GEOS-5 meteorology.

However, in order to reduce the volume of data produced (and for other technical concerns), GMAO chose to reduce the vertical and/or horizontal resolution of some important MERRA data fields. Also, some MERRA data fields have different units than in the GEOS-5 product. Because of this, some additional special handling may be required within GEOS-Chem.

Key similarities

The following aspects of MERRA are identical to the GEOS-5 operational data product.

  1. The MERRA high-resolution grid (0.5° x 0.666°) is identical to that of GEOS-5.
  2. The MERRA vertical grid (72 hybrid levels) is identical to that of GEOS-5.

Key differences

The following aspects of MERRA differ from the GEOS-5 operational data product:

  1. The MERRA temporal resolution differs from GEOS-5 as follows:
    • Surface data: hourly averages (MERRA) vs. 3-hour averages (GEOS-5)
    • 3-D data: 3-hour averages (MERRA) vs. 6-hour averages (GEOS-5)
  2. Differences in individual MERRA met fields:
    • Most of the releveant MERRA 3-D data for GEOS-Chem are only available at 1° x 1.25° horizontal resolution.
    • OMEGA, PV, RH are 6-hr instantaneous data in MERRA but are 6-hr averaged data in GEOS-5
    • SNOMAS (snow mass) has units of kg/m2 in MERRA but mm in GEOS-5
    • Many of the precipitation fields (e.g. DQIDTMST, DQVDTMST, DQLDTMST, etc.) are saved on a 1.25° x 1.25° x 42 pressure levels instead of 72 hybrid levels. P -> hybrid interpolation is necessary.
    • The MERRA fields FRLAKE, FRLAND, FRLANDIC, FROCEAN, PHIS are time-invariant.

Required coding changes in GEOS-Chem

As noted in the section above, the similarities between GEOS-5 and MERRA (especially of the vertical grids) means that in most cases we can just treat MERRA in the same way as for GEOS-5. In many areas of the code, the coding changes are straightforward and simply involve an extension of C-preprocessor statements such as:

#if defined( GEOS_5 )


#if defined( GEOS_5 ) || defined( MERRA ) 

In other areas of GEOS-Chem the changes are more involved. Below we provide a description of the areas of GEOS-Chem that were modified for MERRA:

Headers directory

The following modifications for MERRA were made in the Headers/ subdirectory:

  1. define.h
    • Add a new C-preprocessor switch named "MERRA".
  2. CMN_SIZE:
    • Added size parameters for MERRA 4 x 5 and MERRA 2 x 2.5 grids.

GeosUtil directory

The following modifications for MERRA were made in the GeosUtil/ subdirectory:

  1. bpch2_mod.f
    • GET_MODELNAME: Add "MERRA_47L" and "MERRA" modelnames to the #if block
    • GET_NAME_EXT: Return grid name "geos5" for MERRA fields
  2. pressure_mod.f
    • GET_PRESSURE: Compute PEDGE for MERRA in the same way as for GEOS-5
    • INIT_PRESSURE: Initialize Ap and Bp for MERRA in the same way as for GEOS-5
  3. transfer_mod.f
    • Collapse vertical levels in the stratosphere for MERRA in the same way as for GEOS-5

GeosCore directory

Outstanding issues