Help me with the sea ice.
Added by juan jimenez almost 6 years ago
I have a time series of sea ice concentration from 1979 to 2018 in netcdf format. I want to calculate the extent of sea ice from the concentration of sea ice. First I define what is ice extent; It is the area of the ice coverage that has more than 15% of ice concentration. The first thing I have done has been to select a range of 15% to 100%. The problem is the calculation of the area of all the cells that have ice, to get a monthly ice extension value in my time series. I've tried cdo commands like gridcell, but I'm not really understanding what it means.
I would like to know what command can have me the total area of the pixels with ice.
Thank you so much.
Juan Jimémez.
Replies (5)
RE: Help me with the sea ice. - Added by Ralf Mueller almost 6 years ago
hi Juan!
AFAIK the extent is the product of ice concentration and cell area. If you want use a lower threshold of 15%, I would set the range of 0%-15% to 0%, multiply these concentrations with the cell area and sum them up with fldsum
. The open question is the cell area. this strongly depends on you grid. CDO can compute this with the gridarea
operator, But for getting this perfectly clear, you might upload your input file.
cheers
ralf
RE: Help me with the sea ice. - Added by juan jimenez almost 6 years ago
hi Ralf
Thank you very much for your answer, but when I multiply the concentrations by my gridarea output file it gives me the following error:
cdo mul: Filling up stream2 >gridarea.nc< by copying the first timestep.
cdo mul (Warning): Some data values (min=-2.14748e+09 max=-2.14748e+09) are outside the
valid range (-32768 - 32767) of the used output precision!
Use the CDO option -b 32 or -b 64 to increase the output precision.
cdf_put_vara_double : ncid = 196608 varid = 4 val0 = 1078907571187.760010
cdf_put_vara_double : varname = icec
Error (cdf_put_vara_double) : NetCDF: Numeric conversion not representable
I dont know what to do. I leave here my data file attached.
icec.mnmean.nc (54.8 MB) icec.mnmean.nc |
RE: Help me with the sea ice. - Added by Ralf Mueller almost 6 years ago
I use cdo-1.9.5 without any errors like this
cdo -infov -fldsum -mul -divc,100 -setvrange,15,101 `lf` -gridarea `lf`
`lf`
is a placeholder for your input file. this command write to stdout instead of creating an output file. Skip the infov
operator and append a filename to write the values to disk.
Please note, that your concentration values are normalized to 100 instead of 1 - that's why I had to do the devision by 100.
hth
ralf
RE: Help me with the sea ice. - Added by juan jimenez almost 6 years ago
Thank you so much, I wrote the option -b 64 before the operator, to increase the output precision.
Juan.