To let you know, a problem is in the GRIB ingestor NGRB2PCG32. It is calculating the coriolis factor (FFFF) wrong for Lat/Lon grids. So, any calculation on Lat/Lon grids requiring the coriolis factor will be incorrect. If you have the previous version of NGRB2PCG32 (v1.1), us it. I'm working on a fix.
I've found a strange artifact from NGB2PCG32 when processing the GFS 2.5 degree GRIB files fh.0012_tl.press_gr.2p5deg through fh.0384_tl.press_gr.2p5deg (2.5 deg data from 12 to 180 hrs available on the 12z run only). On the 12 hour interval GFS grib file, NGB2PCG32 creates an hourly 22-32 hour forecast hour file with a few fields, including precipitaiton that isn't the model precipitaiton for that time.
In other words, running NGB2PCG32 for forecast files at 12, 24, 36, 48, 60, etc., PCGRIDD32 forecast times are created for 12, 22,23,24,25,26,27,28,29,30,31,32, 36,48,60, etc.
The FHRS 21 LIST is blank as it should be since there are no fields for the forecast interval.
The 22 FHRS LIST has the following fields in it.
Code: Select all
#### SFC TCLD SFC PCRT SFC TPC1 SFC CPC1 SFC CRAN SFC CZRN SFC CPEL SFC CSNO SFC ######## TEMPHCDT PRESHCDT PRESHCDB TEMPMCDT PRESMCDT PRESMCDB TEMPLCDT PRESLCDT PRESLCDB TMXK 2M TMNK 2M
This is a new problem and started with NGB2PCG32 1.1
If you need more info let me know.
I believe this problem was in the first release of PCGRIDDS32. I have always had a problem with this since I began using PCGRIDD32 back in July. However, these forecast times (22 to 32) do match up with a "correct" forecast time. Please see the list below. I have verified this by checking the maps against images from various web sites which include NOAA sites.
- The precipitation total for forecast hours 264 through 384
are contained in a separate file. The following table shows
the "forecast hours" represented for these files and the
corresponding "actual" forecast hour. Use this table to pair
the 2 sets of files.
22 pairs with 264
23 pairs with 276
24 pairs with 288
25 pairs with 300
26 pairs with 312
27 pairs with 324
28 pairs with 336
29 pairs with 348
30 pairs with 360
31 pairs with 372
32 pairs with 384
PCP TOTAL, MSLP and 10 meter wind together for the 300 hour forecast.
Note: The colors in this macro have been setup for use with a white background.
Code: Select all
loop LNDF SFHR 25 TPCI LT.1 CLRH TPCI CI.1 GT.1 LT.2 CLR6/TPCI CI.1 GT.2 LT.3 CLR5& TPCI CI.1 GT.3 LT.4 CLR1& TPCI CI.1 GT.7 LT.8 CLR7/TPCI CI.5 GT.9 CLR2& LPL1 LTM1 LLN1 LMN1 SFHR 300 PMSL CLRd HILO& BKNT 10M CLR8& endl
Looking at the data, this is not a problem...this is a feature. NGRB2PCG32 is doing what it is supposed to do; convert the GRIB data in the files to a format PCGRIDDS32 can use. NCEP is inserting "extra" data into the GRIB file for a certian forecast hour which does not belong in that forecast hour. I've seen this "policy" with other GRIB files as well; they will have a GRIB file name for a cetian grid projection , i.e. grid 211, and other grid projections will be included in that file (?!?!?). Whether it is a mistake or intentional, I don't know.
Solution: Since the data being processed is 'valid' data, NGRB2PCg32 will have to be modified to either have a file to reference for forecast hours to include in the processing or forecast hours to exclude in the processing. This file will be maintained by the individual users. This is a poll; tell me what you think & I'll do what I want (just kidding). I would think an exclude list would be easier.
Thanks for the heads-up,
Are you sure this is a "feature"? Maybe I didn't understand your reply but there is no continuity in the precip fields between 23 and 24 hours, and 24 and 25 hours. These may be "extra" data times but they do not fit at the hours they are being processed for or as you said, the projection for the times they are processed for. What a pain NCEP!
As for an exclusion file, that's fine with me as long as the exclusion is GRIB model/projection specific. There are some models where I don't want to exclude certain time forecast intervals that I may want to exclude in other models.
If you process a complete model run (0 to 384 hours) there will be separate fields for precip for the forecast hours 288 and 360 contained in the 24 & 30 hour forecast. TPC6 and CPC6 are for forecast hours 24 & 30. TPC1 and CPC1 are for forecast hours 288 (24h) and 360 (30h).
Code: Select all
TMNK 2M TPC60000 CPC60000 CRAN0000 CZRN0000 CPEL0000 CSNO0000 RELH 2M UGRD 10M VGRD 10M HGTA1000 HGTA 500 #### 500 TPC10000 CPC10000 *DATA AT FORECAST HOUR 24 IN FILE => c:\PCGRIDDS32\GRIDDATA\NOV230412.GFS002 - *DATA AT FORECAST HOUR 25 IN FILE => c:\PCGRIDDS32\GRIDDATA\NOV230412.GFS002 ####0000 ######## TCLD0000 PRESHCDT PRESHCDB TEMPHCDT PRESMCDT PRESMCDB TEMPMCDT PRESLCDT PRESLCDB TEMPLCDT PCRT0000 TMXK 2M TMNK 2M TPC10000 CPC10000 CRAN0000 CZRN0000 CPEL0000 CSNO0000 *DATA AT FORECAST HOUR 25 IN FILE => c:\PCGRIDDS32\GRIDDATA\NOV230412.GFS002
You're saying the precip and a few other fields that are being processed for 22-32 hours really belong at those later times?
I noticed this whole thing when I did a
Code: Select all