netCDF to GRIB conversion issue
Added by Rodrigo Delgado over 10 years ago
Dear all
We are converting files containing temperature from a global CMIP5 climate output files (netCDF) using CDO GRIB conversion. The files are already in pressure levels, which is expressed in Pa. ncdump reported as value of the variable associated with the following levels.:
lev = 100000, 97500, 95000, 92500, 90000, 87500, 85000, 82500, 80000, 77500, 75000, 70000, 65000, 60000, 55000, 50000, 45000, 40000, 35000, 30000, 25000, 22500, 20000, 17500, 15000, 12500, 10000, 7000, 5000, 3000;
We use the following command to convert from netCDF to GRIB:
cdo -f grb setltype,100 -chparam,-1,11 temp5.nc final.grb
But when checking the pressure levels written in the GRIB file, these are shown as follows:
PDS # 1 255 34464 11 100 134 160 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 2 255 11 100 31964 124 220 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 3 255 11 100 29 464 115 24 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 26964 4 255 11 100 105 84 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 5 255 11 100 24464 95 144 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 6 255 11 100 21964 85 204 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 7 255 11 100 19464 76 8 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 16964 8255 11 100 66 68 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 9 255 11 100 14464 56 128 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 10 255 11 100 11964 46 188 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 11 255 11 100 9464 36 248 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 12 255 11 100 4464 17 112 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 13 255 11 100 65000 253 232 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 14 255 11 100 60000 234 96 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 15 255 11 100 55000 214 216 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 16 255 11 100 50000 195 80 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 17 255 11 100 45000 175 200 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 18 255 11 100 40 000 156 64 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 19 255 11 100 35000 136 184 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 20 255 11 100 30000 117 48 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 21 255 11 100 25000 97 168 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 22 255 11 100 22500 87 228 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 23 255 11 100 20000 78 32 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 24 255 11 100 68 92 17500 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 25 255 11 100 15 000 58 152 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 26 255 11 100 12500 48 212 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 27 255 11 100 10000 39 16 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 28 255 11 100 7000 27 88 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 29 255 11 100 5000 19 136 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS # 30 255 11 100 3000 11 184 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1
We believe that CDO is not recording the level data as hPa, when the maximum allowed value for the field (unsigned integer data type) is exceeded, it restarts and saves a wrong pressure value. How to fix this so that CDO correctly enter the final GRIB file?
Thanks
Rodrigo
Replies (1)
RE: netCDF to GRIB conversion issue - Added by Rodrigo Delgado over 10 years ago
Sorry, I would like to amend the grib listing coming from gribscan:
PDS #1 255 11 100 34464 134 160 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #2 255 11 100 31964 124 220 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #3 255 11 100 29464 115 24 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #4 255 11 100 26964 105 84 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #5 255 11 100 24464 95 144 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #6 255 11 100 21964 85 204 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #7 255 11 100 19464 76 8 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #8 255 11 100 16964 66 68 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #9 255 11 100 14464 56 128 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #10 255 11 100 11964 46 188 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #11 255 11 100 9464 36 248 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #12 255 11 100 4464 17 112 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #13 255 11 100 65000 253 232 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #14 255 11 100 60000 234 96 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #15 255 11 100 55000 214 216 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #16 255 11 100 50000 195 80 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #17 255 11 100 45000 175 200 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #18 255 11 100 40000 156 64 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #19 255 11 100 35000 136 184 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #20 255 11 100 30000 117 48 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #21 255 11 100 25000 97 168 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #22 255 11 100 22500 87 228 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #23 255 11 100 20000 78 32 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #24 255 11 100 17500 68 92 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #25 255 11 100 15000 58 152 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #26 255 11 100 12500 48 212 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #27 255 11 100 10000 39 16 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #28 255 11 100 7000 27 88 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #29 255 11 100 5000 19 136 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1 PDS #30 255 11 100 3000 11 184 BMSFLG: 0 1970 01 01 00 00 2 0 0 10 1
Thanks in advance!
Rodrigo