Downloadable from our Releases page.
From ecCodes 2.39 new parameters will be added which reflect a statistical processing in time of an existing parameter. This is to streamline and unify statistically processed parameters, as well as prevent accidental misuse of the instantaneous paramId for parameters which are statistically processed in time and hence require more metadata in the GRIB message.
The addition of new parameters will follow the following structure where possible:
inst | mean | accum | max | min | std | |
atm | XXX | 235YYY | 236YYY | 237YYY | 238YYY | 239YYY |
wave | 140XXX | 141XXX | 142XXX | 143XXX | 144XXX | 145XXX |
ocean | 262XXX | 263XXX | 264XXX | 265XXX | 266XXX | 267XXX |
Please note that existing parameters will not fit into this structure, e.g. accumulated water and radiation parameters.
A pre-existing example can be found in, for example, mucape as below:
inst | mean | accum | max | min | std | |
most-unstable CAPE | mucape 228235 | avg_mucape 235117 | — | max_mucape 237117 | min_mucape 238117 | std_mucape 239117 |
Due to clashes with current ECMWF operational output, we will delay the addition of the following parameters until further developments have been implemented:
- 235288; Time-mean total cloud cover (base parameter
228164
) - 235326; Time-mean total lightning flash density (base parameter
228050
) - 237287; Time-maximum convective available potential energy (base parameter
59
) - 237167; Time-maximum 2 metre temperature (base parameter
167
, already have generic encoding201
) - 237318; Time-maximum 10 metre wind gust (base parameter
228029
, already have generic encoding49
) - 237321; Time-maximum convective available potential energy shear (base parameter
228044
) - 237055; Time-maximum total precipitation rate (base parameter
260048
, already have generic encoding228226
) - 238167; Time-minimum 2 metre temperature (base parameter
167
, already have generic encoding202
) - 238055; Time-minimum total precipitation rate (base parameter
260048
, already have generic encoding228227
)
To see how these changes will affect your workflow, please try using the prototype version encompassing these changes which can be found here:
https://github.com/ecmwf/eccodes/tree/feature/grib_time_processing_generalisation
or as a tarball here:
https://confluence.ecmwf.int/display/ECC/Development+Snapshots
with installation instructions here:
https://confluence.ecmwf.int/display/ECC/ecCodes+installation
Please note: There is a new webpage for the Migration to GRIB2: Migration to GRIB2
This webpage also includes a section where changes in the parameter encodings for the coming ecCodes versions are documented: Changes in the parameter encodings
New Features/Improvements
- Performance enhancements
- [ECC-1848] - Tools: Deprecate grib_merge, gg_sub_area_check and big2gribex
- [ECC-1808] - GRIB2: Update tables with the latest WMO V33.0.0
- [ECC-1809] - BUFR: Update tables with the latest WMO V42.0.0
- [ECC-1868] - CMake: Add option for enabling the Geoiterator and Nearest Neighbour functionality
- [ECC-1878] - grib_filter/bufr_filter: Add a '=' specifier for the print statement
- [ECC-1899] - API function to allow setting debug level
- [ECC-1908] - GRIB1: Add new MARS levtype 'abstract levels'
- [ECC-1912] - GRIB2: Generalise stepType and typeOfTimeIncrement implementation
- [ECC-1915] - GRIB: CMCC origin for class=ci
- [ECC-1760] - GRIB2: remove is_chemical_srcsink key from chemistry related paramIds
- [ECC-1850] - GRIB2: Extension of EERIE (European Eddy RIch Earth System Models) metadata keys
- [ECC-1851] - GRIB2: Time-processed parameters for Most-Unstable CAPE
- [ECC-1856] - GRIB2: Add volumetric soil moisture top 20cm/100cm parameters
- [ECC-1857] - GRIB2: Update WMO encoding in soil moisture parameters and add time-mean variant
- [ECC-1861] - GRIB2: Emission parameters with additional srcs/sinks
- [ECC-1862] - GRIB2: Add parameter for water vapour increment
- [ECC-1863] - GRIB2: Update WMO encoding in base soil moisture parameter
- [ECC-1864] - GRIB2: Update WMO encoding in soil temperature parameters and add time-mean variant
- [ECC-1865] - GRIB: Resolve duplicate shortName of ucq
- [ECC-1876] - GRIB: Resolve duplicate shortName of vo and avg_vo
- [ECC-1880] - GRIB2: Additions & modifications of instantaneous parameters for generalised time processing approach
- [ECC-1882] - GRIB2: Adapt recently added On-Demand DT encodings to fit generalised approach
- [ECC-1889] - GRIB: Add new MARS type MPP
- [ECC-1894] - GRIB2: Transfer encoding from 240016 to 26
- [ECC-1895] - GRIB2: Time processed equivalents for total column integrated graupel
- [ECC-1901] - GRIB2: remove is_chemical from ERA6 pseudo-centre parameters
- [ECC-1902] - GRIB2: Parameter cleanup in preparation for the addition of statistically processed parameters
- [ECC-1918] - GRIB2: Modify tile template in preparation for use by On-Demand DT
- [ECC-1919] - GRIB2: Additional parameters for On-Demand DT
- [ECC-1866] - GRIB: Setting step on interval-based message with dataDate=0
- [ECC-1870] - Tools: Improve error message when printing array keys via grib_get, grib_ls
- [ECC-1883] - Better error message when accessor not found
- [ECC-1884] - GRIB1 regular grids: The geography namespace should include Ni and Nj
- [ECC-1885] - GRIB: The 'dirty_statistics' key is always 1
- [ECC-1886] - Definitions: cfVarName key should be based on the shortName (with a few exceptions)
- [ECC-1897] - GRIB2: Print a warning if the packing type template is experimental or deprecated
- [ECC-1907] - GRIB Wave fields: Conversion to GRIB2 loses direction and frequency data
- [ECC-1860] - Definition language: Add 'isnot' operator for strings
Bug Fixes
- [ECC-1228] - Error when changing productDefinitionTemplateNumber for forecastTime in seconds
- [ECC-1847] - GRIB: Setting invalid value for 'typeOfLevel' does not fail
- [ECC-1853] - GRIB: Lambert conformal longitudes greater than 360
- [ECC-1855] - GRIB2: Unit not found if typeOfTimeIncrement=2 and numberOfTimeRange=2
- [ECC-1858] - GRIB: Automatic bitsPerValue repacking of grid_complex files may cause significant loss of precision
- [ECC-1859] - Compile error: grib_accessor_class_data_g2bifourier_packing.cc: namespace "std" has no member "max"
- [ECC-1867] - GRIB: Unexpected PDT change for GRIB2 wave template for ensemble DA streams
- [ECC-1873] - GRIB: Incorrect mapping of flag bits to keys (resolutionAndComponentFlags)
- [ECC-1874] - GRIB: Sample files for regular Gaussian grids should have jDirectionIncrementGiven=0
- [ECC-1875] - GRIB2: Unwanted PDT change if setting localDefinitionNumber
- [ECC-1879] - Cannot build with ENABLE_ECCODES_OMP_THREADS=ON: multiple definition of `thread_init()'
- [ECC-1887] - GRIB: The mars keys 'date' and 'time' for OSTIA data (using local def 11) are wrong
- [ECC-1906] - GRIB2: Templates for wave spectra with direction/frequency array don't set section 4 length correctly if adapting the array size
- [ECC-1914] - GRIB: MARS levtype for isothermal atmospheric parameters