UCAR

DISCLAIMERS

The following institutions were instrumental in the development of the WRF/Chem model and its

documentation.

Department of Commerce/National Oceanic and Atmospheric Administration

The Cooperative Institute for Research in Environmental Sciences

The University Corporation for Atmospheric Research (UCAR)

the National Center for Atmospheric Research (NCAR)

The Max Plank Institute

The University of Chile

This document does not constitute endorsement of the information, products or services contained herein by the contributing institutions previously named or unamed. For other than authorized activities, the contributing institutions do not exercise any editorial control over the information contained herein. Any opinions, findings, conclusions or recommendations expressed in

this document are those of the authors and do not necessarily reflect those of the contributing

institutions. In no event shall these institutions, or any unmentioned institution associated with

WRF/Chem development, be liable for any damages, whatsoever, whether direct, indirect, consequential or special, that arise out of or in connection with the access, use or performance of

WRF/Chem, including infringement actions.

The Weather Research and Forecasting model (WRF hereafter) was developed at the National

Center for Atmospheric Research (NCAR) which is operated by the University Corporation for

Atmospheric Research (UCAR). NCAR and UCAR make no proprietary claims, either statutory

or otherwise, to this version and release of WRF and consider WRF to be in the public domain for

use by any person or entity for any purpose without any fee or charge. UCAR requests that any

WRF user include this notice on any partial or full copies of WRF. WRF is provided on an “AS

IS” basis and any warranties, either express or implied, including but not limited to implied warranties of non-infringement, originality, merchantability and fitness for a particular purpose, are

disclaimed. In no event shall UCAR be liable for any damages, whatsoever, whether direct, indirect, consequential or special, that arise out of or in connection with the access, use or performance of WRF, including infringement actions.
1

WRF/Chem Version 3.3 User’s Guide 

Table of Contents

1.1 Introduction ...................................................................................................................3

1.2 WRF/Chem software.................................................................................................4

1.3 Possible applications of the current modeling system ..............................................5

1.4 The WRF/Chem modeling system overview ................................................................5

2.1 Introduction ...................................................................................................................8

2.2 Building the WRF-chemistry code................................................................................9

2.2.1 Getting the code .....................................................................................................9

2.2.2 UNIX environment settings for WRF/Chem .........................................................9

2.2.3 Configuring the model and compiling the code ...................................................10

2.2.4 Building the WRF-chemistry emissions conversion code ...................................10

3.1 Introduction .................................................................................................................12

3.2 Preparation of anthropogenic emissions for use with WRF/Chem.............................12

3.2.1 The standard 4km resolution data set (2005 NEI emissions data for USA only) 13

3.2.1.1 Anthropogenic-emissions construction methodology for WRF/Chem.........13

3.2.1.2 Construction of an anthropogenic-emissions-inventory conversion table ....14

3.2.1.3 Additional details for running emiss_v03.F with the NEI-05 anthopogenicemissions data set......................................................................................................18

3.2.2 Using the global emissions data set......................................................................19

3.2.3 Wildfire emissions................................................................................................20

3.3 Generating the netcdf emissions data sets...................................................................20

3.4 Construction and preparation of tracer emissions.......................................................22

3.5 Preparation of biogenic emissions...............................................................................23

3.5.1 No biogenic emissions .........................................................................................23

3.5.2 Guenther biogenic emissions ...............................................................................23

3.5.3 BEIS 3.13 biogenic emissions..............................................................................23

3.5.4 MEGAN biogenic emissions................................................................................25

3.6 Conversion of biogenic emission data files.................................................................25

3.7 Placement of chemical emission input data files ........................................................25

4.1 Introduction .................................................................................................................26

4.2 WRF/Chem namelist options: the choice of CHEM_OPT .........................................26

4.3 Other chemistry namelist options................................................................................30

4.3.1 Running with only dust aerosols..........................................................................34

4.3.2 Tracers running with chemistry............................................................................34

4.4 Typical choices for namelist options...........................................................................35

4.5 Input fields for chemical constituents .........................................................................37

4.6 Using chemical boundary conditions from other modeling systems ..........................39

4.6.1 The wrfchembc utility ..........................................................................................39

4.6.2 The mozbc utility .................................................................................................39

4.7 Making a nested domain WRF/Chem simulation .......................................................40

5.1 Introduction .................................................................................................................42

5.2 The ncdump application..............................................................................................42

5.3 Using NCL scripts.......................................................................................................43

5.4 The ncview application ...............................................................................................45
2

5.5 The RIP application.....................................................................................................46

5.5.1 Downloading and installing the RIP program......................................................46

5.5.2 Pre-processing data from WRF/Chem .................................................................47

5.5.3 Generating NCAR GKS plots using RIP .............................................................48

6.1 Introduction .................................................................................................................51

6.2 KPP requirements........................................................................................................52

6.3 Compiling the WKC....................................................................................................52

6.4 Implementing chemical mechanisms with WKC........................................................52

6.5 Layout of WKC...........................................................................................................53

6.6 Code produced by WKC, User Modifications............................................................54

6.7 Available integrators...................................................................................................55

6.8 Adding additional mechanisms with WKC.................................................................55

6.9 Adapting KPP equation files.......................................................................................56

6.10 Adapting additional KPP integrators for WKC.........................................................57

7.1 Summary .....................................................................................................................58

7.2 WRF/Chem publications.............................................................................................58

Appendix A : WRF/Chem Quick Start Guide...................................................................66

Appendix B : Using prep_chem_sources V1 ....................................................................73

Appendix C: Using prep_chem_sources V1.1.1 ...............................................................85

Appendix D: Using MEGAN with WRF/Chem ...............................................................88

Appendix E: Using MOZART with WRF/Chem..............................................................91

Appendix F: Using the Lightning-NOx Parameterization ................................................93
3

WRF/Chem Version 3.3 User’s Guide 

WRF/Chem Overview

Table of Contents

1.1 Introduction ...................................................................................................................3

1.2 WRF/Chem software.....................................................................................................4

1.3 Possible applications of the current modeling system ..................................................5

1.4 The WRF/Chem modeling system overview ................................................................5

1.1 Introduction

The WRF/Chem user’s guide is designed to provide the reader with information 

specific to the chemistry part of the WRF model and its potential applications. It will 

provide the user a description of the WRF/Chem model and discuss specific issues 

related to generating a forecast that includes chemical constituents beyond what is 

typically used by today’s meteorological forecast models. For additional information 

regarding the WRF model, the reader is referred to the WRF model User’s Guide 

(http://www.mmm.ucar.edu/wrf/users/docs/user_guide_V33/contents.html).

Presently, the WRF/Chem model is now released as part of the Weather Research 

and Forecasting (WRF) modeling package. And due to this dependence upon WRF, it is 

assumed that anyone choosing to use WRF/Chem is very familiar with the set-up and use 

of the basic WRF model. It would be best for new WRF users to first gain training and 

experience in editing, compiling, configuring and using WRF before venturing into the 

more advanced realm of setting up and running the WRF/Chem model.

The WRF/Chem model package consists of the following components (in addition 

to resolved and non resolved transport): 

! Dry deposition, coupled with the soil/vegetation scheme

! Four choices for biogenic emissions:

" No biogenic emissions included.

" Online calculation of biogenic emissions as in Simpson et al. (1995) and Guenther 

et al. (1994) includes emissions of isoprene, monoterpenes, and nitrogen 

emissions by soil.

" Online modification of user specified biogenic emissions - such as the EPA 

Biogenic Emissions Inventory System (BEIS) version 3.13. The user must 

provide the emissions data for their own domain in the proper WRF data file 

format.

" Online calculation of biogenic emissions from MEGAN.

! Three choices for anthropogenic emissions:

" No anthropogenic emissions
4

" User-specified anthropogenic emissions such as those available from the EPA 

NEI-05 data inventory. The user must provide the emissions data for their own 

domain in the proper WRF data file format.

" Global emissions data from the one-half degree RETRO and ten degree EDGAR 

data sets.

! Several choices for gas-phase chemical mechanisms including 

" RADM2, RACM, CB-4 and CBM-Z chemical mechanisms.

" The use of the Kinetic Pre-Processor, (KPP) to generate the chemical 

mechanisms. The equation files (using Rosenbrock type solvers) currently 

available for RADM2, RACM, RACM-MIM, SAPRC-99, MOZART chemical 

mechanisms as well as others.

! Three choices for photolysis schemes:

" Madronich scheme coupled with hydrometeors, aerosols, and convective 

parameterizations. This is a computationally intensive choice, tested with many 

setups.

" Fast-J photolysis scheme coupled with hydrometeors, aerosols and convective 

parameterizations.

" F-TUV photolysis scheme. This scheme is also from Sasha Madronich. Faster, but 

does not work with all aerosol options.

! Three choices for aerosol schemes:

" The Modal Aerosol Dynamics Model for Europe - MADE/SORGAM.

" The Model for Simulating Aerosol Interactions and Chemistry (MOSAIC - 4 or 8 

bins) sectional model aerosol parameterization.

" A total mass aerosol module from GOCART.

! Aerosol direct effect through interaction with atmospheric radiation, photolysis, and 

microphysics routines. In version 3.3 this is available for GOCART, MOSAIC or 

MADE/SORGAM options.

! Aerosol indirect effect through interaction with atmospheric radiation, photolysis, and 

microphysics routines. In V3.3 this options is available for MOSAIC or 

MADE/SORGAM.

! A tracer transport option in which the chemical mechanism, deposition, etc. has been 

turned off. The user must provide the emissions data for their own domain in the 

proper WRF data file format for this option. May be run parallel with chemistry.

! A plume rise model to treat the emissions of wildfires.

1.2 WRF/Chem software

The chemistry model has been built to be consistent with the WRF model I/O 

Applications Program Interface (I/O API). That is, the chemistry model section has been 

built following the construction methodology used in the remainder of the WRF model. 

Therefore, the reader is referred to the WRF software description in the WRF User’s 

Guide (Chapter 7) for additional information regarding software features like the build 

mechanism and adding arrays to the WRF registry. 
5

1.3 Possible applications of the current modeling system

! Prediction and simulation of weather, or regional or local climate.

! Coupled weather prediction/dispersion model to simulate release and transport of 

constituents.

! Coupled weather/dispersion/air quality model with full interaction of chemical 

species with prediction of O3 and UV radiation as well as particulate matter (PM).

! Study of processes that are important for global climate change issues. These 

include, but are not restricted to the aerosol direct and indirect forcing.

1.4 The WRF/Chem modeling system overview

The following figure shows the flowchart for the WRF/Chem modeling system version 

3.3.
6

As shown in the diagram, the WRF/Chem modeling system follows the same structure as 

the WRF model by consisting of these major programs:

! The WRF Pre-Processing System (WPS),
7

! WRF-Var data assimilation system,

! WRF solver (ARW, o r NMM core) including chemistry,

! Post-processing and visualization tools.
8

Chapter 2: WRF/Chem Software Installation

Table of Contents

2.1 Introduction ...................................................................................................................8

2.2 Building the WRF-chemistry code................................................................................9

2.2.1 Getting the code .....................................................................................................9

2.2.2 UNIX environment settings for WRF/Chem .........................................................9

2.2.3 Configuring the model and compiling the code ...................................................10

2.2.4 Building the WRF-chemistry emissions conversion code ...................................10

2.1 Introduction

The WRF modeling system software (including chemistry) installation is 

straightforward on the ported platforms. The package is mostly self-contained, meaning 

that WRF requires no external libraries that are not already supplied with the code. One 

exception is the netCDF library, which is one of the supported I/O API packages. The 

netCDF libraries or source code are available from the Unidata homepage at 

http://www.unidata.ucar.edu (select DOWNLOADS, registration required, to find the 

netCDF link).

The WRF/Chem model has been successfully ported to a number of Unix-based 

machines. We do not have access to all tested systems and must rely on outside users and 

vendors to supply required configuration information for compiler and loader options of

computing architectures that are not available to us. See also chapter 2 of the User’s 

Guide for the Advanced Research WRF for a list of the supported combinations of 

hardware and software, required compilers, and scripting languages as well as postprocessing software. It can not be guaranteed that chemistry will build successfully on all 

architectures that have been tested for the meteorological version of WRF.

Note that this document assumes a priori that the reader is very familiar with the 

installation and implementation of the WRF model and its initialization package (e.g., the

WRF Standard Initialization program, or WPS). Documentation for the WRF Model and 

its initialization package can be found at (http://www.mmm.ucar.edu/wrf/users/pubdoc.html). With this assumption in place, the remainder of this chapter provides a quick 

overview of the methodology for downloading the WRF/Chem code, setting the required 

environmental variables, and compiling the WRF/Chem model. Subsequent chapters 

assume that the user has access to the WRF/Chem model and emission data sets for their 

region of interest and has them readily available so that a full weather and chemical 

transport simulation can be conducted. 
9

2.2 Building the WRF-chemistry code

2.2.1 Getting the code

! Download, or copy to your working space, the WRF zipped tar file

• The WRF model and the chemistry code directory are available from the 

WRF model download web site (http://www.mmm.ucar.edu/wrf/users).

• The chemistry code is a separate download from the WRF model 

download web page and can be found under the WRF-Chemistry code 

title.

• Always get the latest version if you are not trying to continue a long 

project.

• Check for known bug fixes for both, WRF and WRF-Chem.

! Unzip and untar the file

• > gzip –cd WRFV3-Chem-3.3.TAR | tar –xf –

• Again, if there is a newer version of the code use it, 3.3 is used only as an 

example.

• > cd WRFV3

Remember that bug fixes become available on a regular basis and can be downloaded 

from the WRF/Chem web site (http://www.wrf-model.org/WG11). You should check this 

WEB page frequently for updates on bug fixes. This includes also updates and bug fixes 

for the meteorological WRF code (http://www.mmm.ucar.edu/wrf/users/).

2.2.2 UNIX environment settings for WRF/Chem

Before building the WRF/Chem code, several environmental settings are used to 

specify whether certain portions of the code need to be included in the model build. In cshell syntax, the important environmental settings are:

setenv WRF_EM_CORE 1

setenv WRF_NMM_CORE 0

explicitly defines which model core to build. These are the default values which are 

generally not required. The environmental setting

setenv WRF_CHEM 1

explicitly defines that the chemistry code is to be included in the WRF model build, and 

is required for WRF/Chem. This variable is required at configure time as well as compile 

time.

optionally,
10

setenv WRF_KPP 1,

setenv YACC ‘/usr/bin/yacc –d’,

setenv FLEX_LIB_DIR /usr/local/lib

explicitly defines that the Kinetic Pre-Processor (KPP) (Damian et al. 2002, Sandu et al. 

2003; Sandu and Sander 2006) is to be included in the WRF/Chem model build using the 

flex library (libfl.a). In our case the flex library is located in /usr/local/lib and compiles 

the KPP code using the yacc (yet another compiler compiler) location in /usr/bin. This is 

optional as not all chemical mechanisms need the KPP libraries built during compilation. 

The user may first determine whether the KPP libraries will be needed (see chapter 6 for 

a description of available options). One should set the KPP environmental variable to 

zero (setenv WRF_KPP 0) if the KPP libraries are not needed.

2.2.3 Configuring the model and compiling the code

The WRF code has a fairly complicated build mechanism. It tries to determine the 

architecture that you are on, and then present you with options to allow you to select the 

preferred build method. For example, if you are on a Linux machine, the code mechanism 

determines whether this is a 32-or 64-bit machine, and then prompts you for the desired 

usage of processors (such as serial, shared memory, or distributed memory) and 

compilers. Start by selecting the build method: 

! > ./configure

! Choose one of the options

• Usually, option "1" is for a serial build. For WRF/Chem, do not use the 

shared memory OPENMP option (smpar, or dm + sm), these are not 

supported. The serial build is a preferred choice if you are debugging the 

program and are working with very small data sets (e.g. if you are 

developing the code). Since WRF/Chem uses a lot of memory (many 

additional variables), the distributed memory options are preferred for all 

other cases.

! You can now compile the code using

• > ./compile em_real >& compile.log

! If your compilation was successful, you should find the executables in the 

“main” subdirectory. You should see ndown.exe, real.exe, and wrf.exe listed.

• > ls -ls main/*.exe

2.2.4 Building the WRF-chemistry emissions conversion code

After building the WRF-Chemistry model, you can then compile the conversion 

programs that will allow you to run the anthropogenic and biogenic emissions programs. 
11

These programs are used to convert “raw” anthropogenic and biogenic data files into 

WRF netCDF input data files. In the WRFV3 directory, type the following commands:

! > ./compile emi_conv 

! > ls -ls WRFV3/chem/*.exe

• You should see the file convert_emiss.exe listed in the chemistry 

directory. This file should already be linked to the WRFV3/test/em_real 

directory.

! > ls -ls WRFV3/test/em_real/*.exe

• You should see the files ndown.exe, real.exe, wrf.exe, convert_emiss.exe, 

listed in the em_real directory.
12

Chapter 3: Generation of WRF/Chem Emissions Data

Table of Contents

3.1 Introduction ..............................................................................................................12

3.2 Preparation of anthropogenic emissions for use with WRF/Chem.............................12

3.2.1 The standard 4km resolution data set (2005 NEI emissions data for USA only) 13

3.2.1.1 Anthropogenic-emissions construction methodology for WRF/Chem.........13

3.2.1.2 Construction of an anthropogenic-emissions-inventory conversion table ....14

3.2.1.3 Additional details for running emiss_v03.F with the NEI-05 anthopogenicemissions data set......................................................................................................18

3.2.2 Using the global emissions data set......................................................................19

3.2.3 Wildfire emissions................................................................................................20

3.3 Generating the netcdf emissions data sets...................................................................20

3.4 Construction and preparation of tracer emissions.......................................................22

3.5 Preparation of biogenic emissions...............................................................................23

3.5.1 No biogenic emissions .........................................................................................23

3.5.2 Guenther biogenic emissions ...............................................................................23

3.5.3 BEIS 3.13 biogenic emissions..............................................................................23

3.5.4 MEGAN biogenic emissions................................................................................25

3.6 Conversion of biogenic emission data files.................................................................25

3.7 Placement of chemical emission input data files ........................................................25

3.1 Introduction

One of the main differences between running with and without chemistry is the 

inclusion of additional data sets describing the sources of chemical species. At this time, 

these files need to be prepared externally from the WRF/Chem simulation due to the wide 

variety of data sources. This places the WRF/Chem user in a position of needing to 

understand the complexity of their emissions data as well as having the control over how 

the chemicals are speciated and mapped to their simulation domain. While this can be a 

daunting task to the uninitiated, the following section will attempt to illustrate the 

methodology through which emissions data is generated for a forecast domain.

3.2 Preparation of anthropogenic emissions for use with WRF/Chem

At this time there is no single tool that will construct an anthropogenic- emissions 

data set for any domain and any chemical mechanism that you select. This places the 

requirement upon you to construct the anthropogenic-emissions data set for your

particular domain and desired chemistry. However, several programs and data sets are 
13

provided that you may use to create an emissions data set, if your domain and your 

choice of chemical mechanism follow some restrictions. These programs are described in 

the following two subsections. Note that you must know a priori the preferred domain 

location and chemistry options that will be used in the simulation. The "raw" 

anthropogenic-emissions data set described next can be used if the domain is located over 

the 48 contiguous states of the United States. The next section shows the suggested 

methodology for constructing your own anthropogenic-emissions data set.

3.2.1 The standard 4km resolution data set (2005 NEI emissions data for USA only)

Anthropogenic-emissions data is currently available for the contiguous 48 states 

of the United States, southern Canada and northern Mexico based upon the U.S. 

Environmental Protection Agency (EPA) National Emissions Inventory (NEI) 2005 

inventory. Area type emissions are available on a structured 4-km grid, while point type 

emissions are available by latitude and longitude locations and with stack parameters 

needed for plume-rise calculations. This data is discussed later in this section and can be 

found online at http://ruc.noaa.gov/wrf/WG11/anthropogenic.htm. For those who desire 

to conduct simulations over other regions of the world, the reader is referred to the 

section in the appendix that describes the use of a global anthropogenic-emissions 

inventory for the WRF/Chem model. The methodology for transferring an 

anthropogenic-emissions data set to the WRF model is discussed in the following section.

3.2.1.1 Anthropogenic-emissions construction methodology for WRF/Chem

The methodology for constructing your own anthropogenic-emissions data set is: 

! Obtain the “raw” anthropogenic-emissions data. This data could come from a 

variety of data sources and be on multiple map projections and/or domains. 

o A 4-km emissions data set (area) and point source is available for the U.S. 

(see below). Use of this data is recommended when the simulation 

domain has a horizontal grid spacing of 12 km or greater.

! Specify, or make a table listing that relates “raw” emissions to the speciation of 

the desired chemical mechanism and PM mechanism (see following section)

o The provided routines (emiss_v03.F) assume that the RADM2 chemical 

mechanism and MADE/SORGAM modal aerosol models are being used 

in the simulation.

! Prepare the 3-D (or 2-D) anthropogenic emissions data set

o Account for rise of emissions from stack, biomass burning, etc.

o Output data in an intermediate format (binary for the U.S. NEI05 case). 

You can change format to match your needs in 

module_input_chem_data.F

! Convert the emissions data to a WRF netCDF data file

o Convert intermediate format (binary) emissions to 4-D WRF netcdf files 

(with executable of convert_emiss.F subroutine)

o Input data format must match that used in the conversion routine (see 

module_input_chem_data.F)
14

o Map data (extracted from the header in file wrfinput_d01) is needed for 

some plotting routines to function properly.

! If running WRF/Chem with a carbon bond type mechanism (CBM4, CBMZ, etc.) 

be sure to use the correct emiss_inpt_opt setting for the chemical mechanism. 

The WRF/Chem code will assume the emissions are in RADM2 form and will 

repartition the emitted species to the appropriate carbon bond mechanism unless 

you specify a different choice with the emiss_inpt_opt. In addition, the 

SORGAM emissions will be converted to the 4 or 8 size bins for use in the 

MOSAIC aerosol routines.

3.2.1.2 Construction of an anthropogenic-emissions-inventory conversion table

Begin with a list of known chemical species that are emitted in the domain of interest. 

These species may need to be translated into a list of chemical species that are used by 

your particular photochemical and aerosol mechanisms within the WRF-Chemistry 

model. If you are uncertain about the names and units of the emissions data, the 

registry.chem file in the WRFV3/Registry subdirectory contains the names and 

dimensions of the chemical species used within the WRF/Chem model.

The translation from “raw” to WRF/Chem species emissions will often result in either 

lumping several emitted chemical species into one simulated species, or the partitioning 

of one emitted species into fractions of several simulated species. As an example, the 

following emission assignment table (Table. 3.2) translates the “raw” NEI05 based 

emission species into the WRF/Chem RADM2 species. The columns contain the 

following information: 

! names of the emitted species in the “raw” data derived from the EPA NEI05 

inventory, VOC speciation is that used in the SAPRC-99 chemical mechanism.

! names of the emitted species used in the WRF-Chemistry model, Variable names 

(e.g. e_co) must match the WRF/Chem Registry names of the emission variables.

! the fractional amount of the “raw” emitted species assigned to the model emission 

name,

! the molecular weight (used as a switch in emiss_v03.F – applies only to primary 

NOx, SO2, CO and NH3 emissions), 

! the technical name of the “raw” emitted species

Table 3.2. Conversion table within emiss_v03.F used to produce input-emissions 

data for a WRF-chemistry simulation. This table lists the “raw” emission name, the 

emissions field name used in the WRF model, the weight factor applied to the 

chemical field, the molecular weight of the species (NOx, SO2, CO and NH3 only) 

and the full species name. The fields are then converted to an emissions speciation 

suitable for use with the RADM2 chemical mechanism (+MADE/SORGAM aerosol 

module).

“raw” 

name

WRF/Chm 

name

Weight MW Species name 
15

CO e_co 1.00 28 Carbon monoxide

NOXe_no 1.00 46 Nitrogen Oxides (NO or NO

2

)

SO2e_so2 1.00 64 Sulfur dioxide

NH3e_nh3 1.00 17 Ammonia

HC02e_eth 1.00 00 Alkanes with kOH<500/ppmv/min (Ethane)

HC03e_hc3 1.00 Alkane500<kOH<2500 (exclude C3H8, C2H2, 

organic acids)

HC04e_hc3 1.11 00 Alkane2500<kOH<5000 (exlude butanes)

HC05e_hc5 0.97 00 Alkane 5000<kOH<10000 (exlude pentanes)

HC06e_hc8 1.00 00 Alkane kOH>10000

HC07e_ol2 1.00 00 Ethylene

HC08e_olt 1.00 00 Alkene kOH <20000 /ppm/min

HC09e_oli 1.00 00 Alkene kOH >20000 /ppm/min

HC10e_iso 1.00 00 Isoprene

HC12e_tol 1.00 00 Aromatic kOH <20000 /ppm/min (exclude 

benzene and toluene)

HC13e_xyl 1.00 00 Aromatic kOH >20000 /ppm/min (exclude 

xylenes)

HC14 e_hcho 1.00 00 Formaldehyde

HC15 e_ald 1.00 00 Acetaldehyde

HC16 e_ald 1.00 00 Higher aldehydes

HC17 e_ald 1.00 00 Benzaldehyde

HC18 e_ket 0.33 00 Acetone

HC19 e_ket 1.61 00 Methylethyl ketone

HC20 e_ket 1.61 00 PRD2 SAPRC

-99 species (ketone)

HC21 e_hc3 0.40 00 Methanol

HC22e_ald 1.00 00 Glyoxal

HC23 e_ald 1.00 00 Methylglyoxal

HC24 e_ald 1.00 00 Biacetyl

HC25 e_csl 1.00 00 Phenols

HC26 e_csl 1.00 00 Cresols

HC27e_ald 0.50 00 Methacrolein

HC27 e_olt 0.50 00 Methacrolein

HC28 e_ket 0.50 00 Methylvinyl ketone

HC28 e_olt 0.50 00 Methylvinyl ketone

HC29 e_ket 1.00 00 IPRD SAPRC

-99 species (other ketones)

HC31 e_olt 1.00 00 Propylene

HC32 e_hc3 0.40 00 Acetylene

HC33e_tol 0.29 00 Benzene

HC34e_hc3 1.11 00 Butanes

HC35e_hc5 0.97 00 Pentanes

HC36 e_tol 1.00 00 Toluene

HC37e_xyl 1.00 00 Xylenes

HC38e_hc3 0.57 00 Propane

HC39e_oli 1.00 00 Dienes

HC40e_olt 1.00 00 Styrenes

HC41 e_ora2 1.00 00 Organic Acids
16

PM01 e_pm25i 0.20 01 Unspeciated primary PM2.5 - nuclei mode

PM01 e_pm25j 0.80 01 Unspeciated primary PM2.5 - accumulation 

mode

PM02 e_so4i 0.20 01 Sulfate PM2.5 - nuclei mode

PM02 e_so4j 0.80 01 Sulfate PM2.5 - accumulation mode

PM03 e_no3i 0.20 01 Nitrate PM2.5 - nuclei mode

PM03 e_noj 0.80 01 Nitrate PM2.5 - accumulation mode

PM04 e_orgi 0.20 01 Organic PM2.5 - nuclei mode

PM04 e_orgj 0.80 01 Organic PM2.5 - accumulation mode

PM05 e_eci 0.20 01 Elemental Carbon PM2.5 - nuclei mode

PM05 e_ecj 0.80 01 Elemental Carbon PM2.5 - accumulation mode

PM10-

PRI

e_pm10 1.00 01 Unspeciated Primary PM10

The next step is to construct a program that reads the “raw” anthropogenic emissions 

data, converts each chemical species to those used by the WRF/Chem model following 

the information from your particular conversion table and finally maps it onto the 3-

dimensional simulation domain. Therefore, within this step any plume rise, or above 

surface anthropogenic emission placement needs to be specified. Particular attention to 

geospatial details, such as the WRF/Chem domain grid locations, and the elevation of 

model vertical levels relative to the “raw” emissions data-set must be considered.

Provided on the WRF/Chem ftp site is a program that can be used with the NEI-05 

U.S. anthropogenic emissions inventory - emiss_v03.F. While your application may not 

use the “raw” emissions data for your simulation, it is provided as an example of the 

adopted methodology. The product of the program is a binary data file containing threedimensional emissions data, output at each hour, that is mapped to a specified simulation 

domain. The data format in the provided program is provided in Table 3.2.

Table 3.2. Converted or “intermediate binary” emission data used to produce 

input emissions data for a WRF-chemistry simulation. This table lists each output 

variable, its variable declaration, dimensions, and any additional information. The 

output-data fields are specific to the RADM2 -chemical mechanism 

(+MADE/SORGAM aerosol module).

File 

variable

declaration dimensions comments 

nv integer 1 Number of chemical species

ename character*9 30 Name of each emissions field in model

hour integer 1 Hour of the emissions data (begin loop)

so2 real (nx,nz,ny)

no real (nx,nz,ny)

ald real (nx,nz,ny)

hcho real (nx,nz,ny)

ora2 real (nx,nz,ny)

nh3 real (nx,nz,ny)
17

hc3 real (nx,nz,ny)

hc5 real (nx,nz,ny)

hc8 real (nx,nz,ny)

eth real (nx,nz,ny)

ora2 real (nx,nz,ny)

nh3 real (nx,nz,ny)

co real (nx,nz,ny)

ol2 real (nx,nz,ny)

olt real (nx,nz,ny)

oli real (nx,nz,ny)

tol real (nx,nz,ny)

xyl real (nx,nz,ny)

ket real (nx,nz,ny)

csl real (nx,nz,ny)

iso real (nx,nz,ny)

pm2.5i real (nx,nz,ny)

pm2.5j real (nx,nz,ny)

so4i real (nx,nz,ny)

so4j real (nx,nz,ny)

no3i real (nx,nz,ny)

no3j real (nx,nz,ny)

orgi real (nx,nz,ny)

orgj real (nx,nz,ny)

eci real (nx,nz,ny)

ecj real (nx,nz,ny)

pm10 real (nx,nz,ny) (end loop)

For spatial partitioning, the emiss_v03.F program implicitly assumes the WRF/Chem grid 

has a horizontal grid resolution larger that 4 km, and simple grid dumping from the “raw” 

4 km domain into the specified WRF/Chem domain is appropriate. Currently no plume 

rise calculations directly couple WRF dynamics to anthropogenic point emissions. The 

emiss_v03.F routine includes some plume rise from the Brigg’s formulation due to 

momentum lift from direct injection, and a specified horizontal wind climatology. 

Emissions within nested domains are also handled within emiss_v03.F by specifying 

mother domain map parameters, the nested domain grid resolution, and beginning x and y 

locations of the nested domain within the mother domain. These variable names are 

listed, and described further in the following section.

We assume that the anthropogenic emissions data is updated at an hourly interval. 

However, the update interval is arbitrary and can be specified by you for your individual 

application. In addition, if the given binary format of the output data from emiss_v03.F is 

not functional for your needs, the data format can be modified within the program. 

However, if the output data format is changed, the WRF/Chem program convert_emiss.F 

will also need to be modified so that the converted raw emissions data can be read into 

the program correctly and converted. 
18

Both surface and elevated point source emissions of gas-phase species are in units of 

mole per square kilometer per hour, and in microgram per square meter per second

(microgram m-2s

-1

) for the aerosol species. These are the units assumed within the 

WRF/Chem input processor for the emissions files, and the convert_emiss.F processing 

step that generates the netcdf emission file(s) described further below. (Conversion of 

gas-phase emissions into the mixing ratio increases at each grid is handled within 

module_emissions_anthropogenic.F . Aerosol increases due to emissions are handled in 

individual aerosol mechanism modules.)

It is entirely incumbent upon the user to specify location and time of emissions from the 

“raw” emissions for their own applications within this intermediate step of the emissions 

processing.

3.2.1.3 Additional details for running emiss_v03.F with the NEI-05 anthopogenicemissions data set

The “raw” anthropogenic-emissions data for the 48 contiguous states as well as select 

regions of Canada and Mexico have been made available for download by the 

NOAA/Earth Systems Research Laboratory, Chemical Sciences Division. The process to 

create anthropogenic-emissions input data files from this data is as follows: 

! Before generation of the anthropogenic-emissions data file can begin, the real.exe 

program should be used to create the wrfinput_d01 and wrfbdy_d01 data files for 

your desired domain. There are two reasons for doing this. The first is so that you 

know exactly where the simulation domain is located. The second is because the 

emissions conversion program (convert_emiss.exe) will read the netCDF header 

information from the wrfinput_d01 data file and write this information into the WRFchemical-emissions data files. If the wrfinput_d01 data file does not exist, the 

program will abort with an error.

! Download the raw-emissions data tar file from the anonymous ftp server 

(ftp://aftp.fsl.noaa.gov/divisions/taq/emissions_data_2005/em05v2_file*.tar) and 

extract the data into its own directory (e.g., $home/emissions_data).

! Download the emiss_v03.F program from the anonymous ftp server.

! Modify emiss_v03.F to set map and grid parameters for your particular domain as 

well as the directory that contains the “raw” emissions data. For the provided test 

domain you should have the following settings:

Model variable Value Description

Il 40 east-west grid spacing (ix2+1) of mother domain and 

west_east_stag dimension on your WRF domain

Jl 40 north-south grid spacing (jx2+1) of mother domain and 

south_north_stag dimension on your WRF domain

Ix2 39 x-dimension of user domain output data (IL-1)

Jx2 39 y-dimension of user domain output data (JL-1)

Kx 19 z-dimension of user domain output data or kemit on your WRF 
19

domain. The vertical dimension can equal or be less than that used 

in the WRF domain.

Inest1 0 nesting or no nesting flag (no nesting => inest1 = 0)

Dx 60.E3 horizontal grid spacing (m) of user domain

Dxbigdo 60.E3 Horizontal grid spacing on mother domain (m)

Xlatc 38.00 grid center latitude of mother domain

Xlonc -80.00 grid center longitude of mother domain

Clat1 38.001 Northern most reference latitude of projection (mother domain)

Clat2 38.000 Southern most reference latitude of projection (CLAT1 > CLAT2 

for Lambert Conformal, CLAT2 not used for polar stereographic)

Iproj 1 projection type (see WRFSI information)

Rekm 6370. Earth radius (km)

XNESSTR 1. x-location in mother domain of southwest corner point of the (1,1) 

grid in the user domain. Not used if Inest1=0 .

YNESSTR 1. y-location in mother domain of southwest corner point of the (1,1) 

grid in the user domain. Not used if Inest1=0 .

Datadir /data Path to directory holding emissions input data (character string)

Zfa (See 

below)

Elevation (m) at the top of each computational cell

KWIN 20 Number of vertical levels in the horizontal wind profile

WSP Wind speed at level height(m) specified by REFWZ

REFWZ Elevation (m) of the specified horizontal wind profile

 DATA ZFA/ 0., 255., 515., 781., 1054., 1335., &

 1527., 1824., 2130., 2553., 2994., 3454., &

 4059., 4967., 6741., 8723.,10992.,14084., &

 16461.,20346./

Note: the model ZFA height levels have been determined separately by processing 

the wrfinput_d01 file generated by real.exe to add the vertical domain levels in 

meters.

! Compile emiss_v03.F (single processor mode) with the command “pgf90 –Mfree –

byteswapio –o emiss_v03.exe emiss_v03.F” and run emiss_v03exe. This program, 

using raw emissions data, maps the emissions data to your specified domain and 

generates binary emissions data files (file names are set in emiss_v03.F to be 

wrfem_00to12Z and wrfem_12to24Z). 

3.2.2 Using the global emissions data set

The use of a global emissions data set has recently been added to WRF/Chem 

options. The global emissions data comes from the REanalysis of the TROpospheric 

(RETRO) chemical composition over the past 40 years (http://retro.enes.org/index.shtml) 

and Emission Database for Global Atmospheric Research (EDGAR) 

(http://www.mnp.nl/edgar/introduction). Both RETRO and EDGAR provide global 

annual emissions for several greenhouse gases (e.g., CO2, CH4 and N2O) as well as 

some precursor gases on a .5x.5 degree (RETRO) or a 1x1 degree (EDGAR) grid.

A simple grid mapping program has been made available to WRF/Chem users. 

This program, called prep_chem_sources, was developed at CPTEC, Brazil and is 
20

available to WRF/Chem users. The program will map the global anthropogenic 

emissions data to a WRF forecast domain using a polar stereographic or Lambert 

conformal projection. See appendix (B) for more information regarding the 

prep_chem_sources routine.

3.2.3 Wildfire emissions

The prep_chem_sources program (see appendix B) is capable of providing 

biomass burning, or wildfire, emissions to the WRF/Chem forecast. The geostationary 

NOAA weather satellite (GOES) provides half-hourly fire data for the Western 

Hemisphere. Specifically, GOES-12 provides coverage for North and South America 

while GOES-11 covers North America only. Data files containing the WFABBA fire 

location are distributed by the University of Wisconsin-Madision

(http://cimss.ssec.wisc.edu/goes/burn/wfabba.html). The archived WF-ABBA data are 

available at this time from two different web sites; http://www.firedetect.noaa.gov and 

http://www.nrlmry.navy.mil.flambe/index.html. Additional wild fire location data is

available from MODIS at the University of Maryland web site:

http://firefly.geog.umd.edu/firms. The prep_chem_sources reads this data, the WFABBA 

data files all being in one directory and MODIS from the same or different directory, and 

maps the point source data to the WRF domain. It is also not too difficult to include other 

sources for wildfire emissions.

In the WRF/Chem model, the wildfire emissions data is obtain from the 

wrffirechemi_d01 emissions data file. It computes the plume rise of the wildfire smoke 

based upon the environmental wind and temperature profile. The emissions to the 

forecast are then provided as a vertical distribution based upon the results from the plume 

rise calculation.

3.3 Generating the netcdf emissions data sets

The final step in the process is to produce a WRF/Chem netCDF emissions input 

data file containing all of the required metadata (map projection data, simulation start 

time, etc.) for the simulation. Ideally the metadata contained in the WRF/Chem emissions 

file would be generated by the previous step. However, if not provided by the user, the 

WRF input data file (e.g., wrfinput_d01) can be read and the metdata information added 

to the anthropogenic emissions input data file. The name of the final netcdf data file(s) 

can be either wrfchemi_<hour>_d<domain_id> or wrfchemi_d<domain_id>_<date/time> 

depending upon your intent (io_style_emissions option in namelist). The latter intent is 

designed for daily varying emissions (io_style_emissions=2), and in this case the 

date/time specified in the WRF/Chem-emissions data file must match the simulation 

date/time or no emissions data will be read and a run-time error will result. The first 

intent (io_style_emissions=1) assumes you are creating two netcdf 4-D emission files 

named wrfchemi_00z_d<domain_id> and wrfchemi_12z_ d<domain_id> that contain 

hourly emissions from 00:00 to 11:00 UTC, and 12:00 to 23:00 UTC, respectively. This 

is the format generated by convert_emiss.F that matches the provided NEI-05 inventory. 
21

The NEI-05 inventory is representative of a “typical ozone season day” by the U.S. EPA, 

and is typically used for all days within multi-day WRF/Chem simulations.

! Before the conversion from “binary intermediate” to netcdf file emissions can begin, 

you need to change the namelist.input file in the WRFV3/test/em_real directory to the 

emissions data file settings. The settings that will generate 24 hours of hourlyemissions (i.e., io_style_emissions=2) data are: 

&time_control

run_days = 1,

run_hours = 0,

run_minutes = 0,

run_seconds = 0,

start_year = 2008,

start_month = 07, 

start_day = 14, 

start_hour = 00, 

start_minute = 00, 

start_second = 00, 

end_year = 2008,

end_month = 07, 

end_day = 15, 

end_hour = 12, 

end_minute = 00, 

end_second = 00, 

auxinput6_inname = ‘wrfbiochemi_d<domain>,

auxinput7_inname = ‘wrffirechemi_d<domain>,

auxinput8_inname = ‘wrfchemi_gocart_bg_d<domain>,

auxinput5_interval_m = 60,

auxinput7_interval_m = 1440,

auxinput8_interval_m = 1440,

io_form_auxinput2 = 2,

io_form_auxinput5 = 2,

io_form_auxinput6 = 2,

io_form_auxinput7 = 2,

io_form_auxinput8 = 2,

io_form_auxinput12 = 0,

&chem

chem_opt = 1,

emiss_opt = 3,

chem_in_opt = 0,

bio_emiss_opt = 1.

Starting with version 3.3, you should note that the namelist setting for the 

auxiliary input port time interval is now dependent upon each input stream. 

That is, for the emissions conversion program convert_emiss.exe, the settings for 
22

each auxiliary input port specifies whether it is turned on, the IO format, the time 

interval for the emissions data updates and the number of frames in each file (not 

shown).

! We assume that you have already configured and compiled the WRF/Chem model. 

So now build the emissions conversion program with the command “compile 

emi_conv” in WRFV3 directory.

! Run convert_emiss.exe for 24 hours starting at 0000 UTC and ending at 0000 UTC 

and save the netCDF wrfchemi_d01 data file as 

wrfchemi_d01_2008-07-14_00:00:00. The filename(s) need to match the name of the 

input data file in mediation_integrate.F (see convert_emiss.F program inside the 

WRFV3/chem directory). The file(s) should be transferred (or linked) to your 

WRFV3/test/em_real directory.

! Once the “wrfchemi” files are generated it is best to plot fields, or use a program like 

ncview to examine the files that have been generated. Look at the files and confirm 

that the emissions appear to match the WRF forecast domain you previously 

generated. When looking at anthropogenic emissions (e.g., co) the surface emissions 

should look similar to a map with cities and possibly roads showing. Be sure to 

confirm that the fields are consistent with your expected emissions fields in both 

space (vertically) as well as in time. If the emissions do not match, then a dimension 

error is likely happened in your namelist.input file.

3.4 Construction and preparation of tracer emissions

At this time there is no single program available that will allow the user to 

construct tracer emissions for their domain and directly import them into the simulation. 

However, there are relatively simple methodologies that can be undertaken to allow the 

user to generate their tracer emissions. 

Probably the most simple way to produce tracer emissions it to modify the 

program emiss_v03.F to suit your needs. Upon examination of the emiss_v03.F program 

one will see that it can be modified to skip the reading of the NEI emissions data sets and 

instead fill the output array. The output array (i.e., EM3RD(I,K,J,N)) can be filled with 

user specified values at the desired grid location with the user specified emitted tracer 

amount. The user needs to be aware of not only where the emitted species are to be 

located in their simulation domain (grid indexes I,K and J)), but also which chemical 

emissions index, N, corresponds to the emitted species used as a tracer in their 

simulation. To get the emissions correct, start by examining the registry.chem file to 

determine which species are used in the tracer package (chem._opt=13). Then use the 

array ENAME in the emiss_v03.F program to get the name and order of the emitted 

species. Then one can set the emissions for the correct chemical index in the output 

array. Once the modified program has been compiled and run the binary intermediate file 

containing the emitted tracer data will need to be converted to a WRF netCDF input file 

using the convert_emiss.F program discussed in the previous section.
23

Another methodology is for the user to build their own tracer emissions data file 

and use the convert_emiss.F program as is, or modified as needed, to read the tracer data 

file and produce a tracer emissions input file. This option allows users to use pre-existing 

data files and to modify the tools available with the chemistry to produce input, or output 

files for their needs depending upon the emissions options selected.

3.5 Preparation of biogenic emissions

The WRF-chemistry model does have four options to compute the biogenic-emissions 

data. These options are: 

 

3.5.1 No biogenic emissions

The first option is not to use an additional biogenic emissions input data file 

(bio_emi_opt= 0). The user could add the biogenic emission to the anthropogenic 

emissions data if it is desired. Be sure to do this for every time period in the emissions 

input data and not just the first time.

 

3.5.2 Guenther biogenic emissions

For the second option (bio_emi_opt= 1), the model calculates the biogenic 

emissions online using the USGS landuse classification, which is generated by WRF 

WPS and available for the meteorological and chemical model. The user does not prepare 

any biogenic emissions input data set.

 

3.5.3 BEIS 3.13 biogenic emissions

For the third option, the user specifies reference fields for the biogenic emissions, 

which are then modified online by a subroutine from the Biogenic Emissions Inventory 

System (BEIS) version 3.13. The land-use for this emissions inventory is obtained from 

the Biogenic Emissions Landuse Database version 3 (BELD3). The reference fields need 

to be provided as an additional input data file (wrfbiochemi_d01) for the real.exe 

program. 

The BEIS3.13 model is publicly available through the CMAS (Community 

Modeling and Analysis System) at http://www.cmascenter.org/ as part of the SMOKE 

(Sparce Matrix Operator Kernel Emissions) software package (version 2-4). The 

physical parameterizations for temperature, light dependencies, and canopy light 

correction are contained within module_bioemi_beis313.F of WRF/Chem. Reference 

emission files (30°C, 1000 PAR) from BEIS3.13 rely on the BELD3 (Biogenic 

Emissions Landuse Database, version 3) available at 

http://www.epa.gov/ttn/chief/emch/biogenic/. This North American database contains 

fractional area information on 230 individual forest, grass and crop types at 1-km 

horizontal resolution. Tools for spatial allocation of BELD3 data into common user 

defined grids are also available at that web-site. As part of the reference emission pre-
24

processing, BEIS3.13 contains seasonal specific, and vegetation-specific information for 

emissions of 33 individual VOC species (including isoprene and 14 monoterpenes), 

biogenic/agricultural NO, and LAI (Leaf Area Index) information needed in the canopy 

light dependence calculations of isoprene, methanol and methyl-butenol.

The current version of module_bioemi_beis313.F is specific to reference 

emissions generated for the RADM2, or RACM chemical mechanism by 

NOAA/ESRL/CSD. Reference emissions for 15 VOC species within RACM, 3 NO 

emission classes, and the LAI field specific to isoprene are each output on a 2-

dimensional grid for the defined WRF/Chem simulation grid as simple ASCII files 

having the dimensions of (nx-1,ny-1), in 12E9.2 format. This input format is defined, 

and modifiable within the input_ext_chem_beis3_file routine in 

WRFV3/chem/module_input_chem_bioemiss.F Units of emissions are in mole/km2/hr 

within the ASCII files, the same as other gas-phase emissions. A list of biogenic 

emission variables specific to the RACM species assignment is given in table 3.3.

Table 3.3. List of biogenic emission variable names, and their RACM mechanism 

meaning.

File variable comments 

Iso Isoprene

Oli Internal Olefins

Api Alpha Pinene

Lim Limonene

Xyl Xylene

hc3 Alkane500<kOH<2500 (propane)

Ete Ethylene

Olt Terminal Olefins

Ket Ketones

Ald Acetaldehyde (and higher aldehydes)

Hcho Formaldehyde

Eth Ethane

ora2 Acetic and higher organic acids

Co Carbon Monoxide

Nr Nonreactive VOC

noag_grow Agricultural NO – fertilized growing

noag_nongrow Agricultural NO – nonfertilized growing

Nononag Nonagricultural NO

Slai LAI for isoprene emissions

The program convert_emiss.F must be compiled, and the executable convert_emiss.exe 

must be run. A data file called wrfbiochemi_d01 (for domain 1) will be created if 

bio_emiss_opt = 2 in your namelist.input file. Run real.exe (with bio_emi_opt=2 in the 
25

namelist) when creating the wrfinput data file - the biogenic emissions variables should 

now be included in the wrfinput data file. 

 

3.5.4 MEGAN biogenic emissions

The final option for biogenic emissions is the use of the Model of Emissions of 

Gases and Aerosols from Nature (MEGAN). This global biogenic emissions data set has 

a horizontal spatial resolution of approximately 1 km so it can be used for nearly any 

WRF/Chem simulation. The use of this biogenic emissions option requires the user to 

download and compile a further utility from the National Center for Atmospheric 

Research (NCAR). The utility prepares MEGAN input data files for use in WRF-Chem –

these files are named wrfbiochemi_d0x files – and a separate file is provided for each 

domain (d0x). The assimilation of MEGAN biogenic emissions into WRF-Chem is a 

matter of setting the correct namelist.input settings. Further instructions, including 

support contact details at NCAR, can be found in Appendix D. 

3.6 Conversion of biogenic emission data files

The emissions-input data files for biogenic and biomass burning data also need to 

be in a WRF input data file format. This includes containing the correct header 

information related to your simulation domain. There is a program available that 

converts the emissions data from their respective intermediate data files to a WRF 

chemical emissions input file – convert_emiss.exe. This program is located under the 

WRFV3/chem directory and is compiled using the compile emi_conv command. The 

executable can be located in the WRFV3/test/em_real directory. The program will read 

the namelist.input file and convert the data files depending upon the options set by the 

user in the chemistry and time_control namelists. 

3.7 Placement of chemical emission input data files

The emissions-input data files need to be located either in the run or the 

test/em_real directory. Often we place the data in the run directory and link it the 

test/em_real directory, since they will be used over and over again. 

As you can see from this example, the WRF/Chem anthropogenic-emissions data file 

(wrfchemi_d01_2008-07-14_12:00:00) is located in the WRFV3/run directory and is 

linked to the WRFV3/test/em_real directory. Some advantages of this methodology is 

the reduced chance of accidentally removing the data files. It reduces disk space usage as 

only one data file is needed, and it could allow for one data file to be used for multiple 

simulations by changing the name of the linked data file.
26

Chapter 4: Running the WRF-Chemistry Model

Table of Contents

4.1 Introduction .................................................................................................................26

4.2 WRF/Chem namelist options: the choice of CHEM_OPT .........................................26

4.3 Other chemistry namelist options................................................................................30

4.3.1 Running with only dust aerosols..........................................................................34

4.3.2 Tracers running with chemistry............................................................................34

4.4 Typical choices for namelist options...........................................................................35

4.5 Input fields for chemical constituents .........................................................................37

4.6 Using chemical boundary conditions from other modeling systems ..........................39

4.6.1 The wrfchembc utility ..........................................................................................39

4.6.2 The mozbc utility .................................................................................................39

4.7 Making a nested domain WRF/Chem simulation .......................................................40

4.1 Introduction

After successful construction of the anthropogenic and biogenic-emission-input data files, 

it is time to run the model. This process is no different than running the meteorological 

version of the model. To make an air-quality simulation, change directory to the 

WRFV3/test/em_real directory. In this directory you should find links to the executables 

real.exe, and wrf.exe, other linked files, and one or more namelist.input files in the 

directory. 

For larger domain simulations, one should use a DM (distributed memory) parallel 

system to make a forecast. This is of particular importance for WRF/Chem since much 

additional memory is required.

4.2 WRF/Chem namelist options: the choice of CHEM_OPT

The largest portion of the chemistry namelist options are related to the chemical 

mechanisms and aerosol modules selection. The mechanism used during the forecast is 

decided with the namelist parameter chem_opt that is described next. Some of these 

choices require other settings for other namelist options. The options that are printed with

red lettering indicates those option that are not fully implemented and tested. Model 

users are discouraged from selecting those options as they are not fully supported and 

could produce erroneous, or in the extreme case, detrimental results. In addition, it should 

be pointed out that the model developers most often work with just a few options at one 

time (e.g., RADM2/MADE-SORGAM, CBMZ/MOSAIC). Not all of the other available 

options are tested during development, but often it is a trivial exercise to make the other 

options functional. Therefore, users are encouraged to determine their desired settings 

that works best for their simulation, test the namelist combination, improve the model 

code and then communicate the improvements to the WRF/Chem user community. The 
27

chem_opt namelist parameter is organized according to the chemical mechanism that is 

used.

&chem 

namelist 

variable

Description Special Requirements

chem_opt = 0 no chemistry

 = 1 include chemistry using the RADM2 

chemical mechanism - no aerosols

 = 2 include chemistry using the RADM2 

chemical mechanism and 

MADE/SORGAM aerosols. 

No indirect effect 

To have radiative feed back with the 

chemistry/aerosols use ra_sw_physics 

= 2 (Goddard shortwave scheme). For 

dust and seasalt use dust_opt=2, 

seas_opt=2.

 = 5 CBMZ chemical mechanism with 

Dimethylsulfide, or DMS

 = 6 CBMZ chemical mechanism without 

DMS

 = 7 CBMZ chemical mechanism 

(chem_opt=6) and MOSAIC using 4 

sectional aerosol bins. 

No indirect effect 

To have radiative feed back with the 

chemistry/aerosols use ra_sw_physics 

= 2 (Goddard shortwave scheme) For 

dust and seasalt use dust_opt=2, 

seas_opt=2.

 = 8 CBMZ chemical mechanism 

(chem_opt=6) and MOSAIC using 8 

sectional aerosol bins. 

No indirect effect 

To have radiative feed back with the 

chemistry/aerosols use ra_sw_physics 

= 2 (Goddard shortwave scheme). For 

dust and seasalt use dust_opt=2, 

seas_opt=2.

 = 9 CBMZ chemical mechanism 

(chem_opt=6) and MOSAIC using 4 

sectional aerosol bins including some 

aqueous reactions

For direct and indirect effect use: 

phot_opt=2; ra_sw_physics=2; progn=1; 

mp_physics=2; 

aer_ra_feedback=1;wetscav_onoff=1; 

cldchem_onoff=1

For dust and Seasalt use dust_opt=2, 

seas_opt=2.

 = 10 CBMZ chemical mechanism 

(chem_opt=6) and MOSAIC using 8 

sectional aerosol bins including some 

aqueous reactions

For direct and indirect effect use: 

phot_opt=2; ra_sw_physics=2; 

progn=1; mp_physics=2; 

aer_ra_feedback=1; wetscav_onoff=1; 

RADM2

/QSSA 

Chemistry
28

cldchem_onoff=1. For dust and seasalt 

use dust_opt=2, seas_opt=2.

 = 11 RADM2 chemical mechanism and 

MADE/SORGAM aerosols including 

some aqueous reactions

For direct and indirect effect use: 

phot_opt=2; ra_sw_physics=2; 

progn=1; mp_physics=2; 

aer_ra_feedback=1; wetscav_onoff=1; 

cldchem_onoff=1. For dust and seasalt 

use dust_opt=2, seas_opt=2.

 = 12 RACM chemical mechanism and 

MADE/SORGAM aerosols including 

some aqueous reactions

This is a KPP option – not functioning 

correctly with V3.3 – watch for bug 

fixes on WEB site. Will have the same 

direct/indirect options as (11)

 = 13 Run with 5 tracers with emissions, 

currently set-up for SO2, CO, 

no,ald,hcho,ora2

Use of tracer_opt suggested. 

 = 14 Single tracer run using tracer_1 array Use of tracer_opt suggested.

 = 15 Ensemble tracer option using 20 

individual tracers and an ensemble tracer 

array

Use of tracer_opt suggested.

 = 30 CBMZ chemical mechanism 

(chem_opt=6) and MADE/SORGAM 

modal aerosol.

No indirect effect 

 = 31 CBMZ chemical mechanism 

(chem_opt=6) and MOSAIC using 4 

sectional aerosol bin with dms.

No indirect effect 

 = 32 CBMZ chemical mechanism with 

(chem_opt=6) and MOSAIC using 4 

sectional aerosol bins with dms. Some 

aqueous reactions included.

No indirect effect 

 = 33 CBMZ chemical mechanism 

(chem_opt=6) and MOSAIC using 8

sectional aerosol bin with dms.

No indirect effect 

 = 34 CBMZ chemical mechanism with 

(chem_opt=6) and MOSAIC using 8

sectional aerosol bins with dms. Some 

aqueous reactions included.

No indirect effect 

 = 35 CBMZ chemical mechanism 

(chem_opt=6) and MADE/SORGAM 

modal aerosol. Some aqueous reactions 

included.

No indirect effect 

 = 101 RADM2 Chemistry using KPP library Rosenbrock solver, can use larger 

timestep

 = 102 RACM-MIM Chemistry using KPP 

library

Rosenbrock solver, can use larger 

timestep

 = 103 RACM Chemistry using KPP library Rosenbrock solver, can use larger 

timestep
29

 = 104 RACM Chemistry and PM advection 

using KPP library

PM total mass. This was originally 

implemented for wildfires.

 = 105 RACM Chemistry and MADE/SORGAM 

aerosols using KPP library

Rosenbrock solver, can use larger 

timestep

 = 106 RADM2 Chemistry and 

MADE/SORGAM aerosols using KPP 

library

Rosenbrock solver, can use larger 

timestep

 = 110 CB4 Chemistry using KPP library Rosenbrock solver, can use larger 

timestep

 = 111 MOZART Chemistry using KPP library Rosenbrock solver, can use larger 

timestep. Use phot_opt=3.

 = 112 MOZART Chemistry and GOCART 

aerosols (MOZCART) using KPP library

Rosenbrock solver, can use larger 

timestep. Use phot_opt=3

 = 120 CBMZ Chemistry using KPP library Rosenbrock solver, can use larger 

timestep

 = 170 CBMZ Chemistry with MOSAIC aerosols 

using KPP library

Rosenbrock solver, can use larger 

timestep

 = 195 SAPRC99 Chemistry using KPP library Rosenbrock solver, can use larger 

timestep

 = 198 SAPRC99 Chemistry with MOSAIC 

using KPP library. The MOSAIC aerosols 

uses 4 sectional aerosol bins and includes 

volatility basis set (VBS) for organic 

aerosol evolution.

Rosenbrock solver, can use larger 

timestep

 = 200 NMHC9 Chemistry using KPP library Only 18 variables, currently no direct 

or indirect effect supported. 

Optionally use dmsemis_opt=1, 

dust_opt=1, seas_opt=1

 = 300 GOCART simple aerosol scheme, no 

ozone chemistry

Only 18 variables, currently no direct 

or indirect effect supported. 

Optionally use dmsemis_opt=1, 

dust_opt=1, seas_opt=1

 = 301 GOCART coupled with RACM-KPP Simple aerosol treatment, no direct or 

indirect effect supported yet.

Optionally use dmsemis_opt=1, 

dust_opt=1, seas_opt=1.

 = 302 RADM2 Chemistry and GOCART 

aerosols using KPP library

Simple aerosol treatment, no indirect 

effect supported yet. Optionally use 

dmsemis_opt=1, dust_opt=1, 

seas_opt=1

 = 303 RADM2 Chemistry and GOCART 

aerosols 

Simple aerosol treatment, no direct or 

indirect effect supported yet.

Optionally use dmsemis_opt=1, 

dust_opt=1, seas_opt=1

 = 400 Volcanic ash-fall and concentration only Simple ash treatment with 10 ash size 

bins.
30

 = 401 Dust concentration only Simple dust treatment with 5 size bins.

4.3 Other chemistry namelist options

input_chem_inname = 

<string>

name of chemistry input file

emi_inname = <string> name of the anthropogenic emissions input file. For example, 

wrfchemi_12z_d<domain> for io_style_emissions = 1, or 

wrfchemi_d<domain>_<date> for io_style_emissions = 2

chem_in_opt = 0 use idealized profile to initialize chemistry

 =1 use previous simulation data to initialize chemistry. The input file 

name will have the structure wrf_chem_input_d<domain> and the 

data will be read in through auxiliary input port 12

io_style_emissions = 0 no emissions data read

 = 1 two 12-h emissions data files used

 = 2 Date/time specific emissions data files used

chemdt = 1.5 time step used by chemistry in minutes

bioemdt = 30 update time interval used by biogenic emissions in minutes

kemit = 8 number of vertical levels in the emissions input data file. 

(considering the domains namelist; 0 < kemit < e_vert)

kemit_aircraft = 1 number of vertical levels for aircraft emissions.

photdt = 30 update time interval used by photolysis routine in minutes

phot_opt = 0 no photolysis

 = 1 use Madronich photolysis (TUV)

 = 2 use Fast-J photolysis

 = 3 use Madronich F-TUV photolysis (aerosol interaction is not 

hooked up with MOSAIC aerosols).

emiss_opt = 0 no anthropogenic emissions

 = 2 use radm2 anthropogenic emissions

 = 3 use radm2/MADE/SORGAM anthropogenic emissions

 = 4 use CBMZ/MOSAIC anthropogenic emissions

 = 5 GOCART RACM_KPP emissions

 = 6 GOCART simple emissions

 = 7 MOZART emissions

 = 8 MOZCART (MOZART + GOCART aerosols) emissions

 = 13 SAPRC99 emissions

aircraft_emiss_opt = 0 no aircraft emissions

 = 1 use aircraft emissions

gas_drydep_opt = 0 no dry deposition of gas species

 = 1 include dry deposition of gas species

aer_drydep_opt = 0 no dry deposition of aerosols

 = 1 include dry deposition of aerosols

bio_emiss_opt = 0 no biogenic emissions

 = 1 calculate biogenic emissions online using the Gunther scheme

 = 2 include biogenic emissions reference fields in wrfinput data file 
31

and modify values online based upon the weather

 = 3 include MEGAN biogenic emissions online based upon the 

weather, land use data

emiss_inpt_opt = 0 no emissions data read

 = 1 Emissions are speciation for RADM2/SORGAM. Recommended 

when using the NEI-05 or EDGAR/RETRO emissions speciated 

for RADM2 chemical mechanism.

 = 3 Emissions are speciation for GOCART_SIMPLE from NEI-05. 

This is a kludge and its use is not recommended.

 = 101 RADM2 emission speciation adapted after reading the data file to 

follow the CBMZ/MOSAIC framework

 = 102 RADM2 emission speciation adapted after reading data file to 

follow the RADM2/SORGAM framework (similar to 101, but 

with isoprene included)

 = 103 Carbon Bond 4 emission speciation adapted after reading the data 

file.

 = 111 RADM2 emission speciation adapted after reading data file to 

follow the MOZART framework.

biomass_burn_opt = 0 No biomass burning emissions

 = 1 include biomass burning emissions and plume rise calculation

plumerisefire_frq = 180 Time interval for calling the biomass burning plume rise 

subroutine.

dust_opt = 0 No GOCART dust emissions included

 = 1 include GOCART dust emissions - need to provide fractional 

erosion map data

 =2, MOSAIC and MADE/SORGAM dust emissions option (does not 

requires extra input data)

seas_opt = 0 no GOCART sea salt emissions

 = 1 include GOCART sea salt emissions 

 = 2 MOSAIC or MADE/SORGAM seasalt emissions

dmsemis_opt = 0 no GOCART dms emissions from sea surface

 = 1 include GOCART dms emissions from sea surface - need to 

provide dms reference field (currently only working for GOCART 

options)

aer_op_opt = 1 aerosol optical properties calculated based upon volume 

approximation

 = 2 aerosol optical properties calculated based upon Maxwell 

approximation

 = 3 aerosol optical properties calculated based upon exact volume 

approximation

 = 4 aerosol optical properties calculated based upon exact Maxwell 

approximation

 = 5 aerosol optical properties calculated based upon exact shell 

approximation

opt_pars_out = 0 No optical properties output.

 = 1 include optical properties in output.
32

gas_bc_opt = 1 uses default boundary profile

 = 101 uses modified default boundary profile – originally designed for 

use at Houston, TX

gas_ic_opt = 1 uses default initial condition profile

 = 101 uses modified default initial condition profile – designed for use at 

Houston, TX

aer_bc_opt = 1 uses default boundary profile

 = 101 uses modified default boundary profile – designed for use at 

Houston, TX

aer_ic_opt = 1 uses default initial condition profile

 = 101 uses modified default initial condition profile – designed for use at 

Houston, TX

gaschem_onoff = 0 gas phase chemistry turned off in the simulation (useful for 

debugging)

 = 1 gas phase chemistry turned on in the simulation (default)

aerchem_onoff = 0 aerosol chemistry turned off in the simulation (useful for

debugging)

 = 1 aerosol chemistry turned on in the simulation (default)

wetscav_onoff = 0 wet scavenging turned off in the simulation, also see the 

“chem_opt” parameter

 = 1 wet scavenging turned on in the simulation, also see the 

“chem_opt” parameter

cldchem_onoff = 0 cloud chemistry turned off in the simulation, also see the 

“chem_opt” parameter

 = 1 cloud chemistry turned on in the simulation, also see the 

“chem_opt” parameter

vertmix_onoff = 0 vertical turbulent mixing turned off in the simulation (useful for 

debugging)

 = 1 vertical turbulent mixing turned on in the simulation (default)

chem_conv_tr = 0 subgrid convective transport turned off in the simulation (if no 

parameterization is used or for debugging)

 = 1 subgrid convective transport turned on in the simulation (default)

have_bcs_chem = .false. get lateral boundary data from idealized profile specified in 

chemistry routines (use caution when setting as the namelist 

variable is defined as a logical).

have_bcs_chem = .true. get lateral boundary data from wrfbdy data file (use caution when 

setting as the namelist variable is defined as a logical).

have_bcs_tracer = .false. do not use tracer lateral boundary data from wrfbdy data file (use 

caution when setting as the namelist variable is defined as a 

logical).

have_bcs_tracer = .true. get tracer lateral boundary data from wrfbdy data file for tracer 

species.

aer_ra_feedback = 0 No feedback from the aerosols to the radiation schemes

 = 1 Feedback from the aerosols to the radiation schemes turned on, see 

also chem_opt parameter

chemdiag = 0 Turns off chemical tendency diagnostics.
33

 = 1 Turns on chemical tendency diagnostics for equation budget 

analysis.

In the physics namelist there are options that are directly related to the chemistry, these 

include the options related to the aerosol direct and indirect forcing ra_sw_physics, 

progn, and mp_physics. In addition there is a cumulus radition feedback option, 

cu_rad_feedback, as well as online/offline cumulus cloud time average option, cu_diag. 

These options will only work with the GD or the G3 scheme (cu_phys=3 or 5). If the 

cu_rad_feedback is not turned on the radiation and photolysis schemes will not “see” 

parameterized clouds. If cu_diag is not turned on the time average cumulus cloud arrays 

will not be computed. These options will only work with WRF/Chem.

cu_rad_feedback = .false. No feedback from the parameterized convection to the 

atmospheric radiation and the photolysis schemes. (Use 

caution when setting as the namelist variable is defined as a 

logical.)

 = .true. Feedback from the parameterized convection to the 

radiation schemes turned on. (Use caution when setting as 

the namelist variable is defined as a logical.)

cu_diag = 0 Turns off time average cumulus cloud.

 = 1 Turns on time average cumulus clouds.

progn = 0 Turns off prognostic cloud droplet number in the Lin et al. 

and Morrison microphysics.

 = 1 Prognostic cloud droplet number included in the Lin et al. 

and Morrison microphysics scheme. This effectively turns 

the Lin et al. scheme into a second-moment microphysical 

scheme. If set with chem._opt=0 a default prescribed 

aerosol concentration is used.

In the time_control namelist there are options that are directly related to the chemistry, 

these include the options related to the reading of the various emissions data through the 

WRF auxiliary input ports and the methodology to read and write data files.

auxinput5_interval = 3600 Input time interval for anthropogenic emissions data. Typical 

settings are hourly for NEI emissions and monthly for the 

RETRO/EDGAR data.

auxinput6_interval = Input time interval for biogenic emissions data. Typically 

biogenic emissions are static fields and this setting is not used.

auxinput7_interval = Input time interval for biomass burning (wildfire) emissions data. 

For forecasts the wildfire emissions are often static fields and this 

setting is not used. For retrospective simulations the data can be 

updated according to the availability of additional fire information.

auxinput8_interval = Input time interval for GOCART background fields. Typically for 

forecasts the monthly background data are static fields and this 
34

setting is not used.

io_form_auxinput5 = 2 Anthropogenic emissions input (wrfchemi_00z_d01 and 

wrfchemi_12z_d01) data format is WRF netCDF

 = 11 Parallel netCDF

io_form_auxinput6 = 2 Biogenic emissions input (wrfbioemi_d01) data format is WRF 

netCDF. Can be used if bio_emiss_opt > 1

 = 11 Parallel netCDF. Can be used if bio_emiss_opt > 1

io_form_auxinput7 = 2 Biomass burning emissions input (wrffirechemi_d01) data format 

is WRF netCDF

 = 11 Parallel netCDF

io_form_auxinput8 = 2 GOCART background emissions input (wrf_gocat_bg_d01) data 

format is WRF netCDF. 

io_form_auxinput12 = 2 Set to use previous simulation data to initialize chemistry

(wrf_chem_input_d01). The data format is WRF netCDF. 

 = 11 Parallel netCDF.

4.3.1 Running with only dust aerosols

The WRF-Chem code is now able to predict dust transport along with the meteorology. 

To run with dust only you need to obtain several input data file for the WRF Preprocessor 

System (WPS). These files include the dust erosion fields (erod) that are included in the 

WPS GEOG directory and the GEOGRIB.TBL_ARW_CHEM table file. These files are 

available for download at:

ftp://aftp.fsl.noaa.gov/divisions/taq/dust_emissions_v3.3

After downloading the files and placing them in the correct WPS directories the WPS can 

be run and the dust erosion fields will be included your meteorology input data files. The 

WRF model can be run using the dust only namelist settings (chem_opt=401). Be sure 

when running with the dust only option that the other chemistry namelist settings (e.g., 

gaschem_onoff, phot_opt, gas_drydep_opt, etc.) are turned off.

4.3.2 Tracers running with chemistry

The WRF-Chem code is now able to predict chemical tracers alongside reactive 

chemistry. This tracer option is set in the namelist.input under the dynamics 

namelist and not the chemistry namelist. This will allow a user to run WRF/Chem 

with chemistry and tracers simultaneously. To run with tracer edit your namelist.input 

file and add the following under the dynamics namelist section:

tracer_opt = 0 No tracers

 = 1 Smoke tracer which must run with biomass burning

 = 2 Lateral boundaries, stratospheric, boundary layer, and surface 

tracers

 = 3 Same as tracer_opt=2 but surface tracer is replaced by the biomass 
35

burning tracer

 = 4 Same as as tracer_opt=2 with the addition of a Lightning-NOx 

(LNOx) tracer, so must have the lightning NOx parameterization 

turned on (see Appendix D).

tracer_adv_opt = 0 Use positive definite advection for tracers

 = 1 Use positive definite and monotonic advection for tracers. 

(Recommended)

The biomass burning tracer (ppmv) gets carbon monoxide (CO) emissions from 

the biomass burning emissions input and provides this data as a tracer. Unlike the 

reactive species emitted from biomass burning, the tracer experiences passive transport. 

When activating the tracer species using the tracer_opt namelist option a pair of tracers is 

released in the run. The first tracer is considered completely passive, while the other has 

a first-order decay with a one-day lifetime. The lateral boundary data for each tracer sets 

the tracer concentration to a value of 1 and is advected into the model domain during the 

simulation. The stratosphere tracer is set to 1 above a specified minimum temperature at 

this time, but an update to using the World Meteorological Organization (WMO) 

tropopause definition is planned. The boundary layer tracer is set to 1 below the PBL 

height. And finally, the surface tracer is set to 1 at the lowest model level (k=1).

When setting tracer_opt=4 there will also be a pair of tracers produced for 

lightning-NOx (LNOx). The first tracer tracks NO produced from intra-cloud lightning; 

the second tracer tracks NO produced from cloud-to-ground lightning.

4.4 Typical choices for namelist options

The addition of chemistry to WRF is making the choice of namelist options much more 

complicated than for the meteorological version of WRF. Not all chemistry options are 

interchangeable with each other (e.g. not every chemical mechanism will work with 

every available aerosol module), not all physics options will work with all chemistry 

options. The namelist description in the previous sections gives the user an idea of what 

physics options have to be chosen when applying the modeling system to study the 

aerosol direct and indirect effect. Work is in progress to extend the list of radiation and 

microphysics routines that will work with the aerosol routines. Work is also in progress 

to generalize the aerosol direct/indirect effect with respect to all available aerosol 

modules (e.g. allowing GOCART routines to interact with the atmospheric radiation 

schemes and the photolysis routines as well as allowing the full indirect effect for the 

modal aerosol scheme).

Even for very simplistic chemical setups seemingly small changes in the namelist 

options can cause large differences in the results. For real-time and research applications, 

we commonly use (very different than in V3.0x):

chem_adv_opt = 2,
36

moist_adv_opt=2,

scalar_adv_opt=2,

diff_6th_opt = 0

The above options should always be used when running chemistry simulations. The 

WRF advection scheme has the tendency to overshoot and produce locally unrealistically 

low values (referred to at times as “digging holes”) if those options are not turned on.

This “digging” is stronger with stronger gradients like those found where there are high 

emission rates.

cu_phys = 3 or 5

cugd_avedx=1,

cu_rad_feedback=.true.

chem_conv_tr = 1,

The above options should be used if a convective parameterization is called for. The 

option chem_conv_tr will work with any other parameterization. However, 

cu_rad_feedback will only work with cu_phys=3 or 5. The latter option ensures that areas 

with convective precipitation will be seen by the atmospheric radiation scheme and the 

photolysis scheme. Not using any of the above convection-related options 

(chem_conv_tr=0) will underestimate the transport out of the boundary layer 

significantly. Setting false the cu_rad-feedback option will lead to photolysis rates that 

are unaffected by convection (too high), as well as skin and surface temperatures that are 

too warm. The cugd_avedx parameter should be to one (1), except for forecasts high 

resolution of dx larger than 2km, but smaller than 10km. It will turn on subsidence 

spreading over neighboring grid points from the convective parameterization. In that 

case, set cugd_avedx=3 and cu_phys = 5. Other values are currently not allowed.

sf_sfclay_physics = 1

sf_surface_physics=2

bl_pbl_physics =1

The choice of the PBL physics is the most contested. It might depend strongly on the 

users own preferences. The user must keep in mind that results can differ significantly 

depending on this choice. The YSU scheme will lead to the deepest boundary layers 

when using the above choices (1-2-1). The user may also go to 2-2-2, using the MYJ 

scheme. There is no sure way of telling which will work better. We also sometimes 

choose the RUC soil parameterization (2-3-2) in combination with either YSU or MYJ 

scheme. This may work fine when the input conditions come from the RUC. The 

question of what modeling system the input and boundary conditions come from (such as 

GFS,NAM,ECMWF, etc) and what type of physics are used in that modeling system can 

play a role too in determining the choice of PBL physics. The user may want to try to be 

consistent with the larger scale model, or chose the larger scale model based on his 

preferred choice of physics options – if possible. An additional consideration here is also 

the availability of an initial cloud analysis. This is available from the RUC, also the WRF 

based Rapid Refresh (RR) which will replace the RUC, and may be essential in reducing 
37

spin-up. New PBL parameterizations are now also available. These show great promise. 

You may try the MYNN scheme. It was tested successfully with chemistry.

mp_zero_out = 2

We always choose this option if not using positive definite advection. It ensures that 

hydrometeor mixing ratios are not allowed to grow smaller than a threshold value 

(mp_zero_out_thresh), in particular qv as well as other moisture mixing ratios will never 

go negative.

chem_dt = 0 [sets chem_dt = time_step; remember that the units are in minutes]

If you are using chem_opt=1 or 2, we advise to use the timestep as is used by the 

meteorological part of the model. That is, set chem._dt = 0 and the chemistry will use the 

same time step as used by the meteorology dynamics part of the model. You can choose 

larger time steps for any of the other options of chem_opt, but may want compare your 

results to a control simulation with chem._dt=0.

4.5 Input fields for chemical constituents

Unless chemical fields are available from a modeling system (global model, larger 

scale model, or even another WRF/Chem run), an idealized vertical profile for each 

chemical species is provided to start the model simulation. This vertical profile, obtained 

when the model is initialized with chem_in_opt set equal to zero “0“ in the 

namelist.input, is based upon northern hemispheric, mid-latitude, clean environment 

conditions. If modifications are required, the routine module_input_chem._data can be 

modified to produce the desired initial conditions. Note that if the initial fields are 

modified, the boundary conditions will probably also need to be modified (also located in 

module_input_chem_data).

The idealized profile is obtained from climatology in the routine 

module_input_chem._data with data based upon results from the NALROM numerical 

chemistry model. The profile is declared globally inside the routine so that the lateral 

boundary conditions for a chemistry simulation may also be derived from this idealized 

profile. For ease of use, please note that in this module, the variable "iref" is the 

reference index, and "fracref" is the reference fraction corresponding to iref. For 

example, the species number 1 for a WRF/Chem simulation is SO2. The first reference 

index for the idealized profile, iref(1), is set to the number 12 indicating that SO2 is 

taken from the 12th species in the input data table. Not all chemical species matchup so 

cleanly. For example, the NALROM model calculates its chemistry using lumped OX 

(where OX = O3 + NO2 + HNO3 + ...) and a lumped NOX is obtained from (NOX = NO 

+ NO2 + NO3 + 2N2O5 + HO2NO2 + HONO). However, the RADM2 chemical 

mechanism strictly uses O3, and NOx is a combination of NO + NO2 only. Therefore, 

fractions of chemical species based upon the values of fracref are used to separate the 

lumped chemical species into the chemical species used by the RADM2 chemical 

mechanism.
38

Short-lived species are initialized to steady-state equilibrium - since they are 

short-lived. The short-lived species within a lumped category (Ox , NOx, or NO3+N2O5 

in our case) would be renormalized to the lumped class after the steady-state equilibrium 

concentrations are determined.

The following is the list of long-lived species provided by the NALROM 

chemistry model. 

 NAMEL( 1) OX 

 NAMEL( 2) NOX 

 NAMEL( 3) HNO3 

 NAMEL( 4) H2O2 

 NAMEL( 5) CH3OOH 

 NAMEL( 6) CO 

 NAMEL( 7) ISOPRENE 

 NAMEL( 8) CH2O 

 NAMEL( 9) CH3CHO 

 NAMEL(10) PAN 

 NAMEL(11) OTHER ALKA

 NAMEL(12) SO2 

 NAMEL(13) BUTANE 

 NAMEL(14) ETHENE 

 NAMEL(15) PROPENE

 NAMEL(16) PPN 

 NAMEL(17) MEK 

 NAMEL(18) RCHO 

 NAMEL(19) SO4 

 NAMEL(20) MVK 

 NAMEL(21) MACR 

 NAMEL(22) HAC 

 NAMEL(23) MGLY 

 NAMEL(24) HPAN 

 NAMEL(25) MPAN 

 NAMEL(26) PROPANE 

 NAMEL(27) ACETYLENE 

 NAMEL(28) OH 

 NAMEL(29) HO2 

 NAMEL(30) NO3 + N2O5 

 NAMEL(31) HO2NO2 

 NAMEL(32) SUM RO2 

 NAMEL(33) OZONE 

 NAMEL(34) NOX 
39

4.6 Using chemical boundary conditions from other modeling systems

At this time, tools to provide data for the lateral boundary have been provided by 

the user community. Most of these tools are still under development and are supported 

by the individual groups. Each of these tools are designed to provide larger scale data 

from models other then WRF as boundary and initial conditions to the WRF/Chem 

simulations. 

4.6.1 The wrfchembc utility

One such utility program that is available from NOAA/ESRL is called 

wrfchembc. This program currently works with data – for a selected number of species -

from the MPI-MATCH and RAQMS global chemistry models. You can download the 

latest version of the code from the ESRL ftp site. For example, the latest code might be 

named

ftp://aftp.fsl.noaa.gov/divisions/taq/broken_experimental/wrfchemv2.2_bcond_code_09A

pr07.tar

You can then modify the Makefile to use your desired compile options and 

compile to generate the wrfchembc executable. You must also modify the 

wrfchembc_namelist.input file to have the correct data directories and species added to 

the wrfbdy file.

Run the wrfchembc program after real.exe and before wrf.exe to add the global 

model data to the lateral boundary data file (wrfbdy_d01). In addition, before running 

wrf.exe, modify the namelist.input to set have_bcs_chem = .true.

4.6.2 The mozbc utility

Another tool is provided by NCAR/ACD and is designed to create time-varying 

chemical boundary conditions from the MOZART global model to a WRF/Chem 

simulation. The mozbc utility is a single cpu code that maps species concentrations from 

MOZART datasets to WRF/Chem concentrations for initial condition and boundary 

condition datasets. The utility is setup for MOZART species concentrations to be in 

volume mixing ratio and converts the species units to WRF/Chem depending on whether 

it is a gas or aerosol. The mozbc utility allows for a versatile mapping to each WRF 

chemical species from MOZART species including multiple with choices for:

! An individual weight factor per MOZART species,

! An overall conversion factor per WRF/Chem species.

The mozbc utility requires users to have a WRF/Chem initial condition file

(wrfinput_d<domain>) for each domain of interested and/or a WRF/Chem boundary 
40

condition file (wrfbdy_d01) for the first WRF/Chem domain. The Mozart datasets are 

interpolated in space (bilinearly in longitude, longitude and linearly in pressure), but not 

in time. Therefore, users need to ensure that the times in the MOZART and WRF/Chem 

files are matching for the period of interest. Otherwise, if a non-matching time is found 

the mozbc will abort the run with an error statement.

4.7 Making a nested domain WRF/Chem simulation

Produce wrfinput files for both domains following Chapter 4 of WRF Users Guide.

Like the single domain WRF/Chem simulations, it is probably best to make a nested 

domain weather forecast (Chapter 4 of WRF Users Guide). 

Generate the emissions files for both domains using the emiss_v03.F program (section 3 

of Quick Step Guide, Chapter 2 of the user’s guide). File names will be 

wrfem_00to12z_d01 and wrfem_00to12z_d02.

The convert_emiss.exe program is not currently designed to read the namelist.input file 

and generate the nested domain emissions files. Therefore, run the conversion program 

treating the nested domain as if it was actually the mother domain. 

Follow the description in section 3 to generate wrfchemi_d01 for the coarse domain, 

move it to a save place. Change the namelist.input file. Moving the nested information to 

the mother domain column. Move the met wrfinput_d02 to wrfinput_d01, link the output 

from emisv03 (for the nested domain) to the required filenames and then run 

convert_emiss. Finally, move the resulting wrfchemi_d01 to wrfchemi_d02.

When running wrf.exe with more than one domain (e.g., 2-way nested simulation), nearly 

every chemistry namelist option needs to be set for each domain. A user should always 

examine the Registry/registry.chem file and check each of the chemistry namelist 

variables. Those variables that are dimensioned max_domains need to be set for each 

domain. The following example shows how the chemistry namelist variables might be 

configured for a simulation using more than one domain.

&chem

kemit = 19,

chem_opt = 301, 301,

bioemdt = 30, 30,

photdt = 30, 30,

chemdt = 2.0, 0.66666, 

io_style_emissions = 1,

emiss_opt = 5, 5,

chem_in_opt = 1, 1,

phot_opt = 1, 1,

gas_drydep_opt = 1, 1,

aer_drydep_opt = 1, 1,
41

bio_emiss_opt = 1, 1,

dust_opt = 0,

dmsemis_opt = 0,

seas_opt = 0,

gas_bc_opt = 1, 1,

gas_ic_opt = 1, 1,

aer_bc_opt = 1, 1,

aer_ic_opt = 1, 1,

gaschem_onoff = 1, 1,

aerchem_onoff = 1, 1,

wetscav_onoff = 0, 0,

cldchem_onoff = 0, 0,

vertmix_onoff = 1, 1,

chem_conv_tr = 1, 1,

biomass_burn_opt = 1, 0,

plumerisefire_frq = 30, 0,

aer_ra_feedback = 0, 0,

have_bcs_chem = .false., .false.,
42

Chapter 5: Visualizing WRF/Chem Data files

Table of Contents

5.1 Introduction .................................................................................................................42

5.2 The ncdump application..............................................................................................42

5.3 Using NCL scripts.......................................................................................................43

5.4 The ncview application ...............................................................................................45

5.5 The RIP application.....................................................................................................46

5.5.1 Downloading and installing the RIP program......................................................46

5.5.2 Pre-processing data from WRF/Chem .................................................................47

5.5.3 Generating NCAR GKS plots using RIP .............................................................48

5.1 Introduction

The WRF modeling system has a number of visualization tools that are available 

to display data. Since the model output data is netCDF format, essentially any tool 

capable of displaying this data format can be used to display the WRF model data. 

Currently, NCAR currently supports 4 graphical tool packages (NCL, RIP4, WRF-toGrADS and WRF-to-vis5d. A description of each of these tools is also available online 

at: 

http://www.mmm.ucar.edu/wrf/users/graphics/WRF-post-processing.htm.

The WRF/Chem model, being part of the WRF modeling system, can likewise use any of 

the WRF netCDF visualization tools. A detailed description of all available visualization 

tools is beyond the scope of this user’s guide. Instead this chapter will discuss a few of 

the tools that are being used to examine WRF/Chem input and output files – ncdump, 

ncview and RIP. However, each user is encouraged to explore the multitude of netCDF 

visualization tools that are available and use the one(s) that are best suited to their needs.

5.2 The ncdump application

The ncdump utility is distributed by Unidata and installed with the netCDF library. 

This application is a netCDF file viewer which can be used to generate ASCII 

representation of the data. There are some limits to what this program can do with point 

(e.g., surface station) data, but there are more options available for examining array data. 

However, ncdump can be cumbersome when examining large volumes of array data. The 

Unidata web page

http://www.unidata.ucar.edu/software/netcdf/docs/ncdump-man-1.html,

contains a detailed description of the ncdump command and examples of its usage.
43

5.3 Using NCL scripts

Among the many port-processing utilities to visualize WRF output is NCL. This section 

will briefly describe a script that can be used to generate a plot of chemical species. For 

additional information about NCL, the reader is directed to Chapter 8 in the WRF model 

User’s Guide.

Following the NCL script examples, the following script has been generated to plot ozone 

for the 1 August 2000 at 0000 UTC. The user is required to set the date and run directory 

(direc) as well as the header for the file name (filnm) and field to be plotted in the script. 

The gas phase species can be converted to ppm from ppb for easier plotting and viewing. 

The script is as follows:

load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"

load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"

load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRF_contributed.ncl"

begin

; read in wrfout file

 date = "08-01_00"

 direc = "./"

; filename=filnm

 filnm = addfile(direc+"wrfout_d01_2000-"+date+":00:00.nc","r")

; extract field to be plotted from file

 ozone = filnm->o3

; scale by 1000 (convert ppm to ppb)

 ozone = ozone*1000.

 ozone@units = "ppbv"

;===============================================================

; set up plotting parameters

; creating 2 workstations to plot both to screen (x11) and to a pdf file

wks = gsn_open_wks("x11","ozone_lev50_"+date) 

wks_2 = gsn_open_wks("pdf","ozone_lev50_"+date)

gsn_define_colormap(wks,"WhViBlGrYeOrRe") ; choose colormap for wks

gsn_define_colormap(wks_2,"WhViBlGrYeOrRe") ; choose colormap for wks_2

; assign plotting resources

res = True

res@gsnMaximize = True

res@gsnSpreadColors = True ; use full range of color map

res@cnFillOn = True ; turn on color fill
44

res@cnLinesOn = False ; turn off contour lines

res@cnLineLabelsOn = False ; turn off contour line labels

res@cnLevelSelectionMode = "ManualLevels" ; set explicit contour levels

res@cnMinLevelValF = 60

res@cnMaxLevelValF = 110

res@cnLevelSpacingF = 5

;

res@tiMainString = "OZONE CONC. AT "+date+"UTC"

;===============================================================

; use WRF_contributed procedure to set map resources

 WRF_map_c(filnm,res,0)

; define lat, lon

 ozone@lat2d = filnm->XLAT(0,:,:)

 ozone@lon2d = filnm->XLONG(0,:,:)

;

; plot ozone at the lowest level

 plot = gsn_csm_contour_map(wks,ozone(0,0,:,:),res) 

 plotpdf = gsn_csm_contour_map(wks_2,ozone(0,0,:,:),res) 

end

By issuing the ncl execution command

ncl <script name>

The contour plot showing ozone concentration over the domain is generated (Figure 5.1).
45

Fig. 5.1 A sample of a color-filled contour plot generated using the NCL 

script. The colored regions represent locations in which the surface ozone 

concentration (ppbv) is in the range indicated by the color-bar shown at 

the bottom of the figure. 

5.4 The ncview application

The Ncview application is a visual browser for netCDF data developed by David 

W. Pierce of the Scripps Institution of Oceanography. Ncview reads the wrfout files (also 

all input files, including the emissions) directly using the simple command “>ncview 

wrfout....”. This makes it a very useful tool for a quick look analysis or diagnosis of a 

problem with the model run, including problems with any of the input files. Ncview

installs onto UNIX platforms under X11 and provides an easy, push-button method to 

examine the contents of a netCDF file (Fig. 5.2). When looking at the data you can 

change the color maps, invert the data, generate line plots, etc. In addition, if the file 

contains a time series, Ncview permits simple animation of the data. An additional 

information program as well as a link to download the source code is available online at:
46

http://meteora.ucsd.edu/~pierce/ncview_home_page.html. 

Fig. 5.2 A screen-capture image showing how the Ncview user interface 

allows the user to examine the WRF/Chem emissions input data file. The 

color image shows the surface emissions for carbon monoxide and the plot 

shows the temporal evolution of the surface CO emissions at a single 

point.

5.5 The RIP application

5.5.1 Downloading and installing the RIP program

The FORTAN program RIP (Read/Interpolate/Plot) invokes NCAR Graphics 

routines to produce two-dimensional images from gridded numerical model data. 
47

Originally designed to work with the PSU/NCAR Mesoscale Model (i.e., MM5), it has 

been modified by Mark Stoelinga to work with the WRF model. RIP is officially 

supported by the National Center for Atmospheric Research (NCAR) and functions on 

UNIX systems that have a FORTRAN 77/90 compiler and the NCAR Graphics Library. 

Documentation regarding the RIP program is available online at:

http://www.mmm.ucar.edu/wrf/users/docs/ripug.htm.

RIP is not fully interactive, but instead it requires the user to specify the desired 

plots through a formatted text file. NCAR Graphics CGM files are created when the RIP 

program is executed and these files can be viewed with any one of several different 

metacode translator applications (i.e., idt, ctrans). Additional plots or modification of any 

existing plots is accomplished through changing the formatted text file and re-executing 

the RIP program.

5.5.2 Pre-processing data from WRF/Chem

Before using RIP to plot WRF/Chem output, one first needs to specify the 

location of the RIP executable by setting the environmental variable RIP_ROOT. In cshell syntax, if the RIP code is located in /home/username/RIP, the command is:

setenv RIP_ROOT /home/username/RIP.

After setting the RIP_ROOT environmental variable, the WRF/Chem data files 

need to be converted to data files having the format expected by the RIP program. The 

RIP data preprocessor program, or rip_dp, is used to accomplish this task. Like RIP, a 

formatted text file is needed to specify what operations are to be performed. The rip_dp 

input data file (named ripdp.in for example) might look similar to the following 

example:

&userin

ptimes=0,-

72,3,ptimeunits='h',tacc=30.,discard='QGRAUP','Q2','T2','TH2','AC0','AC

O3','ALD','ANTHA','CANWAT','cor','CORN','COSALPHA','CSL','CU_CO_TEN','D

CB','DEP_VEL','dmap','E','ECI','E_ECI','orgaro1j','orgaro2j','orgaro1i'

,'orgaro2i','orgba1i','orgba1j','orgba2i','orgba2j','orgba3i','orgba3j'

,'orgba4i','orgba4j','orgole1i','orgole1j','orgpai','orgpaj','p25i','p2

5j','nh4ai','nh4aj','no3ai','no3aj','E_NH3','E_ORGI','E_SO2','ETH','EXC

H_H','GLW','GLY','GRDFLX','h2o2','hc3','hc5','hc8','hfx','hno3','hno4',

'ho','ho2','hono','ISLTYP','ISO','IVGTYP','KET','LANDMASK','LH','MGLY',

'MU','MUB','n2o5','nh3','nu0','ol2','olt','onit','op1','op2','paa','pan

','rtc','rte','SEAS','SFROFF','SH2O01','SH2O02','SH2O03','SH2O04','SINA

LPHA','tol','tpan','UDROFF','xyl',

iexpandedout=1

&end

In this file the number of hours (72), the time interval (3) and the arrays that are to be 

excluded from preprocessing are specified.
48

The command to run the rip_dp program might look like the following:

ripdp_wrf –n ripdp.in /Data/wrfplots all /WRFV3/test/em_real/wrfout_d01_2008-07-14_12:00:00

The execution of the rip_dp program will produce many small Rip data files. These files 

are located in the Data directory and are named like the following files:

wrfplots_0000.00000_ALBEDO 

wrfplots_0000.00000_V10 

wrfplots_0000.00000_ALT 

wrfplots_0000.00000_VEGFRA 

wrfplots_0000.00000_TMN 

wrfplots_0000.00000_SO2 

...

5.5.3 Generating NCAR GKS plots using RIP

Before generating the NCAR graphics data files, the user needs to provide all of 

the specific details in RIP user input data file, rip.in. The first part of this data file 

consists of 2 namelists: the userin namelist which holds the general input specifications

and the trajcalc namelist which controls the creation of trajectories plots. The second part 

of the rip.in file holds a specification table that controls the generation of the plot(s). The 

reader should examine the online RIP documentation for a more detailed explanation. 

For the generation of a horizontal plot showing the fine particulate matter 

(PM2.5) and the horizontal winds at the surface and placed on a map of the simulation 

domain, the rip.in data file would look similar to the following:

&userin

idotitle=1,title='PM2.5 Level 1',titlecolor='def.foreground',

ptimes=${hour},

ptimeunits='h',tacc=180,timezone=-7,iusdaylightrule=1,

iinittime=1,ivalidtime=1,inearesth=0,

flmin=.09, frmax=.92, fbmin=.10, ftmax=.85,

ntextq=0,ntextcd=0,fcoffset=0.0,

idescriptive=1,icgmsplit=0,maxfld=10,itrajcalc=0,imakev5d=0

&end

&trajcalc

rtim=15,ctim=6,dtfile=3600.,dttraj=600.,vctraj='s',

xjtraj=95,90,85,80,75,70,65,80.6,80.6,80.6,80.6,80.6,80.6,

yitraj=50,55,60,65,70,75,80,77,77,77,77,77,77,

zktraj=.9,.9,.9,.9,.9,.9,.9,.99,.9,.8,.7,.6,.5,

ihydrometeor=0

&end

=======================================================================

-------------------- Plot Specification Table -------------------

=======================================================================

feld=PM_2.5_DRY; ptyp=hc; vcor=s; levs=b1; cint=.5; cmth=fill;>

 smth=2;cosq=.0,violet,2.,dark.blue,4.,blue,6.,green,>

8.,light.green,10.,dark.yellow,15.,yellow,>
49

20.,red,30.,red.coral,40.,orange,50.,tan,>

60.,light.gray,70.,med.gray,80.,black,100.,white

feld=uuu,vvv; ptyp=hv; nttl;vcmx=-1; colr=black;linw=2

feld=map; ptyp=hb

feld=tic; ptyp=hb

=======================================================================

Generation of a NCAR CGM data file is done by issuing the command:

${RIP_ROOT}/rip rip.in wrfplots

In the /Data directory. With the successful execution, a file named wrfplots.cgm is 

created. As mentioned previously, the CGM data file can be viewed using any of the 

CGM file viewers like ctrans. For example, to use ctrans to view the CGM file, issue 

the command:

${NCARG_ROOT}/bin/ctrans -d X11 wrfplots.cgm.

The product from executing this command will be an image like the one shown in Fig. 

5.3.
50

Fig. 5.3. An NCAR GKS figure produced using by the RIP visualization 

tool. The image shows the surface fine particulate matter (PM2.5) 

concentration (micrograms per cubic meter) and the horizontal surface 

winds (barbs).

With the successful visualizing of the results from a WRF/Chem simulation, one could 

add additional fields to plot by making additional RIP user input data files for each 

individual plot, or modify the previous image specifications in a user-input data file. 

After modifying the user-input data file(s), you would only need to (re)create the NCAR 

CGM file(s).
51

Chapter 6: WRF/Chem KPP Coupler

Table of Contents

6.1 Introduction .................................................................................................................51

6.2 KPP requirements........................................................................................................52

6.3 Compiling the WKC....................................................................................................52

6.4 Implementing chemical mechanisms with WKC........................................................52

6.5 Layout of WKC...........................................................................................................53

6.6 Code produced by WKC, User Modifications............................................................54

6.7 Available integrators...................................................................................................55

6.8 Adding additional mechanisms with WKC.................................................................55

6.9 Adapting KPP equation files.......................................................................................56

6.10 Adapting additional KPP integrators for WKC.........................................................57

6.1 Introduction

Coupled state of the art meteorology/chemistry models such as WRF/Chem 

typically include hundreds of reactions and dozens of chemical species. Solving the 

corresponding huge systems of ordinary differential equations requires highly efficient 

numerical integrators. In the case of hard-coded manually “tuned” solvers, even minor 

changes to the chemical mechanism, such as updating the mechanism by additional

equations, often require recasting the equation system and, consequently, major revisions 

of the code. This procedure is both extremely time consuming and error prone. 

In recent years, automatic code generation has become an appreciated and widely 

used tool to overcome these problems. The Kinetic PreProcessor (KPP) is a computer 

program which reads chemical equations and reaction rates from an ASCII input file

provided by the user and writes the program code necessary to perform the numerical

integration (Damian et al. 2002; Sandu et al. 2003; Sandu and Sander 2006).

Computational efficiency is obtained by automatically reordering the equations in order 

to exploit the sparsity of the Jacobian. While still in a developmental stage, KPP Version

2.1 has been sucessfully implemented into WRF/Chem. Furthermore, a preprocessor for 

WRF/Chem has been developed that automatically generates the interface routines 

between the KPP-generated modules and WRF/Chem, based on entries from the 

WRF/Chem registry files and the KPP input files. This WRF/Chem-KPP coupler, WKC 

hereafter, is automatically executed during code compilation and considerably reduces

the effort to add chemical compounds and/or reactions to existing chemical mechanisms. 

Likewise, the effort needed to construct new chemical mechanisms code has been greatly 

reduced due to the addition of KPP into WRF/Chem.

The WRF/Chem KPP Coupler, or WKC, was discussed by Salzmann and 

Lawrence (2006) at the WRF-User Workshop. The abstract is for the presentation is 

available with the KPP documentation in the WRF/Chem code 

(WRFV3/chem/KPP/documentation/abstr_wkc.pdf). A more complete set of 
52

documentation for KPP (Kinetic PreProcessor) is also provided on line by Adrian Sandu 

at:

http://people.cs.vt.edu/ asandu/Software/Kpp/.

References for the KPP are Damian et al. (2002), Sandu et al. (2003), Sandu and 

Sander (2006) and it is requested that these references are cited when presenting results 

from the KPP generated code. KPP and WKC are distributed under the GNU General 

Public License (GPL). Constructive comments and suggestions regarding the coupler 

and/or this documentation are welcome. Only a limited number of all KPP features are 

available for use with WKC, but more features may be added in the future.In the 

remainder of this chapter, the WKC as implemented into the WRF/Chem model is

described. Since the coupler has been only recently added to the WRF repository, it is 

possible that some design details could change based upon response from the WRF 

model developers as well as the WRF/Chem user community.

6.2 KPP requirements

KPP requires the UNUX tool programs flex, yacc, and sed to be installed on your 

system before compiling the code. Check with your system administrator if these 

programs are not installed. The path to the flex library (either libfl.a or libfl.sh) is 

specified by the environment variable FLEX_LIB_DIR. The default path for these 

libraries is assumed to be /usr/lib. If the library libfl.a (or libfl.sh) is not located in /usr/lib 

on your system, the variable FLEX_LIB_DIR should be set prior to compiling 

WRF/Chem. The C compiler is set by configure_kpp based on the settings in 

configure.wrf.

6.3 Compiling the WKC

The WKC, and therefore KPP as well, are compiled and executed automatically 

when WRF/Chem is compiled with the WRF_KPP environmental variable set (setenv 

WRF_KPP 1). The WKC copies the KPP generated code to the WRFV3/chem directory 

and automatically modifies the chemistry Makefile so that the KPP generated code is 

compiled and linked with the model. The KPP and WKC generated modules in the chem 

directory contain the string “kpp” in their file names. Running the clean script removes 

these modules.

6.4 Implementing chemical mechanisms with WKC

KPP files for chemical mechanisms which have already been implemented with 

WKC are located in subdirectories of WRFV3/chem/KPP/mechanisms. The 

corresponding packages are declared in the WRFV3/Registry/registry.chem file and 

contain the suffix “kpp” in their name. In order to use one of these mechanisms with 

WRF/Chem, set the chem_opt variable in the namelist.input file to the appropriate value.

The following mechanisms are currently available:
53

• RACM/SORGAM

• RACM (Stockwell et al., 1997).

• RACM-MIM (Geiger et al., 2003)

• RACM/SORGAM

These WKC implemented mechanisms have chem_opt greater than 100. The 

methodology for implementing additional mechanism(s) using KPP is discussed later in 

this chapter.

6.5 Layout of WKC

WKC reads KPP species input files with suffix .spc and the file 

Registry/registry.chem and automatically generates the Fortran 90 interface routines 

between WRF/Chem and the KPP generated code (see Fig. 6.1). It is in parts based on the 

WRF registry mechanism. The WKC related files are located in the chem/KPP directory. 

This directory contains:

• a subdirectory mechanisms which holds directories with KPP input files for 

different mechanisms.

• a compile and a clean script for WKC (which are executed from the WRF/Chem 

compile script).

• a version of KPP v2.1 in the kpp subdirectory. This version of KPP was adapted 

to produce code which can directly be used with WRF/Chem (using the #WRF 

Conform option in the .kpp file).

• the source code of WKC in the util/wkc subdirectory.

• module wkpp_constants.F which allows to specify input to kpp such as RTOL 

and ATOL (likely to be extended in the future).

• a subdirectory inc containing files which are included during compile time (using

“#include” statements). The files in chem/KPP/incare not removed by the WKC

clean script. Their purpose is to allow user modifications to WKC generated code.

At the heart of WKC is the routine gen kpp.c, which is located in the util/wkc directory.
54

Fig. 6.1. Schematic showing the flow structure of KPP in the WRF/Chem

model. Flowing down from the top, the Registry and KPP input data files 

(ASCII) are preprocessed into Fortran 90 and C code which is coupled to 

the WRF/Chem solvers.

6.6 Code produced by WKC, User Modifications

The code produced by WKC is called from the chem driver (see schematic call 

tree in Fig. 6.2). Since parts of the code are generated automatically, manual changes will 

be lost when recompiling WRF/Chem (as indicated by a warning in the header of the 

corresponding files). There are, however, a number of “#INCLUDE” preprocessor 

statements in the WKC generated code. The files included (in the .f files) are located in 

the chem/KPP/inc directory. These files are not removed by the clean script and can be 

used to inline user supplied code. In case this should not be enough, there are two ways to 

edit automatically generated files permanently: The files can either be renamed in such a 

way that they won’t be removed by the clean kpp script, or the C code which generated 

the files (either KPP or WKC) can be edited. The latter is generally the better solution. 

However, the method of using include files in the chem/KPP/inc directory is strongly 

recommended.
55

Figure 6.2: Schematic of the KPP call tree. Here the chem_driver routine 

in WRF/Chem calls a separate mechanism driver for each chemical

mechanism implemented with KPP. This model configuration requires 

only one additional subroutine to be added to WRF/Chem so that the user 

can switch between the different implemented chemical mechanisms.

6.7 Available integrators

References for the chosen integrator can e.g. after compiling WRF/Chem with 

KPP be found in the chem directory in module kpp my mechanism Integrator.f90, where 

‘‘my mechanism’’ refers to the chemical mechanism chosen in the WRF/Chem namelist.

Currently, only Rosenbrock type integrators are available for the use with the WKC. on 

the methodology to add additional integrators to the WKC will be discussed in a later 

section.

6.8 Adding additional mechanisms with WKC

When implementing new mechanisms, it is often necessary to calculate additional 

photolysis rates, include new emission datasets, specify initial and boundary conditions, 

calculate additional dry deposition rates, specify Henry’s law coefficients for soluble 

trace gases and carry them through the wet deposition routines, etc., in addition to the 

following steps.

The following basic steps are necessary in order to add an additional mechanism:

• edit the registry file Registry.EM_CHEM to

o add additional species to the chem array structure (if necessary).

o add a package (a mechanism) with a name ending on “_kpp”, e.g.,

my_mechanism_kpp.
56

• provide input files my_mechanism.eqn, my_mechanism.spc, my_mechanism.kpp 

for KPP in a sub-directory of WRFV3/chem/KPP/mechanisms named after the 

package (i.e. my_mechanism, not my_mechanism_kpp).

• optionally provide a file (my_mechanism_wrfkpp.equiv) for mapping variable 

names in WRF/Chem to variable names in KPP (e.g. HO to OH).

For additional examples, you can examine the chemical mechanisms that have already 

been implemented. You should note that when copying one of the directories in 

WRFV3/chem/KPP/mechanisms to another directory it is necessary to change the name 

of #Model in the .kpp file and the names of the .eqn and the .spc file in the .def file. 

When introducing a “new” .kpp file you should set the #INTEGRATOR to an integrator 

contained in the directory WRFV3/chem/KPP/kpp/kpp-2.1/int/WRF_conform. For 

example, set

#INTEGRATOR WRF conform/rosenbrock

and add the line

#WRFCONFORM

to your new .kpp file. You should remember that not all KPP options are supported by the 

WKC. Also, the WKC is currently not able to handle comments in the .spc file!

6.9 Adapting KPP equation files 

The process of adapting a KPP equation file for the use with WRF/Chem involves 

renaming a few variables in the equation file:

KPP equation file Equation file units Registry

Photolysis rate J(Pj_no2) s

-

1 ph_no2

Temperature TEMP K t_phy

Third body 

concentration

C_M (molecular moist air) cm3 Calculated from 

density

Water vapor 

concentration

C_H20 Molecules cm3 Calculated from 

qvapor

"#$%&'()*+!,!-./01020!3

,4453!*)6789:);<7*)!=!>?<>@AB6C!D

,4463!);789:)5E,7)63!=!>?<>@B;5FC!D

GGG

,6H63!I&J<7K)6:I&K<!=!&LL6?!5GM6N15;!O!15;44G4O!'#I<!C!D

,6H;3!I&J<7I&J<:K&J#7IPQR74GS!KJK)74GS!J)7K)6!=!6G44N156!D

,6HH3!I+&J<7*)6:I<&*!=!'L)#?!TGU4N16T!O!SGV!O!TG;4N156!O!5GS!O!'#I<O!J@IC!D

GGG
57

Example File 1: Excerpt from the KPP equation (.eqn) file for the RACMMIM (Geiger et al., 2003) mechanism.

Photolysis rates, temperatures, third body concentrations, and water vapor 

concentrations are passed down from the WRF/Chem KPP interface routines. Photolysis 

rates are stored pointwise in a 1-D array and addressed by pointers defined in the 

automatically generated interface routine. For example, the NO2 photolysis rate ph no2 in 

the Registry. EM CHEM becomes j(Pj no2) in the KPP equation file (see example in 

Example File 1). Additional variables (e.g. user calculated N2O5 hydrolysis rates) can be 

passed down by modifying .inc files in the WRFV3/chem/KPP/inc directory.

6.10 Adapting additional KPP integrators for WKC

As previously mentioned, only Rosenbrock type solvers are currently available

for use with the WKC. Introducing additional integrators which come with KPP into 

WRF/Chem is rather straight forward, but the process can be very time consuming. The 

integrator files which come with KPP are located in the directory 

chem/KPP/kpp/kpp2.1/int. Integrators which have been adapted for WRF/Chem are 

located in a subdirectory of chem/KPP/kpp/kpp2.1/int named WRF_Conform. The 

methodology for adapting an additional solver for WRF/Chem is as follows:

• Copy the .f90 and the .def file to the WRF_Conform directory.

• Add KPP ROOT as a prefix to the names of the subroutines in all subroutine and 

end subroutine statements.

• Change the arguments in the SUBROUTINE (KPP_ROOT_)INTEGRATE 

statements to match the calling routine (see the existing integrator routines for an 

example).

Remove all the USE statements in which non-constant data is used. Instead pass down

the data in the subroutine statements. And you should be aware that, depending on the 

chosen solver, there may be additional required steps that have not been mentioned 

above.

 
58

Chapter 7: Summary

Table of Contents

7.1 Summary .....................................................................................................................58

7.2 WRF/Chem publications.............................................................................................58

7.1 Summary

Presented in this user’s guide is version 3.3 of the WRF/Chem model. This guide 

is not intended to be an exhaustive report about all that is needed to setup and use the 

WRF/Chem model. While it attempts to provide the latest and most accurate information 

about the setup and running of WRF/Chem, errors or incomplete information may have 

been presented. Also, due to the complexity of the model and the diverse needs of each 

user, there may be insufficient information for your particular research or operational 

application. 

As was stated in beginning chapters, you will need to consider your needs and/or 

requirements for the domain of interest before beginning the simulation. This includes, 

but is not limited to the available meteorological and anthropogenic emissions data sets. 

Also, the WRF model, and likewise the WRF/Chem model, is being continuously 

updated. Therefore, you are advised to stay involved in the WRF/Chem user community 

to be made aware of any and all updates to or issues with the code.

You are also advised to link your web browser to the WRF/Chem user group web 

page (http://www.wrf-model.org/WG11) and periodically scan the pages for changes 

and/or updates to the model. These web pages contain answers to frequently asked 

questions, or FAQ’s. So this is a good place to start when you have a question regarding 

the setup, use, or performance of the WRF/Chem model. Finally, this web page contains 

a list of relevant publications regarding the WRF/Chem model. When presenting, or 

publishing your results from the WRF/Chem model, it is requested that you cite the Grell 

et al. (2005) and Fast et al. (2006) manuscripts provided in the relevant publications 

section of this chapter. For any application that uses the indirect effect, please also cite

Gustafson et al. (2007). A more detailed model description with a series of papers is in 

the works and may appear in a new journal that is intended for model description papers 

only.

7.2 WRF/Chem publications

Barnard, J.C., J.D. Fast, G.L. Paredes-Miranda, and P.W. Arnott, 2008:

Closure on the single scattering albedo in the WRF-Chem framework using data 

from the MILAGRO campaign. Atmos. Chem. Phys. Discuss., 9, 5009-5054.
59

Chapman, E.G., W.I. Gustafson Jr., R.C. Easter, J.C. Barnard, S.J. Ghan, M.S. Pekour, 

and J.D. Fast, 2008: Coupling aerosols-cloud-radiative processes in the WRFchem model: Investigating the radiative impact of large point sources. Atmos. 

Chem. Phys., 8, 14765-14817.

Darby, LS; McKeen, SA; Senff, CJ; White, AB; Banta, RM; Post, MJ; Brewer, WA; 

Marchbanks, R; Alvarez, RJ; Peckham, SE; Mao, H; Talbot, R, 2007: Ozone 

differences between near-coastal and offshore sites in New England: Role of 

meteorology. J. Geophys. Res.-Atmos., 112 ( D16 ), Art No. D16S91, issn: 0148-

0227, ids: 208QX, 31-Aug 2007.

Delle Monache, L., J. Wilczak, S. McKeen, G. Grell, M. Pagowski, S. Peckham, R. Stull, 

J. McHenry, and J. McQueen, 2007: A Kalman-filter bias correction method 

applied to deterministic, ensemble averaged, and probabilistic forecasts of surface 

ozone, Tellus, TeB-07-06-0034.R1, accepted 10/23/07. 

Djalalova, I; Wilczak, J; McKeen, S; Grell, G; Peckham, S; Pagowski, M; 

DelleMonache, L; McQueen, J; Tang, Y; Lee, P; McHenry, J; Gong, W; Bouchet, 

V; Mathur, R, 2010: Ensemble and bias-correction techniques for air quality 

model forecasts of surface O-3 and PM2.5 during the TEXAQS-II experiment of 

2006. Atmos. Environ., 44 (4) 455-467, issn: 1352-2310, ids: 556TD, doi: 

10.1016/j.atmosenv.2009.11.007.

Eder, B., D. Kang, A. Stein, J. McHenry, G. Grell, and, S. Peckham, 2005: The New 

England Air Quality Forecasting Pilot Program: Development of an Evaluation 

Protocol and Performance Benchmark. Journal of the Air and Waste Management 

Association, 55, 20-27. 

Fast, J. , D., W. I. Gustafson, Jr., R. C. Easter, R. A. Zaveri, J. C. Barnard, E. G. 

Chapman, G. A. Grell, and S. E. Peckham, 2006: Evolution of ozone, particulates, 

and aerosol direct radiative forcing in the vicinity of Houston using a fully 

coupled meteorology-chemistry-aerosol model, J. Geophys. Res., 111, D21305, 

doi:10.1029/2005JD006721.

Fast, J.D., B. de Foy, F. Acevedo Rosas, E. Caetano, G. Carmichael, L.

Emmons, D. McKenna, M. Mena, W. Skamarock, X. Tie, R.L. Coulter, J.C.

Barnard, C. Wiedinmyer, and S. Madronich, 2007: A meteorological overview of

the MILAGRO field campaigns. Atmos. Chem. Phys., 7, 2233-2257.

Fast, J.D., A. Aiken, L.Alexander, T. Campos, M. Canagaratna, E. Chapman, P.

DeCarlo, B. de Foy, J. Gaffney, J.de Gouw, J.C. Doran, L. Emmons, A. Hodzic,

S. Herndon, G. Huey, J. Jayne, J. Jimenez, L. Kleinman, W. Kuster, N.

Marley, Carlos Ochoa, T. Onasch, M. Pekour, C. Song, C. Warneke, D.

Welsh-Bon, C. Wiedinmyer, X.-Y. Yu, and R. Zaveri, 2008: Evaluating

simulated primary anthropogenic and biomass burning organic aerosols during
60

MILAGRO: Implications for assessing treatments of secondary organic

aerosols. Atmos. Chem. Phys. Discuss., 9, 4805-4871.

Frost, G. J., S. A. McKeen, M. Trainer, T. B. Ryerson, J. S. Holloway,D. T. Sueper, T. 

Fortin, D. D. Parrish, F. C. Fehsenfeld, S. E. Peckham, G. A. Grell, D. Kowal, J. 

Cartwright, N. Auerbach, and T. Habermann, 2006: Effects of Changing Power 

Plant NOx Emissions on Ozone in the Eastern United States: Proof of concept, J. 

Geophys. Res., 111, D12306. 

Grell G.A., J. D. Fast, W. I. Gustafson Jr, S. E. Peckham, S. A. McKeen, M. Salzmann, 

and S. Freitas. 2010: On-line Chemistry within WRF: Description and Evaluation 

of a State-of-the Art Multiscale Air Quality and Weather Prediction Model. In 

press. Integrated Systems of Meso-Meterological and chemical Transport Models.

Grell,G. A. S. R. Freitas, M. Stuefer and J. Fast, 2010: Inclusion of biomass burning in 

WRF-Chem: impact of wildfires on weather forecasts, Atmos. Chem. Phys. 

Discuss. 10,2010, 30613–30650 10.5194/acpd-10-30613-2010.

Grell, G. A., S. E. Peckham, R. Schmitz, S. A. McKeen, G. Frost, W. C. Skamarock and 

B. Eder, 2005: Fully coupled online chemistry within the WRF model, Atmos. 

Environ., 39, 6957-6975.

Gustafson Jr., W.I., E.G. Chapman, S.J. Ghan, and J.D. Fast, 2007: Impact on modeled 

cloud characteristics due to simplified treatment of uniform cloud condensation 

nuclei during NEAQS 2004. Geophys. Res. Lett., 34, L19809.

Kim, S.-W., A. Heckel, S.A. McKeen, G.J. Frost, E.-Y. Hsie, M.K. Trainer, A. Richter, J. 

Burrows, S.E. Peckham, and G.A. Grell, 2006: Satellite-Observed US Power 

Plant NOx Emission Reductions and Impact on Air Quality, Geophysical 

Research Letters, 33, L22812, doi:10.1029/2006GL026310, 2006.

Matsui, H., M. Koike, Y. Kondo, N. Takegawa, K. Kita, J.D. Fast, R. Zaveri,

L. Peng, Y. Wang, G. Song, D. R. Blake, D. G. Streets, and T. Zhu, 2009:

Spatial and temporal variations of aerosols around Beijing in the summer

2006: Model Evaluation and Source Apportionment. J. Geophys. Res., 114,

D00G13, doi: 10.1029/2008JD010906.

McKeen, S., J. Wilczak, G. Grell, I. Djalalova, S. Peckham, E.-Y. Hsie, W. Gong, V. 

Bouchet, S. Menard, R. Moffet, J. McHenry, J. McQueen, Y. Tang, G. R. 

Carmichael, M. Pagowski, A. Chan, T. Dye, 2005: Assessment of an ensemble of 

seven real-time ozone forecasts over Eastern North America during the summer 

of 2004. J. Geophys. Res., 110, D21307.

McKeen, ,S., S.H. Chung, J. Wilczak, G. Grell, I, Djalalova, S, Peckham, W. Gong, V. 

Bouchet, R. Moffet, Y. Tang, G. R. Carmichael, R. Mathur, and S. Yu: The 

evaluation of several PM2.5 forecast models using data collected during the 
61

ICARTT/NEAQS 2004 field study, Journal of Geophysical Research, Vol. 112, 

D10S20, doi:10.1029/2006JD007608, 2007. 

Ntelekos, A., J.A. Smith, L. Donner, J.D. Fast, E.G. Chapman, W.I. Gustafson

Jr., and W.F. Krajewski, 2009: Effect of aerosols on intense convective

precipitation in the northeastern U.S. Q. J. Roy. Meteor. Soc.,135, 1367-1391. doi: 

10.1002/qj.476.

Pagowski, M; Grell, GA; McKeen, SA; Peckham, SE; Devenyi, D., 2010: Threedimensional variational data assimilation of ozone and fine particulate matter 

observations: some results using the Weather Research and Forecasting -

Chemistry model and Grid-point Statistical Interpolation. Q. J. R. Meteorol. 

Soc., 136 Part B (653) 2013-2024, issn: 0035-9009, ids: 694QO, doi: 

10.1002/qj.700.

Pagowski, M., G. A. Grell, S. A. McKeen, D. Devenyi, J. M. Wilczak, V. Bouchet, W. 

Gong, J. McHenry, S. Peckham, J. McQueen, R. Moffet and Y. Tang, 2005: A 

Simple method to improve ensemble-based ozone forecasts, Geophys. Res. 

Letters, 32, L07814.

Pagowski, M; Grell, GA, 2006: Ensemble-based ozone forecasts: Skill and economic 

value. J. Geophys. Res.-Atmos.: Vol. 111

Pagowski, M., G.A. Grell, D. Devenyi, S.E. Peckham, S.A. McKeen, W. Gong, L. Delle 

Monache, J.N. McHenry, J. McQueen and P. Lee, 2006: Application of dynamic 

linear regression to improve the skill of ensemble-based deterministic ozone 

forecasts, Atmos. Environ., 40, 3240-3250.

Shrivastava, M., Fast, J., Easter, R., Gustafson Jr., W. I., Zaveri, R. A., Jimenez, J. L., 

Saide, P., and Hodzic, A.: Modeling organic aerosols in a megacity: comparison 

of simple and complex representations of the volatility basis set approach, Atmos. 

Chem. Phys. Discuss., 10, 30205-30277, doi:10.5194/acpd-10-30205-2010, 2010.

Wilczak, J., S. McKeen, I. Djalalova, G. Grell, , S. Peckham, W. Gong, V. Bouchet, R. 

Moffet, J. McHenry, J. McQueen, P. Lee, Y. Tang, G. R. Carmichael: Biascorrected ensemble and probabilistic forecasts of surface ozone over eastern 

North America during the summer of 2004, Journal of Geophysical Research, 

Vol. 111, D23, D23S28, doi:10.1029/2006JD007598, 2006.
62

References

Ackermann, I.J., H. Hass, M. Memmesheimer, A. Ebel, F. S. Binkowski, U. Shankar, 

1998: Modal aerosol dynamics model for Europe: development and first 

applications. Atmos. Environ., 32 (17), 2981–2999.

Binkowski, F.S., U. Shankar, 1995: The regional particulate matter model, 1. Mode 

description and preliminary results. J. of Geophys. Res., 100, 26191–26209.

Boucher, O., and U. Lohmann, 1995: The sulfate-CCN-cloud albedo effect, A sensitivity 

study with two general circulation models. Tellus, 47B, 281-300.

Chang, J. S., R. A. Brost, I. S. A. Isaksen, S. Madronich, P. Middleton, W. R. Stockwell, 

C. J. Walcek, 1987: A three-dimensional Eulerian acid deposition model: Physical 

concepts and formulation. J. of Geophys. Res., 92, 14681-14700.

Chang, J.S., F. S. Binkowski, N. L. Seaman, J. N. McHenry, P. J. Samson, W. R. 

Stockwell, C. J. Walcek, S. Madronich, P. B. Middleton, J. E. Pleim, H. H. 

Lansford, 1989: The regional acid deposition model and engineering model. 

State-of-Science/Technology, Report 4, National Acid Precipitation Assessment 

Program, Washington, DC.

Damian, V., A. Sandu, M. Damian, F. Potra, and G.R. Carmichael, 2002: The Kinetic 

PreProcessor KPP -- A Software Environment for Solving Chemical Kinetics, 

Computers and Chemical Engineering, 26, p. 1567-1579, 2002. 

Erisman, J.W., van Pul, A., Wyers, P., 1994: Parameterization of surface resistance for 

the quantification of atmospheric deposition of acidifying pollutants and ozone. 

Atmos. Environ., 28, 2595–2607.

Fast, J., D., W. I. Gustafson, Jr., R. C. Easter, R. A. Zaveri, J. C. Barnard, E. G. 

Chapman, G. A. Grell, and S. E. Peckham, 2006: Evolution of ozone, particulates, 

and aerosol direct radiative forcing in the vicinity of Houston using a fully 

coupled meteorology-chemistry-aerosol model, J. Geophys. Res., 111, D21305, 

doi:10.1029/2005JD006721.

Freitas, S. R., K. M. Longo, M. A. F. Silva Dias, P. L. Silva Dias, R. Chatfield, E. Prins, 

P. Artaxo, G. A. Grell and F. S. Recuero, 2005: Monitoring the transport of 

biomass burning emissions in South America. Environ. Fluid Mech., 5, 135-167, 

dio: 10.1007/s10652-005-0243-7.

Freitas, S. R., K. M. Longo, R. Chatfield, D. Latham, M. A. F. Silva Dias, E. Prins, 

J. C. Santos, R. Gielow and J. A. Carvalho, Jr., 2007: Including the sub-grid scale 
63

plume rise of vegetation fires in low resolution atmospheric transport models. 

Atmos. Chem. Phys., 7, 3385-3398.

Geiger, H., I. Barnes, T. Benter, and M. Spitteler, 2003: The tropospheric degradation of 

isoprene: An updated module for the Regional Atmospheric Chemistry 

Mechanism. Atmos. Environ., 37, 1503–1519.

Grell, G. A., R. Knoche, S. E. Peckham and S. A. McKeen, 2004: Online versus offline 

air quality modeling on cloud-resolving scales, Geophys. Res. Letters, 31,

L16117, doi:10.1029/2004GL020175

Grell, G. A., S. E. Peckham, R. Schmitz, S. A. McKeen, G. Frost, W. C. Skamarock and 

B. Eder, 2005: Fully coupled “online” chemistry within the WRF model, Atmos. 

Environ., 39, 6957–6975.

Grell, G. A. and A. Baklanov, 2011: Integrated modeling for forecasting weather and air 

quality: A call for fully coupled approaches. Atmos. Environ.,

doi:10.1016/j.atmosenv.2011.01.017.

Guenther, A., Zimmerman, P., Wildermuth, M., 1994: Natural volatile organic compound 

emission rate estimates for US woodland landscapes. Atmos. Environ., 28, 1197–

1210.

Gustafson Jr., W.I., E.G. Chapman, S.J. Ghan, and J.D. Fast, 2007: Impact on modeled 

cloud characteristics due to simplified treatment of uniform cloud condensation 

nuclei during NEAQS 2004. Geophys. Res. Lett., 34, L19809

Jones, A., Roberts, D.L., Slingo, A., 1994. A climate model study of indirect radiative 

forcing by anthropogenic sulphate aerosols. Nature, 370, 450–453.

Joseph, J.H., Wiscombe, W.J., Weinmann, J.A., 1976: The delta-Eddington 

approximation for radiative flux transfer. J. Atmos. Sci., 33, 2452–2458.

Kulmala, Laaksonen, Pirjola, 1998: Parameterization for sulphuric acid/water nucleation 

rates. J. of Geophys. Res., 103, 8301–8307.

Madronich, S., 1987: Photodissociation in the atmosphere, 1, actinic flux and the effects 

of ground reflections and clouds. J. of Geophys. Res., 92, 9740–9752.

Middleton, P., W. R. Stockwell, W. P. L. Carter, 1990: Aggregation and analysis 

ofvolatile organic compound emissions for regional modeling. Atmos. Environ.,

24A, 1107–1133.

Odum, J.R., T. Hoffmann, F. Bowman, D. Collins, R. C. Flagan, J. H. Seinfeld, 1996: 

Gas/particle partitioning and secondary organic aerosol yields. Environmental 

Science Technology, 30, 2580–2585.
64

Pleim, J.E., A. Venkatram, R. Yamartino, 1984: ADOM/ TADAP Model Development 

program, The Dry Deposition Module, 4., Ont. Min. of the Environment, Canada.

Ruggaber, A., R. Dlugi, T. Nakajima, 1994: Modeling of radiation quantities and 

photolysis frequencies in the troposphere. Journal of Atmospheric Chemistry, 18,

171–210.

Sander, R., A. Kerkweg, P. Jockel, and J. Lelieveld, 2005: Technical note: The new 

comprehensive atmospheric chemistry module MECCA. Atmos. Chem. Phys., 5,

445–450.

Sandu, A., and R. Sander., 2006: Technical note: Simulating chemical systems in 

Fortran90 and Matlab with the Kinetic PreProcessor KPP-2.1. 6, 187–195.

Sandu, A., D. Daescu, and G. R. Carmichael, 2003: Direct and Adjoint Sensitivity 

Analysis of Chemical Kinetic Systems with KPP: I – Theory and Software Tools. 

37, 5083–5096.

Saxena, P., A.B., Hudischewskyj, C. Seigneur, J. H. Seinfeld, 1986: A comparative study 

of equilibrium approaches to the chemical characterization of secondary aerosols. 

Atmos. Environ., 20, 1471–1483.

Schell, B., I.J. Ackermann, H. Hass, F. S. Binkowski, A. Ebel, 2001: Modeling the 

formation of secondary organic aerosol within a comprehensive air quality model 

system. J. Geophys. Res., 106, 28275–28293.

Simpson, D., A. Guenther, C. N. Hewitt, R. Steinbrecher, 1995: Biogenic emissions in 

Europe. 1. Estimates and uncertainties. J. Geophys. Res., 100D, 22875–22890.

Slingo, A., 1989: A GCM parameterization for the shortwave radiative properties of 

water clouds. J. Atmos. Sci., 46, 1419–1427.

Slinn, S.A., W.G.N. Slinn,, 1980: Prediction for particle deposition on natural waters. 

Atmos. Environ., 14, 1013–1016.

Stockwell, W.R., P. Middleton, J. S. Chang, X. Tang, 1990: The second-generation 

regional acid deposition model chemical mechanism for regional air quality 

modeling. J. Geophys. Res., 95, 16343–16367.

Stockwell, W. R., F. Kirchner, M. Kuhn, and S. Seefeld, 1997: A new mechanism for 

regional atmospheric chemistry modeling. 102, 25847–25879.

von Kuhlmann, R., M. G. Lawrence, P. J. Crutzen, and P. J. Rasch, 2003: A model for 

studies of tropospheric ozone and nonmethane hydrocarbons: Model description 

and ozone results. J. Geophys. Res., 108, doi: 10.1029/2002JD002893.
65

Wesley, M.L., 1989: Parameterization of surface resistance to gaseous dry deposition in 

regional numerical models. Atmos. Environ., 16, 1293–1304.

Whitby, E.R., P.H. McMurry, U. Shankar, F. S. Binkowski, 1991: Modal aerosol 

dynamics modeling, Rep. 600/3-91/020, Atmospheric Research and Exposure 

Assessment Laboratory, US Environmental Protection Agency, Research Triangle 

Park, NC, 1991 (Available as NTIS PB91- 1617291AS from National Technical 

Information Service, Springfield, VA).

Zaveri, RA, RC Easter, and AS Wexler. 2005. "A new method for multicomponent 

activity coefficients of electrolytes in aqueous atmospheric particles." J. Geophys. 

Res., 110, doi:10.1029/2004JD004681.

Zaveri, RC Easter, and LK Peters. 2005. "A computationally efficient multi-component 

equilibrium solver for aerosols (MESA)." J. Geophys. Res., 110:D24203, 

doi:10.1029/2004JD005618.

Zaveri, RA and LK Peters. 1999. "A new lumped structure photochemical mechanism for 

large-scale applications." J. Geophys. Res., 104:30,387-30,415.

Zaveri, RC Easter, JD Fast, and LK Peters. 2008. "Model for simulating aerosol 

interactions and chemistry (MOSAIC). J. Geophys. Res., 113, D13204, 

doi:10.1029/2007JD008792.
66

Appendix A : WRF/Chem Quick Start Guide

1. Compiling WRF/Chem and the emission converter

a. Download the WRF and then the WRF/Chem from the NCAR WEB site 

http://www.mmm.ucar.edu/wrf/users/download/get_sources.htm

b. Set the environmental variables

i. setenv WRF_CHEM 1

ii. setenv EM_CORE 1

iii. setenv FLEX_LIB_DIR /usr/lib (optional)

iv. setenv WRF_KPP 1 (optional)

v. setenv YACC ‘/usr/bin/yacc –d’ (optional)

c. Compile WRF/Chem using the command: 

compile em_real >& compile.log

d. Compile convert_emiss using the command: 

compile emi_conv >& emcompile.log 

2. Running WRF/Chem with the chemistry turned off

a. Decide which emissions preprocessor you will need to run (step 3 or step 

6, see also section 2 in the WRF/Chem User’s Guide). This is important, 

since step 6 requires the user to select a polar stereographic projection for 

the forecast domain.

b. Produce meteorological input files (wrfinput_d01 and wrfbdy_d01) for the 

domain of your choice (save these, they will be needed later). Use the 

WPS to do this. Be sure to choose the map projection based upon your 

desired emissions data set.

c. First run a meteorology-only simulation to verify the domain you want is 

functioning correctly, the code has compiled properly and no issues exist 

from the meteorological part of the model (set chem_opt=0 in the 

namelist).

i. Modify the namlist.input file (to fit your needs and be sure to set 

chem_opt=0)

ii. Run real.exe to produce a wrfinput and wrfbdy file

iii. Run wrf.exe to produce a forecast
67

iv. Check the resulting output files to verify your forecast results

3. Producing an emissions input file for your forecast domain using 

the NEI-05 emissions data set available from the ESRL FTP site 

(USA only)

a. Download the emiss_v03.F program and the emission data from the ESRL 

anonymous ftp site, or through your web browser by setting the URL to: 

ftp://aftp.fsl.noaa.gov/divisions/taq/emissions_data_2005

b. Modify the emiss_v03.F program file to correspond to your domain setup 

(see also section 2 of the user guide).

c. Compile emiss_v03.F

i. Using pgi, the suggested compile commands would be 

> pgf90 –w –byteswapio –Mfree –Mlfs –o emiss_v03.exe emiss_v03.F

d. Run emiss_v03.exe to produce an emissions file for a domain located over 

the contiguous states. Two binary data files will be produced called 

wrfem_00to12Z and wrfem_12to24Z. You can re-name them after the 

simulation run, or edit the emiss_v03.F to have the program produce a 

name that suits your liking.

e. Move the output files with the prefix “wrfem” from where you have run 

the program to WRFV3/run for use later on by the convert_emiss.exe 

program.

f. Go to the test/em_real directory and link the binary emissions files from 

(3e) to the files that are used by the WRF/Chem code

i. ln –sf wrfem_00to12Z wrfem_00to12z_d01

ii. ln –sf wrfem_12to24Z wrfem_12to24z_d01

g. Modify the namelist.input file to have the correct update time interval 

(auxinput5_interval_m, auxinput6_interval_m, etc.) for each auxiliary 

input stream as those output from the emiss_v03 program. Default output 

from emiss_v03 is 3600s. You should also set the correct emission input 

option (emiss_opt) for the anthropogenic emissions and your choice of 

chem_opt (see section 3.2 of the users guide). 

h. Run the convert_emiss program. Run this program with one processor 

only. It is acceptable if the program was compiled with the distributed 

memory option, but do not run it with more than 1 processor. Required 

input files are: wrfinput_d01 (2a), wrfem_00to12z_d01 and/or 

wrfem_12to24z_d01 (3f), and namelist.input. 
68

i. Check whether the program successfully produced the emissions input 

(wrfchemi_d01_xxz or wrfchemi_d<domain>_<date>). These are netcdf 

files, you can check them with ncview or ncbrowse.

4. Running WRF/Chem (multiple processors may be necessary due 

to large memory requirements, depending on your domain size)

a. Modify the namelist to suit your needs (check Chapter 3 of the user guide 

to select your namelist options, and chapter 4 as guidance for some typical 

setups)

b. Run real.exe to produce the wrfinput file that includes chemistry. Check 

the output using ncview or ncbrowse or similar programs.

c. Confirm that you have the emissions files for the simulation in the run 

directory. If necessary, rename your emissions files (or link them) to the 

files wrfchemi_00z_d01 and wrfchemi_12z_d01 (for 

io_style_emissions=1).

d. Run wrf.exe.

e. Inspect the model results to make sure your namelist.input settings were 

correct.

5. Output can be visualized with various packages, including ncview, 

NCL, RIP, ncbrowse, GRADS.

The output from the WRF/Chem model is a standard WRF output netCDF data 

file. Therefore, your favorite netCDF data file viewer can be used to examine 

results. For example, the ncview program will allow the users to quickly view the 

model output.
69

Additional Options

6. Using the global emissions data sets and/or wildfire emissions: 

When using one of these options you must set up your domain in 

lambert conformal or polar stereographic projection (required 

also for step 2a) If you want mix wildfire with emissions from step

3 you will also need to use one of these two projections.

a. Get the latest version of the prep_sources_chem_cptec tar files from the 

ESRL WEB site, including the documentation. 

ftp://aftp.fsl.noaa.gov/divisions/taq/global_emissions

b. Compile prep_sources_chem_cptec_wrf following the instructions in the 

Guide-Prep-Sources-Chem.pdf document and/or the WRF/Chem User’s 

Guide. 

c. Modify the prep_sources_chem.inp file for correct domain, and choice of 

input data.

d. Run prep_sources_chem to generate emissions data file.

e. From your WRF/Chem run directory, link output files (e.g., WRF-2008-

07-15 files) from prep_sources_chem_cptec_wrf

i. ln –sf Prep_sources_chem_cptec_wrf/WRF-2008-07-15-000000-

g1-gocartBG.bin wrf_gocart_backg

ii. ln –sf Prep_sources_chem_cptec_wrf/WRF-2008-07-15-000000-

g1-ab.bin emissopt3_d01

iii. ln –sf Prep_sources_chem_cptec_wrf/WRF-2008-07-15-000000-

g1-bb.bin emissfire_d01

f. Edit your namelist.input to reflect the switch to global emissions data and 

run convert_emiss.exe. Typically this will require a change to the update 

interval, the emissions option and possibly the vertical dimension for the 

emissions. For example, the global data is updated on a monthly basis and 

is surface data only. So for a typical simulation of a couple of days the 

emissions data will not be updated (auxiliary input port time intervals are 

set to a very large number of seconds) and the namelist modified for 

surface only emissions (kemit =1).
70

7. Special biogenic emissions files

There are four choices in the model for biogenic emissions.

 

a. The first option is not to use an additional biogenic emissions input data 

file (bio_emi_opt= 0). The user could add the biogenic emission to the 

anthropogenic emissions data if it is desired. Be sure to do this for every 

time period in the emissions input data and not just the first time.

b. For the second option (bio_emi_opt= 1), the model calculates the biogenic 

emissions online using the USGS landuse classification, which is 

generated by WRF WPS and available for the meteorological and 

chemical model. 

c. For the third option, the user specifies reference fields for the biogenic 

emissions, which are then modified online by a subroutine from the 

Biogenic Emissions Inventory System (BEIS) version 3.13. The land-use 

for this emissions inventory is obtained from the Biogenic Emissions 

Landuse Database version 3 (BELD3). The reference fields need to be 

provided as an additional input data file (wrfbiochemi_d01) for the 

real.exe program. 

d. The final option is the use of MEGAN, which again requires the 

preparation of reference fields (Appendix C of the users guide)

8. Nesting

a. Produce wrfinput files for both domains following Chapter 4 of WRF 

User’s Guide.

b. Like the single domain WRF/Chem simulations, it is probably best to 

make a nested domain weather forecast (Chapter 5 of WRF User’s Guide). 

c. Generate the emissions files for both domains using the emiss_v03.F 

program (section 3 of Quick Step Guide, Chapter 2 of the WRF/Chem 

User’s Guide). File names will need to differentiate between the domains 

(e.g., wrfem_00to12z_d01 and wrfem_00to12z_d02).

d. The convert_emiss.exe program is not currently designed to read the 

namelist.input file and generate the nested domain emissions files. 

Therefore, run the conversion program treating the nested domain as if it 

was actually the mother domain. 

i. Follow 3f – 3i to generate wrfchemi_d01 for the coarse domain, 

move it to a safe place so that they will not be over written.
71

ii. Change the namelist.input file. Moving the nested information to 

the mother domain column

iii. Move the met wrfinput_d02 to wrfinput_d01

iv. Link the output from emisv03 (for the nested domain) to the 

required filenames (see 3h)

v. Run convert_emiss.exe

vi. Move the resulting wrfchemi_d01 to wrfchemi_d02.

e. Modify the namelist.input file to set the chemistry namelist variables for 

the nested domain. 
72

9. Boundary conditions from larger scale models

At this time, tools are still under development to provide larger scale data from 

models other then WRF as boundary and initial conditions to the WRF/Chem 

simulations. One such utility program that is available from NOAA/ESRL is 

called wrfchembc. This program currently works with data from the MPIMATCH and RAQMS global chemistry models. See also section xx of the 

WRF/Chem Users Guide).

a. Download the latest version of the code from the ESRL ftp site. For 

example, the latest code might be named

ftp://aftp.fsl.noaa.gov/divisions/taq/broken_experimental/wrfchemv2.2

_bcond_code_09Apr07.tar

b. Modify the Makefile to use your desired compile options and compile 

to generate the wrfchembc executable

c. Modify the wrfchembc_namelist.input file to have the correct data 

directories and species added to the boundary data file (wrfbdy_d01).

d. Run the wrfchembc program after real.exe and before wrf.exe to add 

the global model data to the lateral boundary data file (wrfbdy_d01)

e. Before running wrf.exe, modify the namelist.input to set 

have_bcs_chem = .true.

f. Make a forecast using wrf.exe and inspect the model results to make 

sure your namelist.input settings were correct.
73

Appendix B : Using prep_chem_sources V1

Emission data generator package

• Fortran 90 code, easily configured.

• Gridded daily emissions fluxes (kg m-2) using several types of map projection 

(currently polar stereographic, lambert conformal, Gaussian, regular lat-lon) with 

flexible resolution. Also for non-structured grids (only polar stereographic).

• Easy inclusion of local updates for mega-cities, point and line sources, etc.

• Biomass burning / wildfires emissions: 

• Brazilian Biomass Burning Emission Model (Freitas et al., 2005; Longo et al., 

2007): plume rise mechanism, daily and model resolution.

• GFEDv2 (van der Werf et al., 2006): 8 days/monthly – 1x1 degree.

• Emission Factors from Andreae and Merlet, 2001.

• 110 chemical species, 6 types of biomes burned 

• Anthropogenic sources: 

• RETRO (0.50 x0.50, monthly), EDGAR (10 x 10, annually)

• Biogenic sources (GEIA inventory 1 x 1 degree)

• Charcoal production, waste burning, ... (Harvard)

• GOCART 1x1 degree emission for OC, BC, SO2, DMS as well as 3d background 

fields for model initialization of OH, O2H2, NO3.

• There is an option for WRF-CHEM output (binary format), including plume rise 

stuff, for RACM chemical mechanism and aerosols (OC, BC, PM10, PM2.5).

Contact: First try wrfchemhelp.gsd@noaa.gov for help. The developers of this 

preprocessor are Saulo R. Freitas (saulo.freitas@cptec.inpe.br) and Karla Longo 

(karla.longo@dge.inpe.br), web http://meioambiente.cptec.inpe.br/.

Description of the routines:

!!-Anthropogenic emissions

• retro_emissions.f90

• edgar_emissions.f90

• fwb_awb_emissions.f90

• cetesb_update.f90

• convert_retro_to_racm.f90

• extrapolacao_update.f90

• gocart_emissions.f90

• gocart_backgound.f90

--- Biomass burning emissions

• AeM_emission_factors.f90
74

• convert_AeM_to_racm.f90

• emission_fields.f90

• gfedv2_8days_emissions.f90

• gfedv2_8days_plumerise.f90

• gfedv2_emissions.f90

• 3bem_emissions.f90

• 3bem_plumerise.f90

• fire_properties.f90

--- Biogenic emissions:

• biogenic_emissions.f90

• convert_bioge_to_racm.f90

--- Main routines

• prep_chem_sources.f90

• prep_chem_sources_utils.f90

• chem1_list.f90

--- Auxiliary routines

• grid_dims_output.f90

• var_tables.f90

• io_params.f90

• vtab_fill.f90

• mem_grid.f90

• node_mod.f90

• rconstants.f90

• lllc_utils.f90

• adap_init_prepchem.f90

• grid_dims.f90

• gridset_prepchem.f90

• rams_grid.f90

• anheader.f90

Utils/ Misc.

• numerical

• I/O routines
75

Generating emissions input with Prep_chem_sources

Step 1: Compiling the emissions preprocessor

Library: libutils-2.0-opt.a

From the directory: Prep_sources_chem_cptec_wrf

cd utils/bin

set up the Fortran/C compilers (file: include.mk)

make –f Make_utils

cd ../bin

set up the Fortran/C compilers (file: include_prep_chem_src.mk)

make –f Makefile

(If you get an error message, try running “make” a second time.)

Step 2: Editing the input file (namelist):

prep_chem_sources.inp

RP_INPUT 

!---------------- grid_type of the grid output

 grid_type= 'polar', ! 'polar' = polar stereo. grid output

 ! 'gg' = gaussian grid output

 ! 'll' = lat/lon grid output

 ! 'lambert' = lambert conformal grid output

!---------------- date of emission 

 ihour=0,

 iday=14,

 imon=7,

 iyear=2008,

!---------------- select the sources datasets to be used: 1 = yes, 0 = not

 use_retro=1, 

 retro_data_dir=' /Emission_data/RETRO/anthro',

 use_edgar=1, 

 edgar_data_dir=' /Emission_data/EDGAR/anthro',

 

 use_gocart=1, 

 gocart_data_dir=' /Emission_data/GOCART/emissions',

 use_bioge=1, 

 bioge_data_dir=' /Emission_data/biogenic_emissions',
76

 

use_fwbawb=0,

fwbawb_data_dir=' /Emission_data/Emissions_Yevich_Logan',

use_gfedv2=0,

gfedv2_data_dir=' /Emission_data/GFEDv2-8days',

use_bbem=1,

use_bbem_plumerise=1,

!---------------- if the merging of gfedv2 with bbem is desired (=1, yes, 0 = no) 

 merge_GFEDv2_bbem =0,

!---------------- Fire product for 3BEM/3BEM-plumerise emission models

bbem_wfabba_data_dir=' /Emission_data/fires_data/WF_ABBA_v60/filt/f',

bbem_modis_data_dir =' /Emission_data/fires_data/MODIS/Fires.',

bbem_inpe_data_dir =' /Emission_data/fires_data/DSA/Focos',

bbem_extra_data_dir =' /Emission_data/fires_data/xxxxx,

!---------------- veg type data set (dir + prefix)

 veg_type_data_dir =' /surface_data/GL_IGBP_MODIS_INPE/MODIS', 

!---------------- carbon density data set (dir + prefix)

carbon_density_data_dir=' /surface_data/GL_OGE_INPE/OGE',

fuel_data_dir =' /surface_data/fuel/glc2000_fuel_load.nc', 

 

!---------------- gocart background

 use_gocart_bg=1, 

 gocart_bg_data_dir=' /Emission_data/GOCART',

!---------------- for grid type 'll' or 'gg' only

 grid_resolucao_lon=0.1, ! degree

 grid_resolucao_lat=0.1, ! degree

 nlat=320, ! if gg (only global grid)

 lon_beg = -115., ! (-180.:+180.) long-begin of the output file

 lat_beg = 40., ! ( -90.:+90. ) lat -begin of the output file

 delta_lon= -115., ! total long extension of the domain (360 for global)

 delta_lat= 40., ! total lat extension of the domain (180 for global)

!---------------- For regional grids (polar)

 NGRIDS = 1, ! Number of grids to run

 NNXP = 40,50,86,46, ! Number of x gridpoints

 NNYP = 40,50,74,46, ! Number of y gridpoints

 NXTNEST = 0,1,1,1, ! Grid number which is the next coarser grid

 DELTAX = 60000., ! X and Y grid spacing
77

 DELTAY = 60000., ! X and Y grid spacing

 

 ! Nest ratios between this grid and the next coarser grid.

 NSTRATX = 1,2,3,4, ! x-direction

 NSTRATY = 1,2,3,4 ! y-direction

! For polar, POLELAT/POLELON are the geographical coordinates 

! of the point of tangency between the projection plane and the 

! Earth surface. They will coincide with the grid center 

! (nnxp/2,nnyp/2) if they are equal to centlat and centlon

! For Lambert POLELAT/POLELON are the location of the grid center.

 POLELAT = 45., 

 POLELON = -115., 

 STDLAT1 = 45., ! If polar, unused

 STDLAT2 = 35., ! If lambert, standard latitudes of projection

 CENTLAT = 45., -23., 27.5, 27.5, ! center (Latitude, degrees) of each grid 

 CENTLON = -115., -46.,-80.5, -80.5, ! center (longitude, degrees) of each grid 

!---------------- project grid to lat/lon: 'YES' or 'NOT' (only set up for GrADS 

visualization)

 proj_to_ll='YES', 

 

!---------------- model output domain for each grid (only set up for GrADS visualization)

 lati = -90., -90., -90., 

 latf = +90., +90., +90., 

 loni = -180., -180., -180., 

 lonf = 180., 180., 180., 

!---------------- output file prefix (may include directory)

 chem_out_prefix = 'WRF-Tutorial', 

 chem_out_format = 'vfm', ! don't change this

!---------------- convert to WRF/CHEM (yes,not) – ONLY FOR RACM 

 convert_to_wrf = 'yes',

END

STEP 3: Run the program (> Prep_chem_sources.exe)

Output filenames will be, based upon the output names and the date/times shown above, 

the following files:
78

WRF-Tutorial-2008-07-14-120000-g1-ab.bin

WRF-Tutorial-2008-07-14-120000-g1-bb.bin

WRF-Tutorial-2008-07-14-120000-g1-gocartBG.bin

WRF-Tutorial-2008-07-14-120000-g1.ctl

WRF-Tutorial-2008-07-14-120000-g1.gra

WRF-Tutorial-2008-07-14-120000-g1.vfm

WRF-Tutorial-2008-07-14-120000-g1

The important binary data files from the list are the first three. These files are the binary 

intermediate files containing anthropogenic emissions, biomass burning emissions 

information and the GOCART aerosol scheme background fields, respectively. These 

files will need to be copied or linked to your WRF run directory (e.g., 

WRFV3/test/em_real) and then converted to WRF emissions input files. The 

anthropogenic emissions files linked to a file named emissopt3_d01, the biogenic 

emissions file linked to a file named emissfire_d01 and the GOCART aerosols linked to a 

file named wrf_gocart_backg.

ln -s WRF-Tutorial-2008-07-14-120000-g1-ab.bin ../WRFV3/test/em_real/emissopt3_d01

ln -s WRF-Tutorial-2008-07-14-120000-g1-bb.bin ../WRFV3/test/em_real/emissfire_d01 

ln -s WRF-Tutorial-2008-07-14-120000-g1-gocartBG.bin ../WRFV3/test/em_real/wrf_gocart_backg

To convert the global anthropogenic emissions to WRF chemistry emissions data files, 

emiss_opt needs to be set to a GOCART aerosol option (e.g., chem._opt=301 and 

emiss_opt=5). To use the NEI data set emiss_opt to another option like 

RADM2/SORGAM (chem._opt=2 and emiss_opt=3).

Description of the datasets in directory :

(1) /Emission_data

Biogenic Emissions from GEIA ( http://www.geiacenter.org/ )

biogenic_emissions 

• ACETONE_BIO.TXT

• C2H4_BIO.TXT

• C2H4_OCEANS.TXT

• C2H6_BIO.TXT

• C2H6_OCEANS.TXT

• C3H6_BIO.TXT

• C3H6_OCEANS.TXT

• C3H8_BIO.TXT

• C3H8_OCEANS.TXT
79

• CH3OH_BIO.TXT

• CO_BIO.TXT

• CO_OCEANS.TXT

• ISOPRENE_BIO.TXT

• NO_SOILS.TXT

• NVOC.TXT

• TERPENES_BIO.TXT

Anthropogenic emissions from “Emission Database for Global Atmospheric 

Research (EDGAR)” http://www.mnp.nl/edgar

Resolution 10 x 10, annually

EDGAR/anthro:

• edg_CH4_2000_total.txt

• edg_CO_2000_total.txt

• edg_CO2_2000_total.txt

• edg_N2O_2000_total.txt

• edg_NMVOC_2000_total.txt

• edg_NOX_2000_total.txt

• edg_SF6_2000_total.txt

• edg_SO2_2000_total.txt

• edg_SULF_2000_total.txt

Woodfuels burning (including both fuelwood and charcoal burning), residue and 

dung used as biofuels and burning of residues in the fields

• From: Yevich, R. and J.A. Logan, An assessment of biofuel use and burning of 

agricultural waste in the developing world, Global Biogeochemical Cycles, 2003

• Emissions_Yevich_Logan:

• BIF.1x1

• CMB.1x1

• WDF.1x1

Anthropogenic emissions from 

"REanalysis of the TROpospheric 

chemical composition over the past 40 years"

"!""#$%%&'"&()'*'+)(&,%-

RETRO/anthro:

• RETRO_edg_anthro_ACIDS_2000.0.5x0.5.txt

• RETRO_edg_anthro_ALCOHOLS_2000.0.5x0.5.txt

• RETRO_edg_anthro_BENZENE_2000.0.5x0.5.txt

• RETRO_edg_anthro_C2H2_2000.0.5x0.5.txt

• RETRO_edg_anthro_C2H4_2000.0.5x0.5.txt
80

• RETRO_edg_anthro_C2H6_2000.0.5x0.5.txt

• RETRO_edg_anthro_C3H6_2000.0.5x0.5.txt

• RETRO_edg_anthro_C3H8_2000.0.5x0.5.txt

• RETRO_edg_anthro_C4H10_2000.0.5x0.5.txt

• RETRO_edg_anthro_C5H12_2000.0.5x0.5.txt

• RETRO_edg_anthro_C6H14_PLUS_HIGHER_ALKANES_2000.0.5x0.5.txt

• RETRO_edg_anthro_CHLORINATED_HYDROCARBONS_2000.0.5x0.5.txt

• RETRO_edg_anthro_CO_2000.0.5x0.5.txt

• RETRO_edg_anthro_ESTERS_2000.0.5x0.5.txt

• RETRO_edg_anthro_ETHERS_2000.0.5x0.5.txt

• RETRO_edg_anthro_KETONES_2000.0.5x0.5.txt

• RETRO_edg_anthro_METHANAL_2000.0.5x0.5.txt

• RETRO_edg_anthro_NOX_2000.0.5x0.5.txt

• RETRO_edg_anthro_OTHER_ALKANALS_2000.0.5x0.5.txt

• RETRO_edg_anthro_OTHER_AROMATICS_2000.0.5x0.5.txt

• RETRO_edg_anthro_OTHER_VOC_2000.0.5x0.5.txt

• RETRO_edg_anthro_TOLUENE_2000.0.5x0.5.txt

• RETRO_edg_anthro_TRIMETHYLBENZENES_2000.0.5x0.5.txt

• RETRO_edg_anthro_XYLENE_2000.0.5x0.5.txt

• SantiagoInventory_CO.txt

/0(12++.34&*0*,.'10++0(*+.5&(1..

6782*29:+0+.(5."!'.;7<#(+#!'&0=.

=!'10=29.=(1#(+0"0(*.(>'&."!'.#2+".?@.:'2&+6

(http://retro.enes.org/)

Resolution: 0.50 x 0.50, monthly

• RETRO_edg_FIRES_2000_ACETONE_total.txt

• RETRO_edg_FIRES_2000_BC_total.txt

• RETRO_edg_FIRES_2000_BENZENE_total.txt

• RETRO_edg_FIRES_2000_CH2O_total.txt

• RETRO_edg_FIRES_2000_CH3CHO_total.txt

• RETRO_edg_FIRES_2000_CH3OH_total.txt

• RETRO_edg_FIRES_2000_CH4_total.txt

• RETRO_edg_FIRES_2000_CO2_total.txt

• RETRO_edg_FIRES_2000_CO_total.txt

• RETRO_edg_FIRES_2000_ETHANE_total.txt

• RETRO_edg_FIRES_2000_ETHENE_total.txt

• RETRO_edg_FIRES_2000_ETHYNE_total.txt

• RETRO_edg_FIRES_2000_H2_total.txt
81

• RETRO_edg_FIRES_2000_ISOPRENE_total.txt

• RETRO_edg_FIRES_2000_MONOTERPENES_total.txt

• RETRO_edg_FIRES_2000_N2O_total.txt

• RETRO_edg_FIRES_2000_NH3_total.txt

• RETRO_edg_FIRES_2000_NOX_total.txt

• RETRO_edg_FIRES_2000_OC_total.txt

• RETRO_edg_FIRES_2000_PM2_5_total.txt

• RETRO_edg_FIRES_2000_PROPANE_total.txt

• RETRO_edg_FIRES_2000_PROPENE_total.txt

• RETRO_edg_FIRES_2000_SO2_total.txt

• RETRO_edg_FIRES_2000_TC_total.txt

• RETRO_edg_FIRES_2000_TOLUENE_total.txt

• RETRO_edg_FIRES_2000_TPM_total.txt

• RETRO_edg_FIRES_2000_XYLENE_total.txt

GOCART emissions & background

Emissions for OC, BC and SO2

Resolution: 1x1 degree

• BC_anthro_noship_2006.nc

• OC_anthro_noship_2006.nc

• SO2_anthro_noship_2006.nc

DMS reference field

1x 1.25 degree (monthly)

• dms_1x1.25.nc

Background chemistry fields for GOCART runs

• GAO_source_3cl.nc includes NO3, H2O2 and OH 

• 3d field (1x1.25 degree, monthly)

• gmi_2006MM.nc

Biomass Burning emissions from " Global Fire Emissions Database"

http://daac.ornl.gov/VEGETATION/guides/global_fire_emissions_v2.1.html

Global data of biomass consumed, 1 x 1 degree and 8-day time resolution

From year 2001 to 2005.

GFEDv2-8days:

• C_2001_JD001.txt

• C_2001_JD009.txt

• C_2005_JD337.txt
82

• (...)

• C_2005_JD345.txt

• C_2005_JD353.txt

• C_2005_JD361.txt

(2) Fire emission formats used by the preprocessor

Biomass burning emissions from 

Brazilian Biomass Burning Emission Model

Emission Factors from Andreae and Merlet (2001).

(3) Fire location and properties from Wildfire 

Automated Biomass Burning Algorithm (WF_ABBA)

http://cimss.ssec.wisc.edu/goes/burn/abba.html. Only for Americas.

fires_data/WF_ABBA_v60/filt:

f20081940000.namer.v60.g10.filt

f20081940015.namer.v60.g12.filt

f20081940030.namer.v60.g10.filt

f20081940045.namer.v60.g12.filt

f20081940100.namer.v60.g10.filt

Format (ASCII, with header):

GOES-12 WF_ABBA (vs 6.0) Experimental Filtered Fire Product

Note: This product is preliminary and has not been quality controlled

Date: 2008194 Time: 1200 UTC Filtered file: 12 hours 24 files

Longitude Latitude T4(K) T11(K) Size(km2) Temp(K) Ecosystem Fire Flag

-104.34 57.78 309.2 277.8 -9.0000 -9. 21 3

-96.17 56.38 308.1 296.5 .1931 481. 21 0

-88.27 48.60 300.2 274.4 -9.0000 -9. 21 4

-89.00 47.95 300.6 275.3 -9.0000 -9. 23 5

-89.05 47.88 301.5 274.6 -9.0000 -9. 23 5

Change routine ‘read_abba’ in the 3bem_emissions.f90 in case of different format.

Fire location and properties from Brazilian Institute for Space Research (INPE, 

www.queimadas.cptec.inpe.br). 

Only for Central and South Americas.
83

(4) fires_data/AVHRR:

Focos20020901.txt

Focos20020902.txt

Focos20020903.txt

Focos20020904.txt

Focos20020905.txt

 

Format (ASCII, no header)

LAT LONG DATE TIME 

-10.4283 -51.8000 2002-09-05 200621 NOAA-12

-10.4267 -51.8610 2002-09-05 200621 NOAA-12

-10.4267 -51.8550 2002-09-05 200621 NOAA-12

Only the first 2 columns are actually used

Change routine ‘read_inpe’ in the 3bem_emissions.f90 in case of different format.

Fire location and properties from MODIS

 

(5) fires_data/MODIS:

Fires.20020901.txt

Fires.20020902.txt

Fires.20020903.txt

Fires.20020904.txt

Fires.20020905.txt

Format (ASCII, no header)

 Long Lat 

 -119.6177770642 37.7314428691 9 T h08v05

 -119.6094325631 37.7314428691 9 T h08v05

 -120.1852031388 36.9808173478 9 T h08v05

 -120.1768586377 36.9808173478 9 T h08v05

 -120.1685141366 36.9808173478 8 T h08v05

 -120.1601696355 36.9808173478 8 T h08v05

Only the first 2 columns are actually used

Change routine ‘read_modis’ in the 3bem_emissions.f90 in case of different format.

(6) Directory /surface_data

• GL_IGBP_MODIS_INPE : 1 km global vegetation map from MODIS/INPE used 

for determination of the type of vegetation burnt by fires
84

• GL_OGE_INPE : 0.5 degree global carbon in live vegetation used for estimate 

the aboveground biomass density of the vegetation burnt by fires.

• Fuel: glc2000_fuel_load.nc = > 1 x 1 km above ground biomass 
85

Appendix C: Using prep_chem_sources V1.1.1

Source Distribution Layout

The top level of the source code distribution contains the following subdirectories:

bin -- Scripts for maintenance, execution, compilation.

src -- Source codes

aux_src -- Auxiliary codes.

Third Party Software Requirements

JPEG distribution release 6b(libjpeg.a). You may download the software from 

http://www.hdfgroup.org/release4/obtain.html.

ZLIB 1.2.1(libz.a) or later distribution. You may download the software from the 

http://www.gzip.org/ site.

HDF4 4.2.5 (libmfhdf.a, libdf.a) or later distribution. You may download the software

from http://www.hdfgroup.org/release4/obtain.html.

NetCDF 4.0.1 (libnetcdf.a). You may download the software from 

http://www.unidata.ucar.edu/downloads/netcdf/netcdf-4_0_1/index.jsp

Configuring/Installing HDF4

When compiling PREP-CHEM-SRC codes on a Linux system using the PGI (Intel)

compiler, make sure the netCDF and HDF* library has been installed using the same PGI 

(Intel) compiler.

./configure --prefix=path_hdf4 \

--with-jpeg=path_jpeg \

 --with-zlib=path_zlib \

 --disable-netcdf

make && make install

Configuring/Installing the prep_chem_sources code

To compile the version 1.1.1 code one needs to change directory to the bin/build 

directory

cd bin/build

and then issue the make command with the compiler option (e.g., Intel, PGI) and the 

chemistry option (ie., RADM_WRF_FIM, RACM)

make OPT=opt.pgi CHEM=RACM
86

Using PREP-CHEM-SRC-1.1.1 with WRF-Chem V3.3

To run the prep_chem_sources executable one must first edit and the namelist input 

fields. Most of the settings are like the previous versions with the exception of the map 

projection settings. But fortunately the map projection settings correspond to the map 

projection settings used in the WPS input file namelist.wps. That is: 

NINEST=i_parent_start, 

NJNEST=j_parent_start, 

POLELAT=ref_lat, 

POLELON=ref_lon, 

STDLAT1=truelat1,

STDLAT2=truelat2. 

The prep_chem_sources settings CENTLAT and CENTLON are not used for WRF, but 

are most often the latitude and longitude of the central grid point for your domain.

After setting the prep_chem_sources namelist one can run the PREP-CHEM-SRC-1.1.1 

executable (e.g., prep_chem_sources_RADM_WRF_FIM.exe) for each day to produce 

the intermediate data files. These files are the anthropogenic and biogenic emissions file 

(ending with -ab.bin), the biomass burning emissions file (ending with -bb.bin), and the

GOCART background data (ending with -gocartBG.bin).

Once the prep_chem_sources executable has been run, the methodology for converting 

the binary intermediate files is the same as in previous versions. But please note that 

version 1.1.1 data files are not backward compatible with earlier versions. That is, use 

version 1.1.1 output files with the updated version 3.3 code.

The process to convert the binary intermediate files is outlined in section 3.2 of this 

user’s guide, but it will be quickly recapped here. For each day that you are going to use 

the global emissions data you need to run the convert_emissions program. This program 

will also need a wrfinput data file for the desired date as well. So to begin, one can run 

the real.exe with chem_opt=0 and start and end time set to your year, month, day and 

start hour generate a wrfinput_d01 file. Then the output from prep_chem_sources is 

linked to the WRF running directory (e.g., WRFV3/test/em_real) with commands similar 

to the following:

ln -sf WRF-2011-07-14-000000-g1-gocartBG.bin ../../WRFV3/test/em_real/wrf_gocart_backg

ln -sf WRF-2011-07-14-000000-g1-ab.bin ../../WRFV3/test/em_real/emissopt3_d01

ln -sf WRF-2011-07-14-000000-g1-bb.bin ../../WRFV3/test/em_real/emissfire_d01

And then before one can run the convert emissions program convert_emiss 

(convert_emiss.exe) the namelist.input settings for the chemistry needs to be turned back 

on (e.g., chem_opt=301). Be sure to double check your other namelist settings as well or 

you might not get the desired data files.
87

&time_control

io_form_auxinput5 = 2

io_form_auxinput7 = 2

io_form_auxinput8 = 2

auxinput5_interval_m = 1440,1440

auxinput7_interval_m = 1440,1440

auxinput8_interval_m = 1440,1440

frames_per_auxinput7 = 1,1

frames_per_auxinput7 = 1,1

frames_per_auxinput8 = 1,1

/

&chem

kemit = 1,

io_style_emissions = 2,

emiss_inpt_opt = 1, 1,

emiss_opt = 5, 5,

biomass_burn_opt = 1, 1,

plumerisefire_frq = 120, 120

And when complete and the data files are verified you can rename output to include the 

date:

mv wrfchemi_d01 wrfchemi_d01_{$year}-$mo-${da}_00:00:00

mv wrffirechemi_d01 wrffirechemi_d01_{$year}-$mo-${da}_00:00:00

mv wrfchemi_gocart_bg_d01 wrfchemi_gocart_bg_d01_{$year}-$mo-${da}_00:00:00
88

Appendix D: Using MEGAN with WRF/Chem

Introduction

The University Corporation for Atmospheric Research (UCAR) provides Fortran source 

code files to create MEGAN (Model of Emissions and Gases from Nature) biogenic 

emission data for importing into WRF-Chem. MEGAN is a global emissions dataset, at 

one kilometer spatial resolution, compiled for 2003. A users guide and descriptions of the 

data set are provided at http://bai.acd.ucar.edu/Megan/.

The MEGAN toolkit for WRF-Chem preprocesses the MEGAN data set, and creates 

wrfbiochem_d0x (x = domain number) input files for ingestion into WRF-Chem at model 

run time.

The following instructions assume that real.exe and wrf.exe have been compiled 

normally and that an initial meteorology only wrfinput_d0x file(s) have been created post 

WPS. These instructions also assume you are using the provided 2003 MEGAN data 

files. The tar file from UCAR includes a helpful readme file which expands on the 

instructions below.

Compiling

1) Download the MEGAN preprocessor Fortran source code and data set from 

http://www.acd.ucar.edu/wrf-chem/. You will be asked to register some contact details 

– subsequently click the “bio-emiss” button on the user registration page to download 

the MEGAN Fortran source code, makefile and MEGAN data input files. The files can 

be downloaded to a directory of your choice – note that the process of using MEGAN 

needs to access the WRF run directory and the wrfinput_d01 file during MEGAN data 

preprocessing.

2) un-tar the files downloaded in the MEGAN directory by issuing the commands:

>tar –xvf bio_emiss.tar

This creates two other tar files, un-compress and un-tar these files:

>tar –xvf megan_bio_emiss.tar

>tar –zxvf megan.data.tar.gz

3) Ensure the correct environment variables for your Fortran compiler and netCDF 

libraries are set correctly by editing the make_util script file if necessary.

4) Compile the MEGAN source code in the MEGAN directory by issuing the command:

>make_util megan_bio_emiss

This will create the executable file – megan_bio_emiss
89

Preprocessing

5) Run real.exe for meteorology only to produce files that will contain WRF headers. 

This step is similar for all emissions input creation. This step will create a file named 

wrfinput_d01 that does not contain any input for MEGAN. The following MEGAN 

pre-processing steps utilize the wrfinput_d01for geographical and temporal parameters 

necessary for the production of wrfbiochem_d0x files.

6) Adjust the text file; megan_bio_emiss.inp, for:

1. domains – the number of domains used in your WRF model,

2. start_lai_month - this should be set as the month before the month in which your 

WRF run is set to start,

3. end_lai_month – this should be set as the month in which your WRF run is set to 

end,

4. wrf_dir – the directory where the associated wrfinput_d01 resides, and

5. megan_dir – the directory in which the MEGAN data files exist. 

Note – lai (or leaf area index) parameter data files are provided in the MEGAN 

preprocessing download – one file exists for each month.

7) Create MEGAN bioegenic emissions data for your domain and time frame by issuing 

the command:

>megan_bio_emiss < megan_bio_emiss.inp > megan_bio_emiss.log

Note – this serial process can take some time depending on a range of factors (perhaps 

10 minutes for a lambert conformal projection).

Check megan_bio_emiss.log for any errors or problems.

8) The files created are wrfbiochemi_d0x files which should be copied (or linked) into 

the associated WRF run directory. 

You might review the wrfbiochemi_d0x files with ncview to ensure the correct 

geographical bounds have been applied and that the MEGAN data sets are included.

Note – the MEGAN data elements in the wrfbiochemi_d0x files are:

• MSEBIO_ISOP amount of isoprene (mol km-2 hr-1),

• PFTP_BT percentage of broad leaf,

• PFTP_NT percentage of needle leaf,

• PFTP_SB percentage of shrubs,

• PFTP_HB percentage of herbaceous biota,

• MLAI monthly leaf area index,

• MTSA monthly air temperature (K), and

• MSWDOWN monthly download short wave radiation (W m-2).
90

Running WRF-Chem with MEGAN

9) To create the WRF-Chem boundary and combined emission files, run real.exe like 

normal in a directory that contains the files wrfbiochemi_d0x (from step 8), but with 

bio_emiss_opt=3. With bio_emiss_opt=3, real.exe will create wrfinput_d01

containing inputs required for running MEGAN online. 

Note - wrfbiochemi_d01 and wrfinput_d01 will also include variables for running 

BEIS3.13, but the values for BEIS variables will all be all zero; you’ll need to create a 

different wrfbiochemi_d01 file if you want to use bio_emiss_opt=2. 

10) Now, you can run wrf.exe with MEGAN emissions calculated online using 

bio_emiss_opt=3.

Note – the process of using wrf_biochemi_d0x files in WRF-Chem model runs will 

depend on how many WRF-Chem domains you have in mind. For a single domain one 

wrf_biochemi_d01 file will be produced. Using more than one domain (therefore 

wrf_biochemi_d0x files, where x = 1, 2 to the maximum domain number) involves 

careful application of model processes as documented elsewhere in this manual. It can 

be complex using MEGAN data files for 2 way or 1 way (n-down or 2 way with 

feedback to the coarse domain switched off) nesting WRF-Chem processes. However, 

assuming the wrfinput_d0x files are setup correctly before preprocessing MEGAN 

data files, the wrf_biochemi_d0x files will match the geographical extent of the 

wrfinput_d0x files. There is slightly less complicated than the process needed to 

compile the baseline wrfchemi_d0x files. 

Note – when using MEGAN the bioemdt parameter of the &chem namelist.input 

section must be set to the same number of minutes as the model time step seconds (for 

each domain).
91

Appendix E: Using MOZART with WRF/Chem

Introduction

The National Center for Atmospheric Research (NCAR) provides Fortran source code to 

prepare additional data files to support the MOZART (Model for OZone And Related 

chemical Tracers) gas phase chemistry scheme in WRF-Chem. These files are needed to 

update WRF-Chem parameters suitable for MOZART. MOZART gas phase chemistry 

can be combined with GOCART aerosol treatment – known as MOZCART in this 

manual.

When setting up WRF-Chem to use MOZART/MOZCART the user should select the 

FTUV photolysis option (phot_opt=3) in the namelist.input file. NCAR advises the 

FTUV code has been updated to read in O3 and O2 climatological atmospheric column 

values rather than fixed values. This requires an additional input file for each domain –

exo_coldens_d<nn> (nn = domain number). The exo_colden utility (for single CPU) 

reads WRF and MOZART input files and produces netCDF files for each WRF domain.

When using dry deposition in WRF-Chem (gas_drydep_opt=1) combined with 

MOZART (and MOZCART) scheme in WRF-Chem, NCAR advises an additional file 

for each domain is required – wrf_season_wes_usgs_d<nn> (nn = domain number). The 

wesely utility (for single CPU) reads WRF and MOZART input files and produces 

netCDF files for each WRF domain.

The tar file from NCAR includes a helpful readme file which expands on the instructions 

below. NCAR provides some information at http://www.acd.ucar.edu/wrfchem/MOZCART_UsersGuide.pdf which provides a table mapping MOZART emissions 

species to EPA/NEI species as well as contact details at NCAR for further support.

Compiling

1) Download the MOZART preprocessor Fortran source code from 

http://www.acd.ucar.edu/wrf-chem/. You will be asked to register some contact details 

– subsequently click the “preprocessor” button on the user registration page to 

download the MOZART Fortran source code, makefile and MOZART data input files. 

The files can be downloaded to a directory of your choice – note that the process of 

using MOZART needs to access the WRF run directory and the wrfinput_d01 file 

during MOZART data preprocessing.

2) Un-tar the files downloaded in a directory of your choice by issuing the commands:

>tar –xvf wes_coldens.tar

3) Compile the MOZART source code by issuing the commands:

>make_util wesely

>make_util exo_coldens
92

This will create the executable files – wesely and exo_coldens.

Preprocessing

5) The wesely program reads WRF wrfinput_d<nn> files and a MOZART data file 

containing dry emission parameters - season_wes_usgs.nc (found in the tar file above). 

Adjust the text file wesely.inp for:

1. domains – the number of domains used in your WRF model,

2. pft_flnm – season_wes_usgs.nc,

3. wrf_dir – the directory where the associated wrfinput_d<nn> resides, and

4. pft_dir – the directory in which the MOZART data file exists. 

6) To create the wesely data files for MOZART, issue the command:

>wesely < wesely.inp > wesely.out

This creates a file for each domain wrf_season_wes_usgs_d<nn> which should be 

copied to the WRF run directory for use in WRF-Chem MOZART/MOZCART model 

runs.

7) The exo_colden program reads WRF wrfinput_d<nn> files and a MOZART data file 

exo_coldens.nc (found in the tar file above). Adjust the text file exo_coldens.inp for:

1. domains – the number of domains used in your WRF model,

2. exo_flnm – exo_coldens.nc,

3. wrf_dir – the directory where the associated wrfinput_d<nn> resides, and

4. exo_dir – the directory in which the MOZART data file exists. 

8) To create the exo_coldens data files for MOZART, issue the command:

>exo_coldens < exo_coldens.inp > exo_coldens.out

This creates a file for each domain exo_coldens_d<nn> which should be copied to the 

WRF run directory for use in WRF-Chem MOZART/MOZCART model runs.

Running WRF-Chem with MOZART (MOZCART)

9) Selecting the MOZART/MOZCART settings in the namelist.input of the WRF-Chem 

run directory (chem_opt and emiss_opt) will switch on the ingestion of the files noted 

above into WRF-Chem.
93

Appendix F: Using the Lightning-NOx 

Parameterization

Instructions for using the Lightning-NOx paramterization

The WRF/Chem model is has a parameterization able to provide an estimate of 

the nitrogen oxides production from lightning (LNOx). The code for this production is 

called from the emissions_driver.F routine and model code files related LNOx are 

module_lightning_driver.F and module_ltng_crm.F. The LNOx parameterization is 

appropriate only for cloud resolving scales (and not parameterized convection). There 

are several options for running the LNOx parameterization that can be designated in the 

namelist.input file under the chemistry namelist. These options are as follows:

Variable Names Default Value Description and Options 

lightning (max_dom) = 0, 0, 0, Denotes LNOx parameterization; 

0 = no lightning; 1 = DeCaria 

scheme; 2 = Barthe scheme (not 

available yet). Set to 1 to turn on 

LNOx parameterization.

lightning_time_step (max_dom) = 0, 0, 0, Time interval (seconds) for 

calling LNOx parameterization. 

Usually set to 60 seconds.

lightning_start_seconds (max_dom) = 0, 0, 0, Start time (seconds) for calling 

LNOx parameterization. Allow 

10 minutes or so for model to 

spin up before calling LNOx.

temp_upper (max_dom) = -45., -45., -45., Temperature (degC) of upper 

peak of LNOx source for the 

vertical distribution of NO. 

temp_lower (max_dom) = -15., -15., -15., Temperature (degC) of lower 

peak of LNOx source for the 

vertical distribution of NO.

N_IC (max_dom) = 0, 0, 0, Moles of NO produced per 

intracloud (IC) lightning flash. 

Recommendations are 300-500 

moles NO / flash.

N_CG (max_dom) = 0, 0, 0, Moles of NO produced per 

intracloud (IC) lightning flash. 

Recommendations are 300-500 

moles NO / flash.

passive_ltng (max_dom) = 1, 1, 1, Switch to include a passive NO 

tracer. The amount of NO 
94

produced is equal to the source 

from LNOx. The tracer is 

transported but does not undergo 

chemical reactions. The 

chem._tracer_opt (in the 

&dynamics section) must be set 

to 3 to allow this option to work.

flashrate_factor (max_dom) = 1.0, 1.0, 1.0, Factor to adjust the number of 

flashes. This factor is used for 

multiple nests (that include 

LNOx production) and allows 

similar values to be predicted in 

the inner and outer nests. One 

can estimate a flashrate_factor 

based on the ratio of the nests’ 

horizontal resolution: 

flashrate_factor = dx_inner / 

dx_outer. For example, if 

dx_inner = 1 km and dx_outer = 

3 km, then flashrate_factor = 

0.33 for the inner domain and 1.0 

for the outer domain.

flashrate_method (max_dom) = 1, 1, 1, Method for predicting the 

number of flash rates. Method 1 

= maximum vertical velocity 

(Price and Rind, 1992); Method 2 

= updraft volume for w>5m/s 

(Deierling and Petersen, 2008).

iccg_method (max_dom) = 1, 1, 1, Method for partitioning between 

intracloud and cloud-to-ground 

lightning flashes. Method 1=

prescribe CG/IC ratio to 0.1; 

Method 2 = a rough assignment 

to the climatology of Boccippio

et al (2001).

cellcount_method (max_dom) = 1, 1, 1, Method for counting storm cells. 

Method 1 = model determines 

either method 2 or 3; Method 2 =

cell count is tile-wide = good for 

big domains where multiple 

storms will occur; Method 3 =

cell count is domain-wide = good 

for small domains (<150 km) 

where only one storm is 

occurring.