/geoscf2bc

Create lateral boundary conditions from GEOS-CF for CMAQ. Like aqmbc, but specifically for GEOS-CF.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

geoscf2bc

Create lateral boundary conditions from GEOS-CF for CMAQ. Like aqmbc, but specifically for GEOS-CF.

Overview

I've been using GMAO's OpenDAP server to extract GEOS-CF composition from cells at the perimeter of a CMAQ domain from the GEOS-CF 36-layer archives (met, xgc, chm). These results are being used for Lateral Boundary Conditons for CMAQ.

For more information on GEOS-CF, see https://gmao.gsfc.nasa.gov/weather_prediction/GEOS-CF/docs/.

The geoscf2bc installation, application, and conceptual process are described below.

Installation

python -m pip install git+https://github.com/barronh/geoscf2bc.git

Application

The example described here creates a boundary condition file for CMAQ for 2024-01-01. A more detailed explanation is available in the example tutorial.

from geoscf2bc.drivers import default

# The example processes just a single day including 00Z of the next day.
# It uses a built-in GRIDDESC. To provide your own, change gdpath:
# gdpath='/path/to/your/GRIDDESC'
gdpath = None
outpaths = default(
    GDNAM='36US3', gdpath=gdpath, SDATE='2024-01-01T00', EDATE='2024-01-02T00'
)

The main driver can also be called from the command line. This assumes you have a GRIDDESC in your home directory.

python -m geoscf2bc --cffreq=3h --gdpath=~/GRIDDESC 12US1 2024-01-01T00 2024-01-02T00

Conceptual Process

  1. Extract extract fields from GMAO's OpenDAP server
  1. Translate uses definitions that convert GEOS-CF variables to CMAQ
  • geoscf_met.txt : defines PRES, ZH, and DENS consistent with MCIP expectations
  • geoscf_cb6r4.txt : defines most gas-phase chemistry variables
  • geoscf_ae7.txt : defines aerosol-phase variables
  1. Concatenate and Interpolate
  • CMAQ requires hourly files that overlap the entire simulation period (typically 1d)
  • If 3 hourly data was downloaded, then data is concatenated and interpolated to 1h intervals.