remaping fails due to numeric conversion not representable
Added by Tobias Stacke about 2 years ago
I like to remap a high resolution lat/lon field to an icon grid but the remapping fails with
cdo remap (Abort): NetCDF: Numeric conversion not representable
Some background information on my file (its too big to be uploaded here)
-1 : Date Time Level Gridsize Miss : Minimum Mean Maximum : Parameter name 1 : 0000-00-00 00:00:00 0 2953929600 2117665960 : 0.0000 0.55094 1.0000 : fract_upland_ctimean
File format : NetCDF4 -1 : Institut Source T Steptype Levels Num Points Num Dtype : Parameter name 1 : unknown unknown c instant 1 1 2953929600 1 F32 : fract_upland_ctimean Grid coordinates : 1 : lonlat : points=2953929600 (86400x34189) lon : -179.9979 to 179.9979 by 0.004166667 degrees_east circular lat : -56.35208 to 86.09792 by 0.004166667 degrees_north Vertical coordinates : 1 : surface : levels=1
based on other issues I found in this forum, I unpacked the data, removed all NaNf and set them to a specific missing value (1.0e+20). I could successfully generate remapping weights with
cdo -f nc4c -z zip genycon,/pool/data/ICON/grids/public/mpim/0043/icon_grid_0043_R02B04_G.nc inputfile.nc weights.nc
but I fail with trying to apply the remap with
cdo -b F32 remap,/pool/data/ICON/grids/public/mpim/0043/icon_grid_0043_R02B04_G.nc,weights.nc inputfile.nc remapped.nc
I'd appreciate any advice on how to proceed with this.
Replies (12)
RE: remaping fails due to numeric conversion not representable - Added by Ralf Mueller about 2 years ago
Moin Tobias!
In case you work on levante, you can also post a path here so that I can take a closer look.
The NaNf locations might be there for good reason - I don't know. But if you want to perform any remapping your have to use the value of the _FillValue
or missing_value
instead of NaN. Locations with missing values are excluded from the interpolation.
Is the type of fract_upland_ctimean
float or double? you might consider converting it to double before. Another thing is the compression: You seem to use compressed data since you use -f nc4c -z zip
. I cannot recommend that for anything else but archiving. It does slow down the while analysis by a large factor. just saying ;-)
cheers
ralf
RE: remaping fails due to numeric conversion not representable - Added by Tobias Stacke about 2 years ago
Moin Ralf,
I (try to) do the remapping on breeze, but I copied the data file and the weight file to levante at /work/bm1236/m214103/Data/JSB_BCIC. It would be great if you could look into this and give some more advice. Thanks already for the hint to not use -z zip as default, that is good to know.
Cheers Tobias
RE: remaping fails due to numeric conversion not representable - Added by Ralf Mueller about 2 years ago
indeed your data variable is single precision. this might lead to inconsistencies. I checked ga2_upland_fraction_mean_newmiss.nc
:
cdo -infov ga2_upland_fraction_mean_newmiss.nc [Mon 2022-10-24|10:02:16] -1 : Date Time Level Gridsize Miss : Minimum Mean Maximum : Parameter name 1 : 0000-00-00 00:00:00 0 2953929600 2117665960 : 0.0000 0.55094 1.0000 : fract_upland_ctimean
This means that your have about 70% missing values in your data. please check if this makes sense.
I check the interpolation on levante myself ...
RE: remaping fails due to numeric conversion not representable - Added by Tobias Stacke about 2 years ago
The amount of missing data is find. It is a global field, but only contains values for the land surface. Would I have to convert the data into double precision prior to the remapping? I already tried
cdo -b F64 remap,/pool/data/ICON/grids/public/mpim/0043/icon_grid_0043_R02B04_G.nc,weights.nc inputfile.nc remapped.nc
but got the same error.
RE: remaping fails due to numeric conversion not representable - Added by Ralf Mueller about 2 years ago
when I try this my command is killed - no idea why. I try it now on a 512GB main memory knode with
cdo -v -P 128 -f nc4 -gencon,/pool/data/ICON/grids/public/mpim/0043/icon_grid_0043_R02B04_G.nc:1 /work/bm1236/m214103/Data/JSB_BCIC/ga2_upland_fraction_mean_newmiss.nc Weights.nc
RE: remaping fails due to numeric conversion not representable - Added by Ralf Mueller about 2 years ago
Ralf Mueller wrote in RE: remaping fails due to numeric conversion not represen...:
when I try this my command is killed - no idea why. I try it now on a 512GB main memory knode with [...]
The 512GB knode is running out of memory I believe
RE: remaping fails due to numeric conversion not representable - Added by Tobias Stacke about 2 years ago
I did it on breeze4 which is dedicated to I/O for large fields and in the summary, the cdo process wrote it used about 475GB of RAM to generate the remap weights. Thus, I had hoped this also would be sufficient for the actual remapping. Does it help, if I try to let your command run on breeze (takes a few hours though)?
RE: remaping fails due to numeric conversion not representable - Added by Ralf Mueller about 2 years ago
I keep trying this with less OpenMP threads, takes about an hour I think.
Anyway, you could split the input and run something like northern and southern hemisphere separately. Another option is to remove the points with missing values and by that reduce in the input grid size. 70% of the whole search is pointless
RE: remaping fails due to numeric conversion not representable - Added by Ralf Mueller about 2 years ago
Finally I could run
/sw/spack-levante/cdo-2.0.6-jkuh4i/bin/cdo -v -P 4 -f nc4 -gencon,/pool/data/ICON/grids/public/mpim/0043/icon_grid_0043_R02B04_G.nc:1 /work/bm1236/m214103/Data/JSB_BCIC/ga2_upland_fraction_mean_newmiss.nc Weights.ncon a 512GB knode. the output is
/scratch/k/k202125/data/Weights.nc
RE: remaping fails due to numeric conversion not representable - Added by Uwe Schulzweida about 2 years ago
This looks like an error in the weights file. For the large input field the indices of the grids are stored in the data type uint64. There seems to be a problem reading in these indices. If you don't have too much data you can just interpolate them directly without storing the weights:
breeze: cdo -P 16 remapycon,/pool/data/ICON/grids/public/mpim/0043/icon_grid_0043_R02B04_G.nc inputfile.nc remapped.nc
RE: remaping fails due to numeric conversion not representable - Added by Ralf Mueller about 2 years ago
thx Uwe! I would have had a hard time figuring this out ;-)
cheers
ralf
RE: remaping fails due to numeric conversion not representable - Added by Tobias Stacke about 2 years ago
Yes, this works fine! Thanks for your help, both of you!