Frequent CMAQ Questions
- What is CMAQ?
- Who develops CMAQ?
- Who uses CMAQ?
- Can I run CMAQ outside the United States?
- Can I run CMAQ on my PC/Mac/tablet/smartphone?
- I've heard about a web or "online" version of the model, where is that?
- Can I contribute to CMAQ? What is the process for doing so?
- What other chemical transport models exist?
- What about source-receptor models, land use regression models, or other statisitcal approaches?
- What is the scientific documentation for CMAQ?
- Has CMAQ been peer reviewed?
- Is CMAQ used for air quality forecasting? What is the relationship between CMAQ and the NOAA National Air Quality Forecast Capability?
- What kind of hardware do I need?
- What other software do I need?
- How do I get the code? Can I just download the executable?
- Is there a step-by-step tutorial?
- I've encountered errors while installing/running the model, what should I do?
- What should I do if I need more help?
- What input data do I need to run CMAQ?
- How can I create inital and boundary conditions for my simulation?
- Where can I get meteorological data?
- What meteorological models can be used with CMAQ?
- What land use data set should I use?
- Where can I get emissions data?
- How do I create an OCEAN file?
Questions about Special Configurations
- How do I use the two-way coupled WRF-CMAQ model?
- How do I use the Direct Decoupled Method with CMAQ?
- How do I use ISAM?
Working with CMAQ Outputs
- What tools are available for processing and visualizing CMAQ output?
- How do I compute PM2.5? How do I compute PM10 or PM1?
- What procedures are recommended for evaluating model output?
- What observational data are available for air quality model evaluation?
- Is there a master list of environment variables used in CMAQ, and what their defaults are?
- For a given CMAQ output file, how do I know what model version or configuration was used to generate it?
- What do I need to do to upgrade to the latest version of CMAQ?
- How do I add a new species (inert tracer)?
- How do I add or modify a chemical reaction?
- What are current areas of research and development for CMAQ?
- When is the next model release planned?
- I want to be a beta tester of new CMAQ updates. How do I sign up?
Additional Support Through the CMAS Center
What is CMAQ?
CMAQ is a powerful open-source computational tool used for air quality management. It combines current knowledge in atmospheric science and air quality modeling with multi-processor computing techniques to simultaneously model multiple air pollutants including ozone, particulate matter, and a variety of air toxics. CMAQ can be used to help air quality managers determine the best air quality management scenarios for their communities, regions, and states. It can also provide users with detailed information about air pollutant concentrations in any given area for any specified emission or climate scenario.
Who develops CMAQ?
CMAQ is a product of the Center for Environmental Measurement and Modeling (CEMM) under U.S. Environmental Protection Agency (EPA) Office of Research and Development (ORD). Read more about the CMAQ development team on our About Us page.
CMAQ is used by a wide range of scientists, consultants, and researchers spanning the globe. It is also used by several U.S. agencies including the National Weather Service, the Center for Disease Control, and the EPA Office of Air Quality Planning and Standards. See more information about our users on the CMAQ User Community page.
Yes - we have users in over 50 countries. See more information about the international nature of our user community on the CMAQ User Community page. Also visit our page on CMAQ's invovlement in the Air Quality Model Evaluation International Initiative to learn about some of the groups applying the CMAQ system in Europe.
CMAQ is a linux-based model that requires significant computational resources to run and therefore requires a multi-processor computer. Secure Shell (SSH) applications are often used to remotely access models that have been installed on networked computers or servers.
Because of the computational resources required to run CMAQ, a web or online version of the model does not exist.
Yes! The EPA uses the version control system git to manage the cross-community access to this software. More information on how to collaborate with the EPA team, including contributing code to the CMAQ system can be found on the Opportunities for Collaborators page.
Several other chemical transport models exist including WRF-Chem, CAMx, and GEOS-Chem.
In contrast to statistical air quality models that use historical trends in observed atmospheric conditions to predict air pollution, CMAQ uses coupled mathematical representations of actual chemical and physical processes to simulate air quality. CMAQ belongs to the Eulerian class of mathematical models that are used to integrate our understandings of the complex processes that affect the concentrations of pollutants in the atmosphere. Because the model relies on scientific first principlesThe fundamental concepts or assumptions on which a theory, system, or method is based. to predict the concentration of airborne gases and particles, it can be used to explore different kinds of air pollution scenarios. For example, CMAQ is often used to test the impact of future emission regulations as well as the interaction of meteorology and air quality, e.g. the effects of particles on solar radiation and clouds.
Information about the Peer Review process and their final reports, as well as a list of publications can be found on our Publications and Peer Review page.
Is CMAQ used for air quality forecasting? What is the relationship between CMAQ and the NOAA National Air Quality Forecast Capability (NAQFC)?
The National Weather Service (NWS) uses CMAQ to produce air quality forecasts twice daily. They have been producing these forecasts since 2004. More information on the NAQFC can be found online.
CMAQ is a comprehensive air pollution modeling system whose source code is written in Fortran. CMAQ execution is typically performed on Linux based systems. The hardware configuration of such a system depends on the domain size, grid resolution and simulation duration. Since typical input and output data sets for CMAQ entail three dimensional descriptions of the dynamical and chemical state of the simulated atmosphere, these data sets could require upwards of several gigabytes of disk storage per simulation day.
To simulate the Southeast Benchmark episode provided with the release CMAQ, the following is recommended:
|System component||Hardware requirement|
|Memory||>4 Gb RAM|
|Disk Space||> 400 GB|
What other software do I need?
To install, compile, and run CMAQ on a multi-processor machine (Linux2_x86_64) you need the following pieces of software:
- Fortran compiler (typically Intel, Portland Group, or Gnu Fortran)
- If you're going to do parallel runs, either mpich or openmpi (or a vendor MPI, Like IntelMPI).
- Version 3 or 4 of netCDF. The big issue is that Makefiles need to be configured for v3.x (with "-lnetcdf") or v4.x (with
- I/O API
- mpif90 wrapper
What you don't need:
- netCDF HDF5 support
- I/O API coupling mode
- Z lib
- Curl lib
There are no precompiled executables for CMAQ. You can download the code using a GitHub command or through direct download on our Access Model Source Code page. Check out the Getting Started Tutorial for directions on how to prepare your Linux system for installing and running CMAQ. A list of available CMAQ Tutorials is provided on the CMAQ Documentation page.
There are step-by-step tutorials for common CMAQ tasks on the CMAQ Documentation page.
I've encountered errors while installing/running the model, what should I do?
A good place to start are the CMAQ tutorials on Building CMAQ, Running the CMAQ Test Case and Debugging Tips. A list of available CMAQ Tutorials is provided on the CMAQ Documentation page.
The CMAS Center maintains a community-based user forum website: https://forum.cmascenter.org You can search the forum for past questions and answers on the topic of your interest. To post a new question or respond to an existing post, sign up for the forum by clicking on the "Sign Up" button in the top right corner of the website. Please read and follow these five steps prior to submitting requests for assistance: PLEASE READ before posting
Information for input data can be found on our Model Inputs and Test Case Data page.
How can I create inital and boundary conditions for my simulation?
Information on the CMAQ pre-processors used for creating initial and boundary condition input files is available in Chapter 4 of the CMAQv5.3 User's Guide.
There is no central repository of meteorological data to use with CMAQ. You can obtain sample meteorological data sets generated with the WRF model from the CMAQ Inputs and Test Case page to use with the CMAQ tutorial on Running the CMAQ Test Case. A list of available CMAQ Tutorials is provided on the CMAQ Documentation page.
The released version of CMAQ supports meteorological fields from the Weather Research and Forecasting (WRF) model. Community users have also linked CMAQ to other meteorological models, but those processes have not been made publicly available.
Bi-directional CMAQ uses a land cover data set generated by the BELD4 tool in the Spatial Allocator (SA) Raster Tool which uses information from NLCD and MODIS land cover and crop and forest data at the county level. As part of the FEST-C and SA Installation, you are directed to download NLCD and MODIS data files from their home websites. Crop and forest county-level data tables are provided in the SA data directory. The FEST-C interface has a sub-interface for generating the land use data set which is needed for CMAQ bi-directional modeling. The interface supports NLCD 2002v11 or NLCD 2006v11 and NLCD 2011 with whatever MODIS files you have downloaded. You are prompted for file locations. We will soon be adding an NLCD 2016 option. You will be prompted in the FEST-C interface to choose the land use land cover data set which is most appropriate for your application. You can find the generation procedure in the FEST-C documentation.
The national emissions inventory (NEI) modeling platforms are released by the EPA. Links to various inventory years can be found on our Model Inputs and Test Case Data page.
The CMAQ OCEAN file is used by the CCTM to define surf zone and open ocean grid cells in the calculation of sea salt emissions. The file contains two variables: OPEN, and SURF. The OPEN variable defines open ocean cells. It represents the fraction of an ocean grid cell's area that is further than 50 m from the shoreline. The SURF variable defines surf zone cells. It represents the fraction of an ocean grid cell's area that is within 50m of the shore, not including bays and inlets.
The Spatial Allocator Vector Tools can be used to generate an OCEAN file. The alloc_surf_zone_to_oceanfile script in the Spatial Allocator distribution is an example of how to create an OCEAN file using the allocate mode of the software for the North America. The inputs to the script are an I/O API grid description file and a Shapefile that defines the surf zone. The Shapefile contains an integer attribute called Type. Type 2 = land and Type 3 = surf zone. There is a surf zone Shapefile for North America packaged with the Spatial Allocator (see the Download Sample Data table in the Spatial Allocator downloads area under the CMAS Center software clearinghouse).
The biggest issue for generating an OCEAN file outside of North America is the surf zone Shapefile. This file needs to be created for each new region of the world where CMAQ is being applied. There is no standardized process for creating this Shapefile. Users need to mask the locations in the Shapefile within 50m of the land boundary as the surf zone by assigning the attribute Type = 3 to these areas on the map. See the North American Shapefile as an example.
For step-by-step instructions, see the CMAQ tutorial on Creating an OCEAN File. A list of available CMAQ Tutorials is provided on the CMAQ Documentation page.
Please refer to the CMAQ-DDM-3D Chapter in the User's Guide.
Examples of software programs for evaluating and visualizing CMAQ outputs can be found on our Resources/Utilities for Model Users page.
There are multiple chemical mechanisms available with the CMAQ system. Each chemical mechanism has a corresponding "Species Definition" file that prescribes how model output variables should be combined to predict different gas, particle and deposition species. When you download the CMAQ code for version 5.2 or later, these definition files are automatically included under the subdirectory "CCTM/src/MECHS". You can also view these files online by going directly to the EPA's CMAQ GitHub repository. Browse to CCTM -> src -> MECHS. Within each of the listed mechanism folders, you will find files "SpecDef_MECH_NAME.txt" and "SpecDef_dep_MECH_NAME.txt" that contain a long list of species definitions and corresponding documentation. For example, to find how to calculate PM2.5 using the CB6r3_ae7 mechanism, open the file "SpecDef_cb6r3_ae7_aq.txt" and read the documentation on PM2.5 calculations. The species definition file will indicate which species should be included in PM2.5 (for example: sulfate, ammonium, and organic carbon) as well as factors to obtain the fraction of each CMAQ size distribution mode that corresponds to 2.5 micron (diameter) and smaller particles. Similar information is available for calculating PM10 and PM1. These species definition files are designed to be used with the combine and sitecmp utilities to match air pollutant measurements with the appropriate model predicted output. Information on combine, sitecmp and other post-processing utilities can also be found on the CMAQ GitHub repository under the directory "POST".
Learn more about the CMAQ Model Evaluation Framework and find examples of recent evaluation studies of the CMAQ system.
Air quality observation data formatted specifically for model evaluation are available from nine air quality monitoring networks for 2001 - 2017 from the CMAS Data Clearinghouse. These formatted observation data files are designed for use with the sitecmp utility to match model and observed data. Previously users had to download these data from various locations on the web and possibly reformat them to be compatible with the sitecmp utility for matching modeled and observed data. Observation files are included for the years 2001 through 2017 for the following networks: AERONET, AMON, AQS (hourly data), CASTNET (hourly and weekly data), CSN, FLUXNET, IMPROVE, MDN, NADP, NAPS, and SEARCH (hourly and daily data). See the accompanying README file in the obs_data folder with information on the creation dates for each of the observation files.
- Environment variable list provided in the CMAQ User's Guide for version 5.3
- Sample run scripts provided on EPA's CMAQ GitHub repository
For a given CMAQ output file, how do I know what model version or configuration was used to generate it?
Enhanced metadata options are available with I/O API version 3.2.
- I/O API download and documentation
- Information on how to enable the enhanced meta data options in I/O APIv3.2
What do I need to do to upgrade to the latest version of CMAQ?
For information on updating from v5.2.1 to v5.3 or from v5.3 to v5.3.1 or v5.3.2 see the CMAQ FAQ available with the CMAQv5.3.2 Release Notes on GitHub.
For step-by-step instructions, see the CMAQ tutorial on Adding a Tracer. A list of available CMAQ Tutorials is provided on the CMAQ Documentation page.
The chemical reactions used by the model are available in the mech*.def file located within the code repository’s CCTM/src/MECHS folder for the relevant mechanism. The mech*.def file is not directly used by the fortran CCTM code but is preprocessed by other utilities to provide the files needed for the CCTM. After modifying mech*.def, the RXNS_DATA_MODULE.F90 and RXN_FUNC_MODULE.F90 files can be created using the CHEMMECH pre-processor (UTIL/chemmech/). If the ebi solver is desired, the ebi solver code must also be updated which can be accomplished using the create_ebi utility also located in the UTIL folder of the code repository.
We now have an entire page devoted to ongoing research and development called Research Highlights!
Updates to CMAQ are typically provided on a one to two year time scale. View the release calendar provided by CMASto see historical and future release dates for new versions and bug fixes.
You can check the EPA's CMAQ GitHub repository to see if there are any current beta versions available. Click on Branch: master to see a pull down menu of available versions. New beta versions of the model are announced through the CMAS Forum website.
- EPA's CMAQ GitHub repository
- CMAS User Forum for discussion and support of atmospheric modeling software
The CMAS User Forum is available for users and developers to discuss issues related to the U.S. EPA’s CMAQ modeling system and associated software maintained by the U.S. EPA and the CMAS Center.