NOAA logo-Select to go to the NOAA homepage
NOAA / NWS's Meteorological Development Laboratory   
  Select to go to the NWS homepage
GRIB1 logo Degrib (NDFD GRIB2 Decoder) GRIB2 logo
 
Local forecast by
"City, St"
 
 
 
 
 
 
 

Degrib: To Do

  1. Web Services:
    • Enable one to give a lat/lon and it knows which OConus sector to probe.
    • XML (DWML) support straight from degrib.
    • Enhance the Datacube to GRIB2 option to work with non-NDFD datasets.

  2. Generate images (possible "drawshp + degrib" coupling.
    • Scriptable from the command line in MS-Window.
    • For "custom" sectors.
    • For "ozone" images.
    • For efficient image generations on web site.
    • For images on unix system.

  3. Update Documentation.
    • Update "man pages".
    • Update "FAQ pages".
    • Update usage error message.
    • Update comments in code.

  4. Extracted versions of "degrib"
    • Break off a: "datacube_probe" and a "datacube_create", and maybe a "datacube2grib", for faster processing of requests.
    • Create "degrib-lite" which has no NCEP support, so it doesn't require extra libraries.
    • Create an apache module?

  5. Improvements to "degrib"
    • Check on decision of subcenter = 65535 for NDFD and NDGD.
    • Check on lower limit of pop12 (should be missing instead of (-1,-1) => -10)
    • Check on correction to http://weather.gov/datamgmt/doc/GRIB2_encoding.html for section 4 octet 43 PoP12 (-3 should be 3).
    • For NCEP data, be nice to call a different routine... because of memswp issues and because of subgrid issues... Faster.
    • smooth contours?
    • step level to big polygons?
    • Use DSF and min/max to auto determine if cube should be Float4, sInt2 uInt2 sChar uChar...
    • Change -Database option to use GRIB2 units... This affects -DP as well. Disadvantage (slower -DP) Advantage: Potential for smaller data cubes
    • -DC option read file (by strips)
    • New Probe option. (level) (Re-sort?)
    • TimeZone output ... -TimeZone option for -P and other options? (Internal clock)
    • Test: "c:\>degrib -in maxt.bin -P -pnt 35,35 -WxParse 1 -Separator "**" -out maxt.abc" In addition: -Separator "**" appears to cause a bug. I shall investigate that.
    • Add Over-ride to cat/subCat/param/discipline?
    • "-msg" with "-DC" option?
    • "-nLabel 1" round to nearest grid cell, "-nLabel 2" use all decimals. "-nLabel" do "-nLabel 1".
    • Add a -warn level option
    • Add a sparse grid (every other cell) option?
    • Add a "%dv" option to "NameStyle".
    • Enable degrib to do what "tcldegrib web.tcl" currently does
    • JPEG2000 GRIB2 encoding capability.
    • More Selection filters. (select by time)(variable filter? level filter?)
    • along with more options for stdout. Maybe - for stdin / stdout?
    • Add a -Calc option which would join together several grids? Example Max (3 hr WindSpeed) to create 12 hr MaxWindSpeed for Hurricane Problem.
    • Add interpolate to a given grid (instead of just to a coverage grid).
    • Add some method for weather icon support.
    • option to compute a given lat/lon to grid and vice versa.
    • Merge newshp.exe capability: Create empty grids based on user supplied parameters.
    • Merge gtopo.exe capability: Create topo grids based on gtopo data set.
    • Add a --help, -help or -h option
    • Incorporate "degrib.txt" in degrib so -man gives degrib.txt?
    • Use clock.c instead of for double clock values.
    • Switch to float (from double) for grid
    • Split routine to break up a grib2 file into component message files?
    • Consider using p 78 in K&R C for getch and ungetch.
    • Bug if write to .txt file that is opened using "more"
    • Crashes if the destination directory does not exist.
    • Make the makefiles depend on the header files.
    • May want to move trivial checks in tendian.c behind a #DEBUG. May speed things up.
    • Is Dx and Dy required by Polar stereographic projections?
    • Add support for GS3_ORTHOGRAPHIC = 90, GS3_EQUATOR_EQUIDIST = 110, GS3_AZIMUTH_RANGE = 120
    • Add support for GS4_RADAR = 20
    • Efficiency checks... ++i not i++?
    • Efficiency checks... check header include sets.
    • Efficiency checks... check for y loop then x loop... not reverse.
    • Add a test suite for -Interp option (both probe and flt).
    • Detect Duplicate versions of cygwin1.dll

  6. Code Review improvements
    • CR1: use a Global timeZone variable (InventoryParseTime())
    • CR2:-MSB option: Need a "native version of it"?
    • CR: Look up "address" in dbf definition.
    • CR1:degrib2.h: Make clear who is responsible for filling the is structure.
    • CR1:inventory.c GRIB2SectToBuffer: comment on the 5-5 issue.
    • CR1:inventory.c GRIB2Inventory: We don't skip sect 3, but don't use it... either skip it or use it.
    • CR1:cstart.c DegribIt: Remove metaparse from ReadGrib2Record call? Efficiency particularly for probe.
    • CR1:cstart.c DegribIt: Move some of this code to degrib2.h so it isn't repeated in tclstart.c
    • CR1:cstart.c DegribIt: Deal with redundent error handling code... Either goto, or procedure.
    • CR2:myerror.c AllocSprintf: Investigate arbitrarily long format strings.
    • CR2:endian.c revfread/revfwrite: Investigate timing of fgetc vs fread..
    • CR2:write.c checkFileSize: better comments for "errno"
    • CR2:write.c gribWriteFloat: Investigate if scan flag is unclear
    • CR2:write.c CreateShpPnt: Emphasize the endian switch in file writes.
    • CR2:write.c GridCompute: In comment, compute 5 decimals degrees in meters.
    • CR2:write.c CreateDBF: Explain index manipulation because we are being consistant with the .flt files.

  7. Improvements to "tkdegrib"
    • Right Click for more details option?
    • Add hour glass during inventory in GUI
    • Lock selections when in GUI download... particularly for custom.
    • UpDirectory in GIS tab doesn't go up a directory if a file is selected.
    • Add a probe tab in the GUI
    • Add a better metaData viewer.
    • Double click on GRIB2 message gives pop-up with all the meta data specific to that GRIB2 message.
    • Add Image Support.
    • Check on "Restart" capability if error occurs in middle of image gen
    • Double click does not function properly in list mode file browse in tkdegrib
    • Bug if create .mosaic and then delete too fast
    • Bug: Percentage with multiple Sector Image Generation.
    • Make Tcl interface independent of order with regards to SubCommand first. Currently it is Cmd ... Degrib is Cmd
    • Create a configure Cmd for tcldegrib so we can send the -reset option in just after downloading the file..
    • f_validInv may be a really bad idea...
    • Check into -nameStyle vs -outName with GUI issue. Make sure that tcldegrib can use -nameStyle if once used -out.
    • Compile against Tcl/Tk compiled in Ming?
    • tkdegrib: Double click on item meta data browser (display meta button)
    • Add better viewing support for meta data
    • tkdegrib: Add -revFlt option to gui
    • Pass back seconds since epoch to Tcl/Tk (rather than formatted string) (line 211 in tcldegrib (inventory part)).
    • Look into the use of mktclapp (http://www.hwaci.com/sw/mktclapp/mktclapp.html)
    • Browse interface for buttons replace with my own browser.
    • GMT clock on GIS Page?
    • Permission issue with regards to folders during download. (configure option / pop up warning if permission denied?
    • timeout issue on ftp lines?
    • Search for imageGen.exe or imageGen
    • Icon as part of tkdegrib
    • Clean up files: Cause refresh.

  8. Improvements to "Inventory" option.
    • Enhanced inventory capability
    • terse inventory listing?
    • Code Review 1:inventory.h: May want location / grid information too (Nx,Ny, lower left).
    • inventory.c GRIB2Inventory: Figure out how to give a "warning"?
    • Add to inventory (GDS info lower left lat/lon NxNy)

  9. Improvements to "probe" option.
    • Add a output file column to the pntFile (see Kim Waggoner's email 11/18/2004 12:03).
    • Add a probe option for the nearest non-missing grid value.
    • Probe with time filters.
    • Test for probe file labels of "GOOBER and friends" (ie spaces)
    • Switch to required , and ignored space in ?probe.c -pntFile option?

  10. Gridded "Tdlpack" support.
    • validate decoder
    • create an encoder?

  11. GrADS / NetCDF support.
    • Add scale factor / offset to netcdf
    • Add short int / byte for various NDFD weather types.
    • Better checks for "../../bin/degrib test_maxt_111500.grb -C -NetCDF -msg 1"
    • Install "ncdump" and "ncgen" to /degrib/bin
    • f_interp option for NetCDF
    • Multiple messages in one file: (NetCDF / GrADS / shapefile) (depending on map projection being identical)
    • Output formats: Fortran headers for .flt files.
    • Formalize a fltUtil. (Probe set of lat/lon, switch endian, switch scan)

  12. ESRI support.
    • ASCII Grids
    • More columns in .dbf file based on tdl2shp answers
    • .flt (or .asc) to .shp file capability?
    • Generate .prj files for ArcGIS 8.0/9.0
    • Better tutorial
    • Update the "legend" files used in ArcView to be continuous.
    • 3d shapefiles?
    • Contour capability?
    • Man pages about how to bring WX into ArcGIS

  13. General support.
    • Check code for reliance on 32bit operating system. Fortran code is safe, but some of the C-code driver has problems.
    • Use most recent versions of all libraries.
    • Enhance the test suites.
    • Uninstall temp dirs
    • Keep up with the meta data changes
    • Add FGDC compliant meta data
    • See if you can get .tar.gz file to work properly with IE
    • Distribute grib2unpacker as a .dll (Test with MS VisC Compile)
    • Create a Tcl/Tk degrib .dll "package"


    Page last Modified: May 11, 2006.
    US Dept of Commerce
    National Oceanic and Atmospheric Administration
    National Weather Service
    Meteorological Development Laboratory
1325 East West Highway
Silver Spring, MD 20910
Degrib Questions? Arthur Taylor
NDFD Questions? nws.ndfd@noaa.gov
Disclaimer
Privacy Policy