<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7652.24">
<TITLE>RE: GRIB2 updates for ungrib.exe</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->
<BR>
<BR>
<P><FONT SIZE=2>I agree with the additional changes for SOILHGT. I am cc:ing wrf-users and Kip Smith.<BR>
<BR>
-Eric<BR>
<BR>
-----Original Message-----<BR>
From: wrfhelp [<A HREF="mailto:wrfhelp@ucar.edu">mailto:wrfhelp@ucar.edu</A>]<BR>
Sent: Thu 9/27/2007 7:10 PM<BR>
To: Kemp, Eric M.<BR>
Subject: Re: GRIB2 updates for ungrib.exe<BR>
<BR>
Thank you for your report. We have made the necessary change in our <BR>
repository, and will<BR>
soon update the WPS tar file.<BR>
<BR>
We noticed that GRIB code for SOILHGT is not quiet correct in your <BR>
Vtable. Here is a correct line:<BR>
<BR>
7 | 1 | 0 | | SOILHGT | m | Terrain field of <BR>
source analysis | 2 | 0 | 7 | 1 |<BR>
<BR>
See if you agree with it.<BR>
<BR>
wrfhelp<BR>
<BR>
On Sep 26, 2007, at 2:43 PM, Kemp, Eric M. wrote:<BR>
<BR>
><BR>
> Dear wrf-users/wrfhelp:<BR>
><BR>
> Following up on my e-mail last week: I have attempted to process NAM<BR>
> GRIB2 files with ungrib.exe to initialize WRF-ARW. Originally I was<BR>
> unable to process the SKINTEMP variable using the WPS VTABLE.NAM file.<BR>
> Kip Smith of NOAA/ARL was kind enough to send me a revised VTABLE<BR>
> (see attached) that changes the GRIB2 attributes for SEAICE, LANDSEA,<BR>
> SOILHGT, SKINTEMP, SNOW, CANWAT, SOIL_CAT, and VEGCAT. Kip's new<BR>
> settings agree with Section 4 of the NCEP GRIB2 documentation:<BR>
><BR>
> <A HREF="http://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc.shtml">http://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc.shtml</A><BR>
><BR>
> However, there is still one problem with the ungrib.exe program. <BR>
> The NAM 218<BR>
> GRIB2 files from NCEP include soil temperature valid at 300 cm, and<BR>
> ungrib.exe incorrectly uses this data in place of 0-10 cm soil <BR>
> temperature.<BR>
><BR>
> To fix this, I've added a cycle statement in subroutine rd_grib2,<BR>
> WPS/ungrib/src/rd_grib2.F90, near line 507:<BR>
><BR>
> if (j .gt. maxvar ) then<BR>
> write(6,'(a,i6,a,i6,a)') 'Subsoil level ',<BR>
> & gfld%ipdtmpl(12),' to ',gfld%ipdtmpl(15),<BR>
> & ' in the GRIB2 file, was not found in the Vtable'<BR>
><BR>
> cycle ! EMK bug fix, avoid saving data that is <BR>
> not in Vtable<BR>
> endif<BR>
><BR>
> What happens is that ungrib.exe identifies the 300 cm soil <BR>
> temperature as<BR>
> 0-10 cm soil temperature based on the GRIB2 discipline, category, <BR>
> parameter,<BR>
> and elevation numbers. Subroutine rd_grib2 then compares the soil <BR>
> depths<BR>
> with those in VTABLE, and prints out a warning message when the depths<BR>
> fail to match. However, without a cycle statement, the program<BR>
> continues on and ungribs the 300 cm soil temperature instead of<BR>
> skipping it.<BR>
><BR>
> I believe that other "mix-ups" can happen without this cycle <BR>
> statement,<BR>
> and I recommend adding it to the official ungrib program.<BR>
><BR>
> -Eric<BR>
><BR>
> Eric M. Kemp<BR>
> Meteorologist<BR>
> Northrop Grumman Information Technology<BR>
> Intelligence Group (TASC)<BR>
> 4801 Stonecroft Boulevard<BR>
> Chantilly, VA 20151<BR>
> (703) 633-8300 x7078 (lab)<BR>
> (703) 633-8300 x8278 (office)<BR>
> (703) 449-3400 (fax)<BR>
> eric.kemp@ngc.com<BR>
><BR>
><BR>
><BR>
> <Vtable.NAM218_test><BR>
<BR>
<BR>
</FONT>
</P>
</BODY>
</HTML>