MCIP version 5.0 Release (August 2019)

Announcing the release of MCIP Version 5.0 (August 2019)

The Meteorology-Chemistry Interface Processor (MCIP) ingests output from the Weather Research and Forecasting (WRF) Model to prepare the meteorology files that are used within the CMAQ Modeling System.

The MCIP code is updated to version 5.0. This is a major update to MCIP. Changes to MCIPv5.0 were made by Tanya Spero (U.S. EPA).

MCIPv5.0 accompanies CMAQv5.3. If you are using CMAQv5.3, you should upgrade to use MCIPv5.0.
MCIPv5.0 requires I/O API version 3.1 or greater to support error-checking within the I/O API.
MCIPv5.0 requires the netCDF F90 module (rather than the F77 include).

The following is a summary of the changes in MCIPv5.0:

  • Enabled support for WRFv4.0+.
  • Enabled support for WRF using the hybrid vertical coordinate.
  • Removed support for using files from MM5.
  • Overhauled all I/O routines to make internal arrays more generalized to support additional output formats.
  • Removed layer collapsing.
  • Added an option to write MCIP output in netCDF.
  • Updated the units of most output fields to conform to CF compliance.
  • Corrected bug in setting land use category names in MCIP for WRF land use classification “USGS24 + lakes”.
  • Changed fill value for convective rainfall with “no cumulus parameterization” from -1 to a large negative number to prevent inadvertent use in CCTM and post-processing.
  • Corrected error in computing precipitation amounts when the tipping bucket is used and less than 0.5 mm of precipitation accumulated during the same hour that the bucket tips; correct erroneous precipitation spikes.
  • Added 7 new 2D variables to the output if the Pleim-Xiu land-surface model is run in WRFv4.1+. These variables can be used to improve the simulation of dust in CCTM.
  • Changed the default output wind components to the “face” points (UWIND and VWINDC) from the “dot” points (UWIND and VWIND). The “face” points are on the Arakawa C staggered grid that is used by both WRF and CCTM.
  • The “dot” points are on the Arakawa B staggered grid used by MM5.

With MCIPv5.0, the following remain deprecated:

  • Including “SOIM1”, “SOIM2”, “SOIT1”, and “SOIT2” in METCRO2D.
    Those fields are now in a separate file that includes all soil layers and
    their associated depths (SOI_CRO).
  • Including “LUFRAC_xx” in GRIDCRO2D. Those fields are now in a separate
    file that includes each fractional land use classification (LUFRAC_CRO).

With MCIPv5.0, the following output variables in METCRO2D remain deprecated:

  • 2-D cloud fraction (CFRAC)
  • cloud top (CLDT)
  • cloud bottom (CLDB)
  • liquid water content (WBAR)
    (They will be removed from METCRO2D in a forthcoming release of MCIP.)

MCIP can be cited with the following reference:

Otte, T. L., and J. E. Pleim, 2010. The Meteorology-Chemistry Interface Processor (MCIP) for the CMAQ modeling system: updates through MCIPv3.4.1. Geoscientific Model Development, 3, 243-256.

DOI for CMAQv5.3: (which includes MCIPv5.0).

Background on MCIP and other useful information about the CMAQ system can be found online at

Inquiries related to potential bugs in MCIPv5.0 or questions related to proper use of the code should be submitted to the MCIP Category in the Forum hosted by the CMAS Center:

Users are encouraged to read the Frequently Asked Questions (FAQ) file. Users should consult the FAQ and other issues raised within the Forum before submitting new inquiries.

Dear @lizadams @cjcoats @tlspero

Can I use MCIPv5.0 to process outputs of WRF4.0+? Also, can I use the output of MCIPv5.0 in CMAQ-5.2.1?

Thanks in anticipation and for your usual help.



Yes, MCIPv5.0 can process output from WRFv4.0+.

With the exception of data created for fractional land use, I believe you can use output from MCIPv5.0 in CMAQv5.2.1…but I would not recommend that. The fractional land use data are processed only in the output file, LUFRAC_CRO, in MCIPv5.0, and CMAQv5.2.1 is not set up to read that file. The workaround is to use GRIDCRO2D from a run with an older version of MCIP to get the fractional land use data. I think you can substitute that GRIDCRO2D for the file created by MCIPv5.0. GRIDCRO2D is time-invariant, so you only need one time step of the data to work with your CMAQ run.

Hope this helps.


Dear @tlspero,

Thanks a lot for your comprehensive response. I have been using the same method you mentioned to generate dust emission from land use data. Your response really helps.

Kindly respond to my issue on MCIP5.0 giving error on the thread.

Thanks and best regards,



Please see my reply in that thread.


What setting do we use to have MCIP output files to be daily rather than being one single file for the duration specified? I am thinking that having output files for each day of the processing period will make it easy to selectively simulate any duration of a year in CMAQ? I just wanted to be sure that once MCIP is run for a full year, I can use any part of it for simulation in CMAQ.

Why? The direct access nature of the I/O API means that there are no performance penalties for trying to access one day’s meteorology even from the middle of a three-decade-long (10957-day) file.
One of the original requirements for this project is that models should be able to run efficiently as single model-runs for whatever scenario is desired – week, month, year, …

Dear @tlspero @lizadams

When I commented out config_cmaq.csh in the MCIP script, I got this new error:

Mon Sep 2 15:20:03 CST 2019

 This program uses the EPA-AREAL/MCNC-EnvPgms/BAMS Models-3      
 I/O Applications Programming Interface, [I/O API] which is      
 built on top of the netCDF I/O library (Copyright 1993, 1996    
 University Corporation for Atmospheric Research/Unidata         
 Program) and the PVM parallel-programming library (from         
 Oak Ridge National Laboratory).                                 
 Copyright (C) 1992-2002 MCNC,                                   
 (C) 1992-2013 Carlie J. Coats, Jr.,                             
 (C) 2003-2012 Baron Advanced Meteorological Systems, LLC, and   
 (C) 2014-2016 UNC Institute for the Environment.                
 Released under the GNU LGPL  License, version 2.1.  See URL     
 for conditions of use.                                          
 ioapi-3.2: $Id: init3.F90 98 2018-04-05 14:35:07Z coats $
 Version with PARMS3.EXT/PARAMETER::MXVARS3= 2048
 netCDF version 4.1.3 of Apr 30 2019 21:29:51 $



                       MCIP V5.0 FROZEN 07/15/2019


*** NAMELIST FILE NAME = namelist.mcip
*** NAMELIST = filenames
*** IOSTAT = 5010

 *** ERROR ABORT in subroutine READNML

Error running mcip

Kindly help me out.

Thanks a lot.


This looks as though there is a formatting error in your namelist (maybe a misplaced comma, maybe something else).
It may or may not (depending on the vendor) be helpful to look up your Fortran vendor’s list of run-time error numbers to see whether it tells you what kind of error. Otherwise, check (painfully) character-by-character against a known-good namelist to see if you can find what is wrong.
Or maybe change compiler-vendor – some of them take more idiosyncratic interpretation of the Fortran language-standard than do others ;-(

Dear @cjcoats,

Attached are the mcip script and the namelist file generated by the script.



run_mcip_36km.csh (20.4 KB) namelist.mcip.txt (672 Bytes)

Very probably the problem is the comma at the end of line 4: your compiler-vendor is probably mis-interpreting the term value separator in the Fortran Language Standard (at section 10.10.1(4) ;-(

Dear @cjcoats

What do I do to resolve this as the namelist was created while running the mcip script and I wasn’t the one that created it?



vi or emacs or your favorite text-editor :slight_smile:

I didn’t get you clearly, please.

I will do some testing of MCIPv5.0 and see if I can reproduce your problem.
Can you tell me what compiler you are using?

Dear @lizadams,

I am using gfortran (gcc) compiler and it works fine with mcip4.5 but you know mcip4.5 has issues in processing wrf4.0+.

Thanks in anticipation. It’s been really frustrating!


I doubt if the problem has to be the comma at the end of line 4. There’s always comma at that place even in mcip4.5 namelist file and it works fine.


Hello! I had the same issue. Could you try to change this line??

  • set IfGeo = “T” --> try using .TRUE.

In my case, I’m still having issues, but the log file has changed, and it seems that the script ran a little bit further. I noticed that the default is “F” (and when testing the default, I got the same error when using .TRUE.), but apparently it does not work with “T” (no idea why).
Well, since I’m new on this and still having problems, I dont know if it helps, but maybe you could try.

Please, let me know if that worked for you.

Good luck!

1 Like

Dear @thayna.gomes,

Thanks a lot. It has run successfully after making the changes you suggested. Have you been able to resolve your issue too? Let me know if I can be of help, please.

Thanks and best regards.


1 Like


I’m glad that it worked!

In my case, I didn’t solve the issue so far. I’ll post it on the forum hoping to get some help.