v1.8.4 5/23 ECMWF introduced a new ec_stream (1081). This stream uses the same convention as 1033 and 1035 for denoting the perturbation number. v1.8.4 5/23 ECMWF introduced a new ec_stream (1120). This stream uses the same convention as 1033 and 1035 for denoting the perturbation number. v1.8.3 5/23 ECMWF introduced a new ec_stream (1122). This stream uses the same convention as 1033 and 1035 for denoting the perturbation number. thanks S Villaume (ECMWF) v1.8.2 3/17 old code only checked grib header (Sec 0) to find grib message, assumed grib message is valid. new code will reject grib message (no error message) if the message wants to be bigger than the message length. This fixes problems with ECMWF mixed grib1+grib2 files. Some of their files included a grib1 Sec 0 which was not part of a grib1 message. v1.8.1.2e 7/15 internal release 7/15 removed from pds4.h: #define PDS_EcNoFcst(pds) (pds[50]), no affect on code 7/15 various code/.h files: removed warnings about prototypes and initialization no affect on the code v1.8.1.2e beta1 9/2014 added pertbation no. for ECMWF stream 1033 (hindcast) v1.8.1.2d 4/14 updated ncep table 130, 131 v1.8.1.2c 9/13 added JMA levels 211, 212 and 213 for JRA-55 v1.8.1.2b 9/13 added JMA table 200 for JRA-55 10/11 added fflush(dump_file) and fflush(stdout), enhancement for potential apps v1.8.1.1 6/11 changes from Jeffery S Smith for Albers equal area projection v1.8.1.0h 5/11 seekgrib: scan entire file for grib data because ECMWF files have grib1+grib2 data v1.8.1.0g 5/11 Paul Schou: fixed #define GDS_Lambert_LonSP(gds) INT3(gds[37],gds[38],gds[39]) v1.8.1.0f 3/11 update ncep table 129, 130, 133 v1.8.1.0e 10/10 moved int ec_large and len_ec_bds to seek_grib.c helped people who just call subroutines, suggested by P. Tran v1.8.1.0d 9/10 changed add_time: old: 1month + Jan31 returns Feb31, now returns Feb 28/29 v1.8.1.0c 7/10 Updated ncep table 130 v1.8.1.0b 5/10 PDStimes .. decided to remove normalize minutes to hours, make time units consistent in inv v1.8.1.0 5/10 PDStimes .. if time_range == 10 and time_unit == 0 (minute) .. normalize to hour only occurs when (time/256 % 60) == 0 && ((time % 256) % 60) == 0 rather than (time % 60 == 0) v1.8.0.13g 5/10 changed decl of pos so error message wont appear on AIX v1.8.0.13f 3/10 added code from Brian Doty for large ECMWF files v1.8.0.13e 2/10 added level 216/217/239/241 updated nceptab 128, 129 9/09 warning message if grib2 message encountered v1.8.0.13d 9/09 added ncep table 141, fixed typo in ncep table 129 (thanks YT) v1.8.0.13c 6/09 Dusan Jovic's changes for Arakawa staggered b-grid (205) v1.8.0.13b 6/09 updated ncep table 129 v1.8.0.13a 5/09 added SUNSD ncep table 133 v1.8.0.13 5/09 added -cmc by NCO request, updated ncep table 129 v1.8.0.12z: 4/09 updated/added ectables: 128, 129, 131, 132, 133, 140, 150, 151, 160, 162, 170, 171, 173, 174, 180, 190, 200, 210, 211, 228 v1.8.0.12y: 3/09 added #include to BDSunpk.c (Lulin Song) fix: bit 1 table 7 doesn't apply to lambert conformal v1.8.0.12x: 11/08 make center LAMI point to DWD tables (Davide Sacchetti) (removed) v1.8.0.12w: 9/08 (preliminary) MDL table v1.8.0.12v: 8/08 polar & lambert conformal grid: dx/dy now respect bit 1 of resolution flag v1.8.0.12u: 4/08 update time ranges for CFSRR v1.8.0.12t: 3/08 update table ncep table 129, fix ncep table 133, #205 v1.8.0.12s: 1/08 update ncep table 133 (CFSRR) v1.8.0.12r: 12/07 update ncep table 133 (CFSRR) v1.8.0.12q: 11/07 update ecmwf table 128 v1.8.0.12p: 10/07 update ncep table 129, 130, add ncep table 140 v1.8.0.12o: 5/07 update ncep table 129 v1.8.0.12n: 3/07 name change DH->VEDH (ncep table 129), update ncep table 129, 130 updated levels table to current on388 updated levels table to current on388 v1.8.0.12m: 3/07 added FAST_GRIBTAB compile option, support for updates in user defined grib tables v1.8.0.12l: 3/07 minor table change ncep 129 (lat/lon of u, v and p points) v1.8.0.12k: 2/07 stdin 2000 characters now v1.8.0.12j: 2/07 level 210 corresponds to WMO standard for non-NCEP files v1.8.0.12i: 12/06 ncep table 128 entry 186 K->C v1.8.0.12h: 9/06 can figure out the nxny of complex packed files, still no support for decoding so you can manipulate ec-spectral files but can't decode them v1.8.0.12g: 8/06 more ncep ensemble information v1.8.0.12f: 8/06 more ncep ensemble information stddev/wtd mean v1.8.0.12e: 8/06 level 20: T=280K, added verbose parameter, revised level 113 v1.8.0.12d: 8/06 added marine branch table 128 (extremely revised) v1.8.0.12c: 8/06 level 20 v1.8.0.12b: 7/06 update ncep tab 129, remove ncep tab 128 .. need new table, minor fixes v1.8.0.12a: 6/06 replace error message - complex packing spectral files v1.8.0.12: 5/06 update thinned gaussian grid info for grib2ctl.pl v1.8.0.11: 5/06 flag bad read_grib calls v1.8.0.10c: 1/06 fix the 1/3/05 additions to PDStimes, H. Frank v1.8.0.10b: 1/06 add new (204, 205) and updated DWD tables H. Frank, 10-19-2005 v1.8.0.10a: 12/05 add ectable 172 from Geert Jan van Oldenborgh (KNMI) v1.8.0.10: 9/05 fix gribtable.c v1.8.0.9m1: 9/05 put copyright info in wgrib_main.c and wgrib.c v1.8.0.9m: 8/05 add time range 6 and 7, updated add_time code v1.8.0.9l: 5/05 update ncep 129 table, new levels done by D. Stokes v1.8.0.9k: 4/05 ec table 190, more ec diagnostics (ec_ext) v1.8.0.9j: 4/05 minor comment changes in ncep table 131 (RR) v1.8.0.9i: 12/04 fixed typo introduced 11/04 (table 129, entry 192) v1.8.0.9h: 11/04 updated table ncep-129 (strange entry) v1.8.0.9g: 9/04 fix if (gds && GDS_Harmonic_type(gds) == 1) found by Graziano Giuliani v1.8.0.9f: 8/04 added ecmwf table 151 v1.8.0.9e: 8/04 changes of CFS time ranges v1.8.0.9d: 7/04 fixed reanal grib table NLON -> ELON v1.8.0.9c: 6/04 chaged UVI defn ncep opn table v1.8.0.9b: 6/04 added table 132 (global reanalysis) v1.8.0.9a: 6/04 updated table 129,130 v1.8.0.9: 5/04 added new time codes 132-135, changed time code 51 (clim) v1.8.0.8: 4/04 added -ncep_ens option v1.8.0.7e: 3/04 multiple user tables (fix open) v1.8.0.7d: 3/04 extern minute -> extern int minute v1.8.0.7c: 3/04 for clim (51) don't print 'anl' v1.8.0.7b: 2/04 update NCEP grib table 129 v1.8.0.7a: 11/03 update NCEP grib table 131 v1.8.0.7: 10/03 Mods fron Norwegian Meteorological Institute fixed ec table 131, and enhansed ex_ext.c v1.8.0.6: 9/03 added time codes 128-131 (for RR) v1.8.0.5: 9/03 fix scan mode and change format v1.8.0.4: 9/03 new dwd tables and -dwdgrib option (thanks to Helmut P. Frank) updated formats_update.txt for -dwdgrib option v1.8.0.3k: 7/03 fixed N/S vs grid wind diagnostic with -v option found by Dusan Jovic v1.8.0.3j: 6/03 fixed level 206 (was 205) v1.8.0.3i: 5/03 updated ncep table 131 v1.8.0.3h: 5/03 updated ncep table 131 v1.8.0.3g: 4/03 ecmwf table 128, 140 (names from ECMWF web site), updated 131 v1.8.0.3f: 4/03 updated ncep131, ncep130, ncep-opn v1.8.0.3e: 3/03 fix level 141, update tables 130 and 131 v1.8.0.3d: 2/03 added prelim ncep grib tables 130 and 131 v1.8.0.3c: 1/03 Reanalysis Project updates: scan mode in english, grid vs NS winds, and dusan.jovic@noaa.gov: ss2dEGRID support v1.8.0.3b: 1/03 minor update: changed units of CICE in NCEP tables v1.8.0.3a: 11/02 update ncep_opn and add ncep_129 table v1.8.0.3: 10/02 update levels and ncep_opn grib table v1.8.0.2: 10/02 check gds before grib_check, redid level 117 v1.8.0.1: 10/02 added cptec gribtable 254 v1.8: 4/1/02: Decode of simple packed spectral data and some cleanup of the triangular grid (Luis Kornblueh, Max-Plank Institute of Meteorology) v1.7.4.1a 12/01: added new entry to OMB grib table (REV) v1.7.4.1 12/01: D. Haalman (METEO SERVICE weather research GmbH) rewrote seekgrib.c v1.7.4 10/01: Merged changes made by Helmut P. Frank (DWD) to current source code. This adds DWD tables 1, 201, 202, and 203 as well as support for triangular grids based on an icosahedron 1.7.3.6: 5/01: added fractional mb, center to levels.c 1.7.3.5: 2/01: Handle grib files with precision greater than 31 bits 1.7.3.4a: 9/00: check for missing grib file 1.7.3.4: 8/00: polar stereo + lambert, always print direction increments 1.7.3.2: 6/00: undefined direction increments set to zero on -V output 1.7.3.1: 8/99: added new levels 1.7.3: 5/99: updated NCEP opn grib table 1.7.2: 5/99: fixed fictious error message with thinned grids and bitmaps 1.7.1: 2/99: fixed error in wrtieee_header affects only -H option 1.7.0b7: 1/99: preliminary support for NCEP ensembles 1.7.0b6: 1/99: changed "x12 hours" format to "hr" format 1.7.0b5: 1/99: fixed 3/6/12 hour forecast time units 1.7.0b4 11/98: updated (128,160) and new (129,130,131,140,150,170,180) ECMWF tables 1.7.0b3 10/98: added new time units 1.7.0b2 8/98: allow blank gribtab lines in definition, --v 1.7.0b 8/98: added "km" to Mercator meta-data 1.7: 7/98: fixed bitmap when nbits > 24 (theoretical bug) 1.6.2.5 5/98: fixed -H code so that all of GDS is written 1.6.2.4 4/98 beta: reanalysis ID code: needed for users of 1997 Reanalysis data 1.6.2.2 2/98 beta: rotated lat long grid (10) 1.6.2 1/98 added Arakawa E-grid meta-data 1.6.1b changed 03TOT to O3TOT in ncep operational table note: typo originated in the original NCEP documentation 1.6.1a 12/97 made ncep_opn the default table 1.6.1 9/97 Added the "-d all" option 1.6.0 9/97 non-beta version, added operational NCEP table, optimized the ieee writes (2.5x faster on Cray, 20% on linux), new help screen 1.5.0b14 fix century mark: year=100 not 0 1.5.0b13 -4yr, use 4 digit year code 1.5.0b12 lat-long thinned grid support 1.5.0b11 Added -H option (PDS/GDS output to binary files) 1.5.0b10 Changed"0hr fcst" to "anl" for TR=10 and fcstlen = 0 (non-beta release) 1.5.0b9 Thinned grids support (preliminary) 1.5.0b8 Changed bitmap message 1.5.0b7 -PDS -GDS work for all inventories 1.5.0b6 Added -verf to print "verification" time, new grib2ctl for -verf 1.5.0b5 Added Lambert Conformal, -PDS and -GDS 1.5.0b1 Added ECMWF parameter table #128 1.5.0a wgrib failing with no GDS and constant field. Cannot determine (9/96) the size of data without a center-dependent lookup table. Set length size of data to 1. 1.5.0 -v option: major changes, now an inventory (9/96) -V option: added century to date code, list parameter table number, added description of variable Added parameter table (NCEP-128) for the ocean modeling branch of NCEP. Added user-defined parameter tables. Note: changes are incompatible with grib2ctl. Get new version. (old version works by changing "wgrib -v" to "wgrib -V".) V1.5.0 is the first version to be parameter-table aware. As a result, wgrib will give a warning if it cannot find a matching parameter table. The warning can be eliminated by either using a user-defined parameter table or by adding your table into the wgrib source. (Contact w. ebisuzaki, Wesley.Ebisuzaki@noaa.gov). Built-in tables: NCEP-2, NCEP-128, ECMWF-160. Much faster flt2ieee routine, changed rounding factor in flt2ieee so that IEEE machines gets the correct last bit. Increased NTRY to 100 to accommodate Automation div headers. The 1.4.x series didn't last long (1 revision, 3/96 to 7/96). 1.4.1a Several optimizations of the grib routines for reduced CPU usage. (6/96) Updated the NCEP parameter table and altered the print statement for climatological fields. 1.4 ****************************************************************** 1.4 1.4 BUG: Prior to v1.4, when the start of the grib message was less 1.4 than 160 bytes from the end of the file, wgrib would not find 1.4 the message. This would only occur if a short grib message (< 160 bytes) 1.4 ended the file. Basically I had assumed that a grib message 1.4 had to be 160+ bytes in length. Well someone at NCEP decided 1.4 to write 84-byte grib messages! About the only field that 1.4 can be described in a 84-byte message is uniform value of zero. 1.4 1.4 Fixed a bug in the return code, and made the code 10% faster. 1.4 1.4 Since this is a bug fix PLEASE upgrade to version 1.4. 1.4 Why not? It's free! (3/96) 1.4 1.4 ****************************************************************** 1.3.4h Complaint about wgrib failing if the file has no GDS. Since a GDS (2/96) is recommended (and is in every file that I have seen) I've never included the code to create a GDS for prespecified grids. This version is a temporary fix. It sets the array size to NX x 1. [7/96: This temporary fix will have to do. The GDS prespecified grids are center dependent. Since I don't have the tables, nothing is planned.] 1.3.4f updated ECMWF parameter table (from M. Fiorino) (11/95) support for the ECMWF stream parameter clean compiles using acc (SunOS) (acc is pickier than gcc -Wall) 1.3.4e writing grib files made much faster (11/95) 1.3.4d minor change in error statement format (9/95) 1.3.4c didn't check for case where number of bits = 0! in NMC bug check (7/95) 1.3.4 added check for bad bds "used bits" parameter (look for NMC bug) (7/95) 1.3.3: (preliminary) ECMWF parameter table added (5/95) 1.3.2: preliminary polar stereographics map support (4/95) - from wgrib code - * 11/94 - v1.0 * 11/94 - v1.1: arbitary size grids, -i option * 11/94 - v1.2: bug fixes, ieee option, more info * 1/95 - v1.2.4: fix headers for SUN acc * 2/95 - v1.2.5: add num_ave in -s listing * 2/95 - v1.2.6: change %d to %ld * 2/95 - v1.2.7: more output, added some polar stereographic support * 2/95 - v1.2.8: max min format changed %f to %g, tidying up more info * 3/95 - v1.3.0: fix bug with bitmap, allow numbers > UNDEFINED * 3/95 - v1.3.1: print number of missing points (verbose) * 3/95 - v1.3.2: -append option added * 4/95 - v1.3.2a,b: more output, polar stereo support (-V option) * 4/95 - v1.3.3: added ECMWF parameter table (prelim) * 6/95 - v1.3.4: nxny from BDS rather than gds? * 9/95 - v1.3.4d: speedup in grib write * 11/95 - v1.3.4f: new ECMWF parameter table (from Mike Fiorino), EC logic * 2/96 - v1.3.4g-h: prelim fix for GDS-less grib files * 2/96 - v1.3.4i: faster missing(), -V: "pos n" -> "n" (field 2) * 3/96 - v1.4: fix return code (!inventory), and short records near EOF * 6/96 - v1.4.1a: faster grib->binary decode, updated ncep parameter table, mod. in clim. desc * 7/96 - v1.5.0: parameter-table aware, -v option changed, added "comments" * increased NTRY to 100 in seek_grib * 11/96 - v1.5.0b: added ECMWF parameter table 128 * 1/97 - v1.5.0b2: if nxny != nx*ny { nx = nxny; ny = 1 } * 3/97 - v1.5.0b5: added: -PDS -GDS, Lambert Conformal * 3/97 - v1.5.0b6: added: -verf * 4/97 - v1.5.0b7: added -PDS10, -GDS10 and enhanced -PDS -GDS * 4/97 - v1.5.0b8: "bitmap missing x" -> "bitmap: x undef" * 5/97 - v1.5.0b9: thinned grids meta data * 5/97 - v1.5.0b10: changed 0hr fcst to anal for TR=10 and P1=P2=0 * 5/97 - v1.5.0b10: added -H option * 6/97 - v1.5.0b12: thinned lat-long grids -V option * 6/97 - v1.5.0b13: -4yr * 6/97 - v1.5.0b14: fix century mark Y=100 not 0 * 7/97 - v1.5.0b15: add ncep opn grib table * 12/97 - v1.6.1.a: made ncep_opn the default table * 12/97 - v1.6.1.b: changed 03TOT to O3TOT in operational ncep table * 1/98 - v1.6.2: added Arakawa E grid meta-data * 1/98 - v1.6.2.1: added some mode data, Scan -> scan * 4/98 - v1.6.2.4: reanalysis id code: subcenter==0 && process==180 * 5/98 - v1.6.2.5: fix -H code to write all of GDS * 7/98 - v1.7: fix decoding bug for bitmap and no. bits > 24 (theoretical bug) * 7/98 - v1.7.0.b1: add km to Mercator meta-data * 5/99 - v1.7.2: bug with thinned grids & bitmaps (nxny != nx*ny) * 5/99 - v1.7.3: updated NCEP opn grib table * 8/99 - v1.7.3.1: updated level information * 9/00 - v1.7.3.4a: check for missing grib file * 2/01 - v1.7.3.5: handle data with precision greater than 31 bits * 8/01 - vDWD : added DWD GRIB tables 201, 202, 203, Helmut P. Frank * 9/01 - vDWD : added output "Triangular grid", Helmut P. Frank * 9/01 - v1.7.4: merged Hemut P. Frank's changes to current wgrib source code * 3/02 - vMPIfM: added support for spectral data type * 4/02 - v1.8: merge vMPIfM changes, some fixes/generalizations * 10/02 - v1.8.0.1: added cptec table 254 * 10/02 - v1.8.0.2: no test of grib test if no gds, level 117 redone * 10/02 - v1.8.0.3: update ncep_opn grib and levels * 11/02 - v1.8.0.3a: updated ncep_opn and ncep table 129 * 9/03 - v1.8.0.4: update dwd tables (Helmut P. Frank), -dwdgrib option * 9/03 - v1.8.0.5: fix scan mode and change format * 10/03 - v1.8.0.7: Changes from Norwegian Met. Inst (ec tab #131, ex_ext) * 10/03 - v1.8.0.8: added -ncep_ens option To Do: decode spherical harmonics (need some examples to test on) complex packing? Adding new parameter tables is pretty easy and I'm willing to add new parameter tables for "operational centers". (Note, the GRIB center identification numbers are assigned by the WMO.)