Page info | ||||||
---|---|---|---|---|---|---|
|
The error
You try to retrieve data from the ECMWF data archive in NetCDF format but the retrieval fails with this message:
No Format |
---|
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 a known issue and occurs if
- you request data in NetCDF format, and
- you request forecast data, and
- your data request contains overlapping "time"+"step" specifications
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:
No Format |
---|
"date":"2016-12-01"
"type":"fc"
"time": "00:00/12:00",
"step": "3/6/9/12/15",
"format": "netcdf" |
- 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
Cause of the error:
This is known issue when downloading data in the NetCDF format:
For example, you select all times (00:00, 06:00, 12:00, 18:00) and you select all steps (0 to 120 in 3-hour steps).
In this case you will get data for:
2016-12-01, 00:00 (time 00:00 + step 0)
2016-12-01, 03:00 (time 00:00 + step 3)
2016-12-01, 06:00 (time 00:00 + step 6)
2016-12-01, 06:00 (time 06:00 + step 0)
2016-12-01, 09:00 (time 06:00 + step 3)
... and so on.
So in this example you get two values at validity time 2016-12-01, 0615:00. The NetCDF format only supports does not support multiple data values at a single , one-dimensional time dimension, so a specific time can not have two values.
This is why trying to retrieve this data in NetCDF format results in an error.
Possible workarounds
, hence the creation of the output NetCDF file fails, triggering the error message.
Workarounds
- Retrieve the data in its native GRIB format, which Use the data's native GRIB format i.e. download the data in GRIB format and then convert the data file yourself following guidelines. 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
- Then convert the data from GRIB to NetCDF format:
- For CAMS Global data use ECMWF's ecCodes, and then the grib_to_netcdf tool with the -T option.
- For CAMS Regional data see here.
- Retrieve data for each forecast "time" separately, for example for ERA-InterimIf you need overlapping forecast, download for each time option separately, for example:
- first with time = 00: 00 and all required stepsthen 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
Related articles
Content by Label | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Page properties | |||
---|---|---|---|
| |||
|