1.2.3. Summary Descriptions of the Major CMAQ Programs
The major CMAQ components and ancillary programs are the following:
- Model Builder (M3BLD) - The only CMAQ component written in C, M3BLD provides an interface to the CVS source code archive for exporting the source
code, and to the FORTRAN compiler for building binary executables. As M3BLD is required to create all of the CMAQ executables
except MCIP, it is the first program that needs to be compiled after installing the CMAQ source code on your system. In addition
to creating executables, it also provides the option of generating a UNIX Makefile, which is particularly useful for porting
the CMAQ code to new operating systems, testing new code in a development environment, or troubleshooting problems with CMAQ
compilation or execution.
- Photolysis Rate Preprocessor (JPROC) - JPROC calculates chemical-mechanism-specific clear-sky photolysis rates at fixed altitudes, hour angles, and latitude bands
from tabulated absorption cross-section and quantum yield (CSQY) data. While CMAQ is distributed with CSQY data that support
the default chemical mechanisms, updating or adding new CSQY data is straightforward. The only configuration option required
for JPROC is the selection of the chemical mechanism to model. Output from JPROC is an ASCII lookup table of photolysis rates
that the CCTM uses to calculate gas-phase chemical transformations and pollutant concentrations.
- Initial Conditions Processor (ICON) - ICON generates a gridded binary netCDF file of the chemical conditions in the modeling domain for the first hour of a simulation.
It can generate these initial conditions from either an ASCII file of vertically resolved concentration profiles or from an
existing CCTM output file. If the ASCII profiles do not have the same vertical structure as the CCTM configuration, ICON will
interpolate the data to a vertical structure consistent with the CCTM's. Using an existing CCTM output file to generate initial
conditions is applicable when extrapolating initial conditions from a coarse to a fine grid simulation, as may occur when
setting up nested simulations. The configuration options for ICON include selecting the chemical mechanism to model, defining
the horizontal and vertical grids, and choosing whether the initial conditions are generated from an ASCII profile or from
an existing CCTM output file.
- Boundary Conditions Processor (BCON) - BCON generates a gridded binary netCDF file of the chemical conditions along the horizontal boundaries of the modeling
domain. These boundary conditions can be either static or time-varying, and (as with ICON) can be generated from either an
ASCII file of vertically resolved concentration profiles or from an existing CCTM output file. Also as with ICON, BCON will
interpolate the data in the ASCII profiles to a vertical resolution that is consistent with the CCTM configuration. BCON differs
from ICON in that it can generate time-varying (i.e., dynamic) boundary conditions. Dynamic boundary conditions are typically
extracted from CCTM outputs from a coarse grid simulation for nested simulations or from a CTM simulation using a global-scale
model. The file structure of the ASCII input profiles can also support the creation of dynamic boundary conditions, but generally
these files are used for creating static data. The configuration options for BCON include selecting the chemical mechanism
to model, defining the horizontal and vertical grids, and choosing whether the boundary conditions are generated from an ASCII
profile or from an existing CCTM output file.
- Meteorology-Chemistry Interface Processor (MCIP) - MCIP uses MM5 or WRF output files to create netCDF-based input meteorology for the emissions model and the CCTM. MCIP prepares
and diagnoses all meteorological fields that are required for the emissions model and the CCTM. In addition, MCIP is currently
used to calculate the time-varying, species-dependent dry deposition velocities that are used in the CCTM. MCIP can be used
to uniformly trim cells off the boundary of the domain defined by the meteorological model, or to window in on a subset of
that domain. MCIP can also decrease the vertical resolution of the meteorological data by “layer collapsing”, although this option should be used with caution as it can degrade the quality of the data if used incorrectly. Configuration
options for MCIP include the time periods over which to extract data from the meteorological model output files, horizontal
and vertical grid information, and selections for either passing through certain MM5-calculated variables unaltered or recalculating
these variables within MCIP.
- CMAQ Chemistry-Transport Model (CCTM) - The CCTM integrates the output from all of the preprocessing programs, including the emissions and meteorology models,
to simulate continuous atmospheric chemical conditions. The concentrations of relevant species can be captured for output
at a user-definable frequency (typically hourly). The CCTM output files (some of which are “optional”) are all binary netCDF files of gridded and temporally resolved air pollutant information, such as gas- and aerosol-phase
species mixing ratios, hourly wet and dry deposition values, visibility metrics, and integral-averaged concentrations. The
spatial and temporal extent of the CCTM output is dictated by the input meteorology. The science configuration is specific
to each application of the model and can be adjusted to optimize model performance both computationally and in the numerical
reproduction of observed air quality trends. Configuration options for the CCTM include the temporal coverage of the simulation,
the chemical mechanism to model, the physics scheme to use for modeling pollutant transport, heterogeneous and aqueous chemistry
options, plume-in-grid options, and diagnostic options (such as process analysis). The CCTM has the largest number of configuration
options of all the CMAQ programs.
- Plume Dynamics Model (PDM) - The PDM is the plume-in-grid preprocessor to CMAQ. It generates plume dynamics, such as dimensions and location, from
special emissions input files generated by an emissions model for plume-in-grid simulations (see Section 5.9).. The information generated by the PDM is supplied to a CCTM executable instrumented for plume-in-grid modeling that uses
a Lagrangian reactive plume model for sub-grid-scale representation of plumes from large point sources. The output from the
PDM is a binary netCDF file of plume parameters for input to the CCTM.
- Process Analysis Preprocessor (PROCAN) - PROCAN generates FORTRAN INCLUDE files for building a version of the CCTM that can calculate integrated process rates and/or
integrated reactive rates for diagnosing CMAQ simulations. It uses an input configuration file to select the processes analysis
options, and outputs three INCLUDE files that are used to compile a version of the CCTM instrumented for process analysis.
- Chemical Mechanism Compiler (CHEMMECH) - This program creates mechanism INCLUDE files for CMAQ from a mechanism definition file. Chemical mechanisms are represented
in CMAQ through a series of INCLUDE files that contain mechanistic and kinetic parameters that describe the mechanism. CHEMMECH
creates these INCLUDE files from an ASCII mechanism definition file that represents the chemistry as sequential equations
of reactants, products, and reaction rate information. This program is needed to modify reactions' stoichiometry or kinetics
in the existing mechanisms, and to add new species that require the addition of new reactions.
More detailed discussions of the formulation of the above CMAQ programs are available in Chapter 2 below, in Byun and Ching (1999), and in Byun and Schere (2006).