Skip to content

BCON Mappings File

barronh edited this page Aug 31, 2017 · 2 revisions

Mapping Global Model Elements

pncglobal2cmaq.py needs at a minimum pressure, density and at least one composition element. The elements are specified in a JavaScript Object Notation (JSON) file. There are two primary sections. The first specifies pressure and density in the global model. The second section species how to convert global model composition elements to CMAQ composition elements.

  • pressure (PRESS) will be used for vertical interpolation. It should be specified in Pascals as either a variable or an equation. For GEOS-Chem ND49, an example is shown below.
  • mole and mass density (AIRMOLDENS, AIRMASSDENS) will be used for unit conversion.
  • CMAQ definitions are specified as a dictionary of CMAQ outputs species. Each species is a dictionary with the expression, unit and optionally comments are provided.

For GEOS-Chem ND49, an example is shown below.

{
    "PRESS": {
            "expression": "(hyam[:].reshape(1, -1).T + hybm[:].reshape(1, -1).T * PSURF[:][:, [0]].T).T * 100.",
            "outunit": "Pa"
        },
    "AIRMOLDEN": {
            "expression": "(hyam[:].reshape(1, -1).T + hybm[:].reshape(1, -1).T * PSURF[:][:, [0]].T).T * 100. / 8.3144621 / TMPU[:]",
            "outunit": "moles/m**3",
        }, 
    "AIRMASSDEN": {
            "expression": "0.0289645 * (hyam[:].reshape(1, -1).T + hybm[:].reshape(1, -1).T * PSURF[:][:, [0]].T).T * 100 / 8.3144621 / TMPU[:]",
            "outunit": "kg/m**3",
        }, 
    "CMAQSPECIES": {
        "AIRDEN": {
            "expression": "(hyam[:].reshape(1, -1).T + hybm[:].reshape(1, -1).T * PSURF[:][:, [0]].T).T * 100 / 8.3144621 / TMPU[:] * 6.022e23 / 1e6",
            "outunit": "molec/cm3",
            "manual_unit": true,
            "comment": "Full calculated unit",
        },
        "O3": {
            "expression": "O3",
            "outunit": "ppmV"
        },
...
        "AECI": {
            "expression": "0.001 * BCPI + 0.001 * BCPO",
            "outunit": "micrograms/m**3"
        },
...
}

The ellipsis (...) represent many other species that can be mapped. A default mappings.json file can be created using the template option from pncglobal2cmaq.py.

Clone this wiki locally