The error
You try to retrieve data from the ECMWF data archive in NetCDF format but the retrieval fails with this message:
ECCODES ERROR : Wrong number of fields ECCODES ERROR : File contains 806 GRIBs, 806 left in internal description, 745 in request ECCODES ERROR : The fields are not considered distinct! ECCODES ERROR : Hint: This may be due to several fields having the same validity time. ECCODES ERROR : Try using the -T option (Do not use time of validity)
Cause
This is known issue when downloading forecast data in NetCDF format, with multiple data values at the same validity time.
For example, for the ERA-Interim dataset there are two daily forecasts (00:00, 12:00), with 3-hourly forecast steps. So one could specify in a data retrieval script:
"date":"2016-12-01" "type":"fc" "time": "00:00/12:00", "step": "3/6/9/12/15", "format": "netcdf"
With the above specification you get data for the following validity times:
- time 00:00 + step 3 → validity time 2016-12-01, 03:00
- time 00:00 + step 6 → validity time 2016-12-01, 06:00
- time 00:00 + step 9 → validity time 2016-12-01, 09:00
- time 00:00 + step 12 → validity time 2016-12-01, 12:00
- time 00:00 + step 15 → validity time 2016-12-01, 15:00
- time 12:00 + step 3 → validity time 2016-12-01, 15:00
- time 12:00 + step 6 → validity time 2016-12-01, 18:00
- time 12:00 + step 9 → validity time 2016-12-01, 21:00
- time 12:00 + step 12 → validity time 2016-12-02, 00:00
- time 12:00 + step 15 → validity time 2016-12-02, 03:00
In this example you get two data values at the same validity time 2016-12-01, 15:00. The NetCDF format does not support multiple data values at a single time, hence the creation of the output NetCDF file fails, triggering the error message.
Workarounds
- Download the data in its native GRIB format, then convert the GRIB files to NetCDF following these guidelines. The GRIB format supports multiple data values at any one validity time.
- If you are only interested in the analysis, but not forecasts, download data only for step 0
- If you need overlapping forecast, download for each time option separately, for example:
- first with time = 00:00 and all required steps
- then with time = 06:00 and all required steps
- then with time = 12:00 and all required steps
- then with time = 18:00 and all required steps