Is it possible to change VGTYP in CMAQ output?

Hello everyone,

I’m working with CMAQ versions 5.3.2 and 5.4, utilizing WRF meteorology data as input. However, I’ve encountered an issue using the CMAQ output as input for another program (outside CMAQ). The problem in this external programme lies with the VGTYP variable, which is assigned a value of -9999 in CMAQ outputs instead of the expected range of 1 to 8. After going through forum discussions, I suspect that this discrepancy is due to MCIP not recognizing the coordinate system of WRF, resulting in assignment of VGTYP as -9999 (hybrid coordinate)

I would greatly appreciate any help finding a solution that would allow me to obtain CMAQ outputs with valid VGTYP values ranging from 1 to 8. I’m willing to start the process from the meteorology run.

Thank you in advance for your help!

Hi Ummugulsum,

starting in WRFv4.0, the use of the hybrid vertical coordinate became default. Since it is not possible to fully describe this vertical coordinate system (which is defined using two sets of layer-specific parameters) with the VGTYP and VGLVLS attributes used by I/O API, a decision was made starting in MCIP5.0 and CMAQv5.3 to indicate the use of the hybrid vertical coordinate system in WRF by defining a token VGTYP value of -9999 throughout the CMAQ framework (MCIP, ICON/BCON, CCTM).

It is important to realize that - by the very nature of the definition of hybrid vertical coordinate system - the values stored in the VGLVLS array do not provide sufficient information to calculate layer specific pressure from surface pressure and VGTOP (like it is possible to do for other, non-hybrid vertical coordinate systems).

While I don’t know the details of why your downstream program is looking for VGTYP information, if it does so to calculate layer pressure from VGLVLS, VGTOP, and surface pressure, this approach will not work for the WRF hybrid vertical coordinate system, so making code changes to CCTM to write out a different VGTYP (or changing the VGTYP attribute of CCTM output files with a tool like m3edhdr) is not a good idea. The proper solution would be to either update your downstream program to read pressure (and/or height) information from MCIP rather than trying to estimate it from VGLVLS, VGTOP and surface pressure, or to change your WRF setup (starting with WPS) to not use hybrid vertical coordinates. The former approach likely would be preferable.

Also flagging this for @tlspero and @fsidi for additional thoughts they may have.

Dear Christian,

Thank you for your prompt response! Your answer has confirmed my suspicions, and I now clearly understand the situation. My plan is, beginning with the first proposed solution and have the second one in mind as a backup plan for the worst-case scenario. I appreciate your help.