>From: "HOETH, BRIAN R. (JSC-ZS) (LM)" <address@hidden> >Organization: JSFC >Keywords: 200211192250.gAJMoQ427093 McIDAS gribdec gbtbpds001.bv1 Brian, >Sorry to bug you since you're the only one there that does McIDAS support >... No worries. >Example 1x1 AVN (aka GFS) GRIB file we're decoding: >ftp://tgftp.nws.noaa.gov/SL.us008001/ST.opnl/MT.avn_CY.00/RD.20021126/PT.gri >d_DF.gr1/fh.0015_tl.press_gr.onedeg OK. I grabbed this file. >We build/run the gribdec.k on an HP J5600 workstation running HP-UX 11.i >(11.11). Compiler is F90. I am using a Sun E450 running Solaris 9 and I am using gcc/g77 as compilers. >Here is an example GRDDISP of the Pressure at MSL and the 10 meter winds >from the 00Z GFS run, forecast hour 15: >http://www.srh.noaa.gov/smg/GFS00ZFHR15.GIF > >And here is the surface analysis from 15Z (SFCCON of PMSL and SFCPLOT of >WINDB): >http://www.srh.noaa.gov/smg/SFCANAL15Z.GIF OK. >As you can see, the two don't agree at all? The winds are off in direction >by 90 degrees down by us here in Houston and also the winds don't even seem >to match up with the model's own pressure pattern? I agree. The pressure fields are shifted by 180 degrees east. The big low that is indicated as being at about 156 East should be at about 24 W. This means that the specification of the LAT,LON limits in grib table B (gbtbpds001.bv1) are off. Yup, I see it. From the GRIB document, the first grid point for grid 3 is at 90 N and 0 East. The McIDAS gbtbpds001.bv1 puts the point at 90 N and 180 West. This accounts for the 180 degree shift in the grid features. I tried copying one grid decoded by gribdec.k to its own GRID file and using LWU POKE to play the nav portion. I found that if I set the upper left point to 90N, 0E and the lower right point to 90S, 360E I get the correct navigation. The resulting P at SFC for the world is: http://www.unidata.ucar.edu/staff/tom/gifs/pmsl_avn_1deg.gif This matches the observed weather patterns and a GEMPAK display for the same grib message, so I feel confident that it is correct. Now, the question is how to modify the table entries to assign the right LAT,LON points to the upper left and lower right grid points. I tried the following which worked: Edit the copy of gbtbpds001.bv1 that is bundled with gribdec.tar.Z and change the entries for grids 2, 3, and 4. -- Hopefully, you are making sure that the copy of gbtbpds001.bv1 bundled with gribdec.tar.Z is the one that gets used when decoding. I do this by making sure that my MCPATH is set so that the directory where gribdec.tar.Z is unpacked and gribdec.k is used is the first one in MCPATH: MCPATH=/home/mcidas/gribdec:$MCPATH Here is the change you have to make in gbtbpds001.bv1: change: 002 | 90S - 90N 180W - 180E Mercator | 1 | 10512| 73| 144| 90.0| 180.0| -90.0| -180.0| 2.5| 2.5 10512 | 73| 144| 90.0| 180.0| -90.0| -180.0| 2.5| 2.5 003 | 90S - 90N 180W - 180E Mercator | 1 | 65160| 181| 360| 90.0| 180.0| -90.0| -180.0| 1.0| 1.0 65160 | 181| 360| 90.0| 180.0| -90.0| -180.0| 1.0| 1.0 004 | 0N - 90N 0E - 90E Mercator | 1 | 259920| 361| 720| 90.0| 180.0| -90.0| -180.0| 0.5| 0.5 259920 | 361| 720| 90.0| 180.0| -90.0| -180.0| 0.5| 0.5 to: 002 | 90S - 90N 180W - 180E Mercator | 1 | 10512| 73| 144| 90.0| 0.0| -90.0| -360.0| 2.5| 2.5 10512 | 73| 144| 90.0| 0.0| -90.0| -360.0| 2.5| 2.5 003 | 90S - 90N 180W - 180E Mercator | 1 | 65160| 181| 360| 90.0| 0.0| -90.0| -360.0| 1.0| 1.0 65160 | 181| 360| 90.0| 0.0| -90.0| -360.0| 1.0| 1.0 004 | 0N - 90N 0E - 90E Mercator | 1 | 259920| 361| 720| 90.0| 0.0| -90.0| -360.0| 0.5| 0.5 259920 | 361| 720| 90.0| 0.0| -90.0| -360.0| 0.5| 0.5 After making the change, decode the data from fh.0015_tl.press_gr.onedeg into a different GRID file and then display the P at MSL field. Here is an example of what I did: ERASE GRDDISP MYDATA/GRIDS.6010 PAR=P LEV=MSL CINT=4 which can be seen in: http://www.unidata.ucar.edu/staff/tom/gifs/pmsl_1deg_avn.gif This is identical to the one that I created using LWU POKE to muck with the nav parameters in the original output GRID file. OK, so far so good. Now for the bad news :-( GRDDISP has problems in plotting the decoded grids over certain maps. For instance, the following produces no contours: ERASE MAP WORLD GRDDISP MYDATA/GRIDS.6010 PAR=P LEV=MSL CINT=4 NAV=C In fact, it appears that no contours will be plotted for maps whose LAT,LON extents are west of the upper left hand point of the grid AND don't contain the dateline. Go figure that one out!! The good for you, perhaps, is that GRDDISP for these grids seems works fine over satellite images. >I really don't think (?) it's a compile issue though because the decoder >seems to work fine for 12 km ETA data (example ETA data: >ftp://tgftp.nws.noaa.gov/SL.us008001/ST.opnl/MT.eta_CY.00/RD.20021126/PT.gri >d_DF.gr1/fh.0015_tl.press_gr.awip12)? I agree. The problem is in the navigation definition in gbtbpds001.bv1. There is also a problem if you force the decoder to decode the nav block from the grib message. I don't even want to dive into that one right now. >Here is an example GRDDISP of the Pressure at MSL and the 10 meter winds >from the 00Z ETA run, forecast hour 15: >http://www.srh.noaa.gov/smg/ETA00ZFHR15.GIF > >Looks pretty close to the analysis. Yup. >Thanks a million for all your help!! Is that a million in cash or a million in promissary beers ;-) Tom
NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.